DecompileMethodsText¶
This is an autogenerated documentation file for the script: DecompileMethodsText
Run it¶
$ ./androanalyze scripts_builtin/DecompileMethodsText.py --package-names com.spotify.music
View the results¶
Non-Binary¶
$ ./androquery result -sn DecompileMethodsText -pn com.spotify.music
Empty
Binary¶
For the case that the result may exceed 16MB, it is stored in MongoDB’s gridFS. Therefore we need to use a different query syntax:
View the meta data:
$ ./androquery result -sn DecompileMethodsText -pn com.spotify.music -nd
{
"chunkSize": 261120,
"filename": "com.spotify.music_2.2.0.636_DecompileMethodsText.java",
"length": 17215574,
"uploadDate": "2015-06-22T20:30:07.726000",
"md5": "bbd0987644eb64cef4a1f03c86bb145a",
"metadata": {
"apk meta": {
"package name": "com.spotify.music",
"version name": "2.2.0.636",
"sha256": "bbf2c7d7b8fbbce68a97a2f0fd7e854e29b1ea9e3836615e7e6a35095915a607",
"import date": "2015-04-14T15:10:06.364000",
"build_date": "2015-02-11T12:25:40",
"path": "/mnt/stuff/btsync/apks_manual_downloads/02.03.2015_top_free_4/apps_topselling_free/MUSIC_AND_AUDIO/com.spotify.music.apk",
"tag": null
},
"script meta": {
"name": "DecompileMethodsText",
"sha256": "bafebe22b09d8b06302b5b46ff6411d8a8bb7d1ed06e953ce1e97d2cdeef92b7",
"analysis date": "2015-06-22T20:27:41.333000",
"version": "0.1"
}
}
}
View the raw data:
$ ./androquery result -sn DecompileMethodsText -pn com.spotify.music -nd -r
Lcom/spotify/mobile/android/util/ui/d;.<init>(Landroid/view/Window$Callback;)V {
public d(android.view.Window$Callback p1)
{
this.a = p1;
return;
}
}
Lcom/spotify/mobile/android/util/ui/d;.dispatchGenericMotionEvent(Landroid/view/MotionEvent;)Z {
public boolean dispatchGenericMotionEvent(android.view.MotionEvent p2)
{
return this.a.dispatchGenericMotionEvent(p2);
}
}
Lcom/spotify/mobile/android/util/ui/d;.dispatchKeyEvent(Landroid/view/KeyEvent;)Z {
public boolean dispatchKeyEvent(android.view.KeyEvent p2)
{
return this.a.dispatchKeyEvent(p2);
}
}
Lcom/spotify/mobile/android/util/ui/d;.dispatchKeyShortcutEvent(Landroid/view/KeyEvent;)Z {
public boolean dispatchKeyShortcutEvent(android.view.KeyEvent p2)
{
return this.a.dispatchKeyShortcutEvent(p2);
}
}
Lcom/spotify/mobile/android/util/ui/d;.dispatchPopulateAccessibilityEvent(Landroid/view/accessibility/AccessibilityEvent;)Z {
public boolean dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent p2)
{
return this.a.dispatchPopulateAccessibilityEvent(p2);
}
}
Lcom/spotify/mobile/android/util/ui/d;.dispatchTouchEvent(Landroid/view/MotionEvent;)Z {
public boolean dispatchTouchEvent(android.view.MotionEvent p2)
{
return this.a.dispatchTouchEvent(p2);
}
}
Lcom/spotify/mobile/android/util/ui/d;.dispatchTrackballEvent(Landroid/view/MotionEvent;)Z {
public boolean dispatchTrackballEvent(android.view.MotionEvent p2)
{
return this.a.dispatchTrackballEvent(p2);
}
}
Lcom/spotify/mobile/android/util/ui/d;.onActionModeFinished(Landroid/view/ActionMode;)V {
public void onActionModeFinished(android.view.ActionMode p2)
{
this.a.onActionModeFinished(p2);
return;
}
}
Lcom/spotify/mobile/android/util/ui/d;.onActionModeStarted(Landroid/view/ActionMode;)V {
public void onActionModeStarted(android.view.ActionMode p2)
{
this.a.onActionModeStarted(p2);
return;
}
}
Lcom/spotify/mobile/android/util/ui/d;.onAttachedToWindow()V {
public void onAttachedToWindow()
{
this.a.onAttachedToWindow();
return;
}
}
Lcom/spotify/mobile/android/util/ui/d;.onContentChanged()V {
public void onContentChanged()
{
this.a.onContentChanged();
return;
}
}
Lcom/spotify/mobile/android/util/ui/d;.onCreatePanelMenu(I Landroid/view/Menu;)Z {
public boolean onCreatePanelMenu(int p2, android.view.Menu p3)
{
return this.a.onCreatePanelMenu(p2, p3);
}
}
Lcom/spotify/mobile/android/util/ui/d;.onCreatePanelView(I)Landroid/view/View; {
public android.view.View onCreatePanelView(int p2)
{
return this.a.onCreatePanelView(p2);
}
}
Lcom/spotify/mobile/android/util/ui/d;.onDetachedFromWindow()V {
public void onDetachedFromWindow()
{
this.a.onDetachedFromWindow();
return;
}
}
Lcom/spotify/mobile/android/util/ui/d;.onMenuItemSelected(I Landroid/view/MenuItem;)Z {
public boolean onMenuItemSelected(int p2, android.view.MenuItem p3)
{
return this.a.onMenuItemSelected(p2, p3);
}
}
Lcom/spotify/mobile/android/util/ui/d;.onMenuOpened(I Landroid/view/Menu;)Z {
public boolean onMenuOpened(int p2, android.view.Menu p3)
{
return this.a.onMenuOpened(p2, p3);
}
}
Lcom/spotify/mobile/android/util/ui/d;.onPanelClosed(I Landroid/view/Menu;)V {
public void onPanelClosed(int p2, android.view.Menu p3)
{
this.a.onPanelClosed(p2, p3);
return;
}
}
Lcom/spotify/mobile/android/util/ui/d;.onPreparePanel(I Landroid/view/View; Landroid/view/Menu;)Z {
public boolean onPreparePanel(int p2, android.view.View p3, android.view.Menu p4)
{
return this.a.onPreparePanel(p2, p3, p4);
}
}
Lcom/spotify/mobile/android/util/ui/d;.onSearchRequested()Z {
public boolean onSearchRequested()
{
return this.a.onSearchRequested();
}
}
Lcom/spotify/mobile/android/util/ui/d;.onWindowAttributesChanged(Landroid/view/WindowManager$LayoutParams;)V {
public void onWindowAttributesChanged(android.view.WindowManager$LayoutParams p2)
{
this.a.onWindowAttributesChanged(p2);
return;
}
}
Lcom/spotify/mobile/android/util/ui/d;.onWindowFocusChanged(Z)V {
public void onWindowFocusChanged(boolean p2)
{
this.a.onWindowFocusChanged(p2);
return;
}
}
Lcom/spotify/mobile/android/util/ui/d;.onWindowStartingActionMode(Landroid/view/ActionMode$Callback;)Landroid/view/ActionMode; {
public android.view.ActionMode onWindowStartingActionMode(android.view.ActionMode$Callback p2)
{
return this.a.onWindowStartingActionMode(p2);
}
}
Lcom/a/a/a/b;.a(Landroid/os/IBinder;)Lcom/a/a/a/a; {
public static com.a.a.a.a a(android.os.IBinder p2)
{
com.a.a.a.a v0_3;
if (p2 != null) {
com.a.a.a.a v0_1 = p2.queryLocalInterface("com.android.vending.billing.IInAppBillingService");
if ((v0_1 == null) || (!(v0_1 instanceof com.a.a.a.a))) {
v0_3 = new com.a.a.a.c(p2);
} else {
v0_3 = ((com.a.a.a.a) v0_1);
}
} else {
v0_3 = 0;
}
return v0_3;
}
}
Lcom/a/a/a/b;.onTransact(I Landroid/os/Parcel; Landroid/os/Parcel; I)Z {
public boolean onTransact(int p9, android.os.Parcel p10, android.os.Parcel p11, int p12)
{
int v0_1;
switch (p9) {
case 1:
p10.enforceInterface("com.android.vending.billing.IInAppBillingService");
int v0_19 = this.a(p10.readInt(), p10.readString(), p10.readString());
p11.writeNoException();
p11.writeInt(v0_19);
v0_1 = 1;
break;
case 2:
int v0_13;
p10.enforceInterface("com.android.vending.billing.IInAppBillingService");
String v1_3 = p10.readInt();
String v2_3 = p10.readString();
String v3_2 = p10.readString();
if (p10.readInt() == 0) {
v0_13 = 0;
} else {
v0_13 = ((android.os.Bundle) android.os.Bundle.CREATOR.createFromParcel(p10));
}
int v0_16 = this.a(v1_3, v2_3, v3_2, v0_13);
p11.writeNoException();
if (v0_16 == 0) {
p11.writeInt(0);
} else {
p11.writeInt(1);
v0_16.writeToParcel(p11, 1);
}
v0_1 = 1;
break;
case 3:
p10.enforceInterface("com.android.vending.billing.IInAppBillingService");
int v0_10 = this.a(p10.readInt(), p10.readString(), p10.readString(), p10.readString(), p10.readString());
p11.writeNoException();
if (v0_10 == 0) {
p11.writeInt(0);
} else {
p11.writeInt(1);
v0_10.writeToParcel(p11, 1);
}
v0_1 = 1;
break;
case 4:
p10.enforceInterface("com.android.vending.billing.IInAppBillingService");
int v0_7 = this.a(p10.readInt(), p10.readString(), p10.readString(), p10.readString());
p11.writeNoException();
if (v0_7 == 0) {
p11.writeInt(0);
} else {
p11.writeInt(1);
v0_7.writeToParcel(p11, 1);
}
v0_1 = 1;
break;
case 5:
p10.enforceInterface("com.android.vending.billing.IInAppBillingService");
int v0_4 = this.b(p10.readInt(), p10.readString(), p10.readString());
p11.writeNoException();
p11.writeInt(v0_4);
v0_1 = 1;
break;
case 1598968902:
p11.writeString("com.android.vending.billing.IInAppBillingService");
v0_1 = 1;
break;
default:
v0_1 = super.onTransact(p9, p10, p11, p12);
}
return v0_1;
}
}
Lcom/a/a/a/c;.<init>(Landroid/os/IBinder;)V {
c(android.os.IBinder p1)
{
this.a = p1;
return;
}
}
Lcom/a/a/a/c;.a(I Ljava/lang/String; Ljava/lang/String;)I {
public final int a(int p6, String p7, String p8)
{
android.os.Parcel v1 = android.os.Parcel.obtain();
android.os.Parcel v2 = android.os.Parcel.obtain();
try {
v1.writeInterfaceToken("com.android.vending.billing.IInAppBillingService");
v1.writeInt(p6);
v1.writeString(p7);
v1.writeString(p8);
this.a.transact(1, v1, v2, 0);
v2.readException();
Throwable v0_2 = v2.readInt();
v2.recycle();
v1.recycle();
return v0_2;
} catch (Throwable v0_3) {
v2.recycle();
v1.recycle();
throw v0_3;
}
}
}
Lcom/a/a/a/c;.a(I Ljava/lang/String; Ljava/lang/String; Landroid/os/Bundle;)Landroid/os/Bundle; {
public final android.os.Bundle a(int p6, String p7, String p8, android.os.Bundle p9)
{
android.os.Parcel v1 = android.os.Parcel.obtain();
android.os.Parcel v2 = android.os.Parcel.obtain();
try {
v1.writeInterfaceToken("com.android.vending.billing.IInAppBillingService");
v1.writeInt(p6);
v1.writeString(p7);
v1.writeString(p8);
} catch (int v0_9) {
v2.recycle();
v1.recycle();
throw v0_9;
}
if (p9 == null) {
v1.writeInt(0);
} else {
v1.writeInt(1);
p9.writeToParcel(v1, 0);
}
int v0_6;
this.a.transact(2, v1, v2, 0);
v2.readException();
if (v2.readInt() == 0) {
v0_6 = 0;
} else {
v0_6 = ((android.os.Bundle) android.os.Bundle.CREATOR.createFromParcel(v2));
}
v2.recycle();
v1.recycle();
return v0_6;
}
}
Lcom/a/a/a/c;.a(I Ljava/lang/String; Ljava/lang/String; Ljava/lang/String;)Landroid/os/Bundle; {
public final android.os.Bundle a(int p6, String p7, String p8, String p9)
{
android.os.Parcel v1 = android.os.Parcel.obtain();
android.os.Parcel v2 = android.os.Parcel.obtain();
try {
int v0_3;
v1.writeInterfaceToken("com.android.vending.billing.IInAppBillingService");
v1.writeInt(p6);
v1.writeString(p7);
v1.writeString(p8);
v1.writeString(p9);
this.a.transact(4, v1, v2, 0);
v2.readException();
} catch (int v0_6) {
v2.recycle();
v1.recycle();
throw v0_6;
}
if (v2.readInt() == 0) {
v0_3 = 0;
} else {
v0_3 = ((android.os.Bundle) android.os.Bundle.CREATOR.createFromParcel(v2));
}
v2.recycle();
v1.recycle();
return v0_3;
}
}
Lcom/a/a/a/c;.a(I Ljava/lang/String; Ljava/lang/String; Ljava/lang/String; Ljava/lang/String;)Landroid/os/Bundle; {
public final android.os.Bundle a(int p6, String p7, String p8, String p9, String p10)
{
android.os.Parcel v1 = android.os.Parcel.obtain();
android.os.Parcel v2 = android.os.Parcel.obtain();
try {
int v0_3;
v1.writeInterfaceToken("com.android.vending.billing.IInAppBillingService");
v1.writeInt(p6);
v1.writeString(p7);
v1.writeString(p8);
v1.writeString(p9);
v1.writeString(p10);
this.a.transact(3, v1, v2, 0);
v2.readException();
} catch (int v0_6) {
v2.recycle();
v1.recycle();
throw v0_6;
}
if (v2.readInt() == 0) {
v0_3 = 0;
} else {
v0_3 = ((android.os.Bundle) android.os.Bundle.CREATOR.createFromParcel(v2));
}
v2.recycle();
v1.recycle();
return v0_3;
}
}
Lcom/a/a/a/c;.asBinder()Landroid/os/IBinder; {
public final android.os.IBinder asBinder()
{
return this.a;
}
}
Lcom/a/a/a/c;.b(I Ljava/lang/String; Ljava/lang/String;)I {
public final int b(int p6, String p7, String p8)
{
android.os.Parcel v1 = android.os.Parcel.obtain();
android.os.Parcel v2 = android.os.Parcel.obtain();
try {
v1.writeInterfaceToken("com.android.vending.billing.IInAppBillingService");
v1.writeInt(p6);
v1.writeString(p7);
v1.writeString(p8);
this.a.transact(5, v1, v2, 0);
v2.readException();
Throwable v0_2 = v2.readInt();
v2.recycle();
v1.recycle();
return v0_2;
} catch (Throwable v0_3) {
v2.recycle();
v1.recycle();
throw v0_3;
}
}
}
Lcom/b/a/a$1;.<init>(Lcom/b/a/a;)V {
a$1(com.b.a.a p1)
{
this.a = p1;
return;
}
}
Lcom/b/a/a$1;.a()Ljava/lang/Void; {
private Void a()
{
try {
if (com.b.a.a.a(this.a) != null) {
com.b.a.a.b(this.a);
if (com.b.a.a.c(this.a)) {
com.b.a.a.d(this.a);
com.b.a.a.e(this.a);
}
} else {
}
} catch (com.b.a.a v0_7) {
throw v0_7;
}
return 0;
}
}
Lcom/b/a/a$1;.call()Ljava/lang/Object; {
public final synthetic Object call()
{
return this.a();
}
}
Lcom/b/a/a$2;.<init>()V {
a$2()
{
return;
}
}
Lcom/b/a/a$2;.write(I)V {
public final void write(int p1)
{
return;
}
}
Lcom/b/a/a;.<clinit>()V {
static a()
{
com.b.a.a.a = java.util.regex.Pattern.compile("[a-z0-9_-]{1,64}");
com.b.a.a.p = new com.b.a.a$2();
return;
}
}
Lcom/b/a/a;.<init>(Ljava/io/File;)V {
private a(java.io.File p9)
{
this.j = 0;
this.l = new java.util.LinkedHashMap(0, 1061158912, 1);
this.n = 0;
this.b = new java.util.concurrent.ThreadPoolExecutor(0, 1, 60, java.util.concurrent.TimeUnit.SECONDS, new java.util.concurrent.LinkedBlockingQueue());
this.o = new com.b.a.a$1(this);
this.c = p9;
this.g = 1;
this.d = new java.io.File(p9, "journal");
this.e = new java.io.File(p9, "journal.tmp");
this.f = new java.io.File(p9, "journal.bkp");
this.i = 1;
this.h = 10485760;
return;
}
}
Lcom/b/a/a;.a(Ljava/io/File;)Lcom/b/a/a; {
public static com.b.a.a a(java.io.File p6)
{
if (10485760 > 0) {
void v0_3 = new java.io.File(p6, "journal.bkp");
if (v0_3.exists()) {
String v1_3 = new java.io.File(p6, "journal");
if (!v1_3.exists()) {
com.b.a.a.a(v0_3, v1_3, 0);
} else {
v0_3.delete();
}
}
void v0_7;
void v0_5 = new com.b.a.a(p6);
if (!v0_5.d.exists()) {
p6.mkdirs();
v0_7 = new com.b.a.a(p6).e();
} else {
try {
v0_7 = v0_5.c().d();
v0_7.k = new java.io.BufferedWriter(new java.io.OutputStreamWriter(new java.io.FileOutputStream(v0_7.d, 1), com.b.a.g.a));
} catch (String v1_8) {
System.out.println(new StringBuilder("DiskLruCache ").append(p6).append(" is corrupt: ").append(v1_8.getMessage()).append(", removing").toString());
v0_7.i();
}
}
return v0_7;
} else {
throw new IllegalArgumentException("maxSize <= 0");
}
}
}
Lcom/b/a/a;.a(Lcom/b/a/a;)Ljava/io/Writer; {
static synthetic java.io.Writer a(com.b.a.a p1)
{
return p1.k;
}
}
Lcom/b/a/a;.a(Lcom/b/a/a; Lcom/b/a/b; Z)V {
static synthetic void a(com.b.a.a p0, com.b.a.b p1, boolean p2)
{
p0.a(p1, p2);
return;
}
}
Lcom/b/a/a;.a(Lcom/b/a/b; Z)V {
private declared_synchronized void a(com.b.a.b p11, boolean p12)
{
java.util.concurrent.ThreadPoolExecutor v0_0 = 0;
try {
StringBuilder v2_0 = p11.a;
} catch (java.util.concurrent.ThreadPoolExecutor v0_20) {
throw v0_20;
}
if (v2_0.d == p11) {
if ((!p12) || (v2_0.c)) {
while (v0_0 < this.i) {
int v1_17 = v2_0.b(v0_0);
if (!p12) {
com.b.a.a.b(v1_17);
} else {
if (v1_17.exists()) {
boolean v3_7 = v2_0.a(v0_0);
v1_17.renameTo(v3_7);
long v4_2 = v2_0.b[v0_0];
long v6 = v3_7.length();
v2_0.b[v0_0] = v6;
this.j = ((this.j - v4_2) + v6);
}
}
v0_0++;
}
this.m = (this.m + 1);
v2_0.d = 0;
if ((v2_0.c | p12) == 0) {
this.l.remove(v2_0.a);
this.k.write(new StringBuilder("REMOVE ").append(v2_0.a).append(10).toString());
} else {
v2_0.c = 1;
this.k.write(new StringBuilder("CLEAN ").append(v2_0.a).append(v2_0.a()).append(10).toString());
if (p12) {
java.util.concurrent.ThreadPoolExecutor v0_10 = this.n;
this.n = (1 + v0_10);
v2_0.e = v0_10;
}
}
this.k.flush();
if ((this.j > this.h) || (this.f())) {
this.b.submit(this.o);
}
} else {
int v1_2 = 0;
while (v1_2 < this.i) {
if (p11.b[v1_2]) {
if (v2_0.b(v1_2).exists()) {
v1_2++;
} else {
p11.c();
}
} else {
p11.c();
throw new IllegalStateException(new StringBuilder("Newly created entry didn\'t create value for index ").append(v1_2).toString());
}
}
}
return;
} else {
throw new IllegalStateException();
}
}
}
Lcom/b/a/a;.a(Ljava/io/File; Ljava/io/File; Z)V {
private static void a(java.io.File p1, java.io.File p2, boolean p3)
{
if (p3) {
com.b.a.a.b(p2);
}
if (p1.renameTo(p2)) {
return;
} else {
throw new java.io.IOException();
}
}
}
Lcom/b/a/a;.b()Ljava/io/OutputStream; {
static synthetic java.io.OutputStream b()
{
return com.b.a.a.p;
}
}
Lcom/b/a/a;.b(Lcom/b/a/a;)V {
static synthetic void b(com.b.a.a p0)
{
p0.h();
return;
}
}
Lcom/b/a/a;.b(Ljava/io/File;)V {
private static void b(java.io.File p1)
{
if ((!p1.exists()) || (p1.delete())) {
return;
} else {
throw new java.io.IOException();
}
}
}
Lcom/b/a/a;.c()V {
private void c()
{
com.b.a.f v1_1 = new com.b.a.f(new java.io.FileInputStream(this.d), com.b.a.g.a);
try {
int v0_2 = v1_1.a();
int v2_2 = v1_1.a();
boolean v3_0 = v1_1.a();
String v4 = v1_1.a();
String v5 = v1_1.a();
} catch (int v0_14) {
com.b.a.g.a(v1_1);
throw v0_14;
}
if (("libcore.io.DiskLruCache".equals(v0_2)) && (("1".equals(v2_2)) && ((Integer.toString(this.g).equals(v3_0)) && ((Integer.toString(this.i).equals(v4)) && ("".equals(v5)))))) {
int v0_3 = 0;
try {
while(true) {
this.d(v1_1.a());
v0_3++;
}
} catch (int v2) {
this.m = (v0_3 - this.l.size());
com.b.a.g.a(v1_1);
return;
}
} else {
throw new java.io.IOException(new StringBuilder("unexpected journal header: [").append(v0_2).append(", ").append(v2_2).append(", ").append(v4).append(", ").append(v5).append("]").toString());
}
}
}
Lcom/b/a/a;.c(Lcom/b/a/a;)Z {
static synthetic boolean c(com.b.a.a p1)
{
return p1.f();
}
}
Lcom/b/a/a;.d()V {
private void d()
{
com.b.a.a.b(this.e);
java.util.Iterator v3 = this.l.values().iterator();
while (v3.hasNext()) {
com.b.a.d v0_5 = ((com.b.a.d) v3.next());
if (v0_5.d != null) {
v0_5.d = 0;
int v1_2 = 0;
while (v1_2 < this.i) {
com.b.a.a.b(v0_5.a(v1_2));
com.b.a.a.b(v0_5.b(v1_2));
v1_2++;
}
v3.remove();
} else {
int v1_3 = 0;
while (v1_3 < this.i) {
this.j = (this.j + v0_5.b[v1_3]);
v1_3++;
}
}
}
return;
}
}
Lcom/b/a/a;.d(Lcom/b/a/a;)V {
static synthetic void d(com.b.a.a p0)
{
p0.e();
return;
}
}
Lcom/b/a/a;.d(Ljava/lang/String;)V {
private void d(String p9)
{
String v2_0 = p9.indexOf(32);
if (v2_0 != -1) {
com.b.a.b v1_1;
boolean v0_0 = (v2_0 + 1);
int v3 = p9.indexOf(32, v0_0);
if (v3 != -1) {
v1_1 = p9.substring(v0_0, v3);
boolean v0_5 = ((com.b.a.d) this.l.get(v1_1));
if (!v0_5) {
v0_5 = new com.b.a.d(this, v1_1, 0);
this.l.put(v1_1, v0_5);
}
if ((v3 == -1) || ((v2_0 != 5) || (!p9.startsWith("CLEAN")))) {
if ((v3 != -1) || ((v2_0 != 5) || (!p9.startsWith("DIRTY")))) {
if ((v3 != -1) || ((v2_0 != 4) || (!p9.startsWith("READ")))) {
throw new java.io.IOException(new StringBuilder("unexpected journal line: ").append(p9).toString());
}
} else {
v0_5.d = new com.b.a.b(this, v0_5, 0);
}
} else {
com.b.a.b v1_17 = p9.substring((v3 + 1)).split(" ");
v0_5.c = 1;
v0_5.d = 0;
v0_5.a(v1_17);
}
} else {
boolean v0_2 = p9.substring(v0_0);
if ((v2_0 != 6) || (!p9.startsWith("REMOVE"))) {
v1_1 = v0_2;
} else {
this.l.remove(v0_2);
}
}
return;
} else {
throw new java.io.IOException(new StringBuilder("unexpected journal line: ").append(p9).toString());
}
}
}
Lcom/b/a/a;.e(Lcom/b/a/a;)I {
static synthetic int e(com.b.a.a p1)
{
p1.m = 0;
return 0;
}
}
Lcom/b/a/a;.e()V {
private declared_synchronized void e()
{
try {
if (this.k != null) {
this.k.close();
}
} catch (java.io.BufferedWriter v0_32) {
throw v0_32;
}
java.io.OutputStreamWriter v1_1 = new java.io.BufferedWriter(new java.io.OutputStreamWriter(new java.io.FileOutputStream(this.e), com.b.a.g.a));
try {
v1_1.write("libcore.io.DiskLruCache");
v1_1.write("\n");
v1_1.write("1");
v1_1.write("\n");
v1_1.write(Integer.toString(this.g));
v1_1.write("\n");
v1_1.write(Integer.toString(this.i));
v1_1.write("\n");
v1_1.write("\n");
java.io.FileOutputStream v2_2 = this.l.values().iterator();
} catch (java.io.BufferedWriter v0_31) {
v1_1.close();
throw v0_31;
}
while (v2_2.hasNext()) {
java.io.BufferedWriter v0_26 = ((com.b.a.d) v2_2.next());
if (v0_26.d == null) {
v1_1.write(new StringBuilder("CLEAN ").append(v0_26.a).append(v0_26.a()).append(10).toString());
} else {
v1_1.write(new StringBuilder("DIRTY ").append(v0_26.a).append(10).toString());
}
}
v1_1.close();
if (this.d.exists()) {
com.b.a.a.a(this.d, this.f, 1);
}
com.b.a.a.a(this.e, this.d, 0);
this.f.delete();
this.k = new java.io.BufferedWriter(new java.io.OutputStreamWriter(new java.io.FileOutputStream(this.d, 1), com.b.a.g.a));
return;
}
}
Lcom/b/a/a;.e(Ljava/lang/String;)V {
private static void e(String p3)
{
if (com.b.a.a.a.matcher(p3).matches()) {
return;
} else {
throw new IllegalArgumentException(new StringBuilder("keys must match regex [a-z0-9_-]{1,64}: \"").append(p3).append("\"").toString());
}
}
}
Lcom/b/a/a;.f(Lcom/b/a/a;)I {
static synthetic int f(com.b.a.a p1)
{
return p1.i;
}
}
Lcom/b/a/a;.f()Z {
private boolean f()
{
if ((this.m < 2000) || (this.m < this.l.size())) {
int v0_2 = 0;
} else {
v0_2 = 1;
}
return v0_2;
}
}
Lcom/b/a/a;.g(Lcom/b/a/a;)Ljava/io/File; {
static synthetic java.io.File g(com.b.a.a p1)
{
return p1.c;
}
}
Lcom/b/a/a;.g()V {
private void g()
{
if (this.k != null) {
return;
} else {
throw new IllegalStateException("cache is closed");
}
}
}
Lcom/b/a/a;.h()V {
private void h()
{
while (this.j > this.h) {
this.c(((String) ((java.util.Map$Entry) this.l.entrySet().iterator().next()).getKey()));
}
return;
}
}
Lcom/b/a/a;.i()V {
private void i()
{
this.close();
com.b.a.g.a(this.c);
return;
}
}
Lcom/b/a/a;.a(Ljava/lang/String;)Lcom/b/a/e; {
public final declared_synchronized com.b.a.e a(String p10)
{
com.b.a.e v1_0 = 0;
try {
this.g();
com.b.a.a.e(p10);
int v0_2 = ((com.b.a.d) this.l.get(p10));
} catch (int v0_4) {
throw v0_4;
}
if ((v0_2 != 0) && (v0_2.c)) {
java.io.InputStream[] v6 = new java.io.InputStream[this.i];
String v3_2 = 0;
try {
while (v3_2 < this.i) {
v6[v3_2] = new java.io.FileInputStream(v0_2.a(v3_2));
v3_2++;
}
} catch (int v0) {
int v0_3 = 0;
}
this.m = (this.m + 1);
this.k.append(new StringBuilder("READ ").append(p10).append(10).toString());
if (this.f()) {
this.b.submit(this.o);
}
v1_0 = new com.b.a.e(this, p10, v0_2.e, v6, v0_2.b, 0);
}
return v1_0;
}
}
Lcom/b/a/a;.a()V {
public final declared_synchronized void a()
{
try {
this.g();
this.h();
this.k.flush();
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/b/a/a;.b(Ljava/lang/String;)Lcom/b/a/b; {
public final declared_synchronized com.b.a.b b(String p7)
{
try {
java.io.Writer v0_3;
this.g();
com.b.a.a.e(p7);
java.io.Writer v0_2 = ((com.b.a.d) this.l.get(p7));
} catch (java.io.Writer v0_6) {
throw v0_6;
}
if ((-1 == -1) || ((v0_2 != null) && (v0_2.e == -1))) {
java.io.Writer v1_1;
if (v0_2 != null) {
if (v0_2.d == null) {
v1_1 = v0_2;
} else {
v0_3 = 0;
return v0_3;
}
} else {
java.io.Writer v0_5 = new com.b.a.d(this, p7, 0);
this.l.put(p7, v0_5);
v1_1 = v0_5;
}
v0_3 = new com.b.a.b(this, v1_1, 0);
v1_1.d = v0_3;
this.k.write(new StringBuilder("DIRTY ").append(p7).append(10).toString());
this.k.flush();
} else {
v0_3 = 0;
}
return v0_3;
}
}
Lcom/b/a/a;.c(Ljava/lang/String;)Z {
public final declared_synchronized boolean c(String p7)
{
String v1_0 = 0;
try {
java.io.IOException v0_9;
this.g();
com.b.a.a.e(p7);
java.io.IOException v0_2 = ((com.b.a.d) this.l.get(p7));
} catch (java.io.IOException v0_12) {
throw v0_12;
}
if ((v0_2 != null) && (v0_2.d == null)) {
while (v1_0 < this.i) {
long[] v2_4 = v0_2.a(v1_0);
if ((!v2_4.exists()) || (v2_4.delete())) {
this.j = (this.j - v0_2.b[v1_0]);
v0_2.b[v1_0] = 0;
v1_0++;
} else {
throw new java.io.IOException(new StringBuilder("failed to delete ").append(v2_4).toString());
}
}
this.m = (this.m + 1);
this.k.append(new StringBuilder("REMOVE ").append(p7).append(10).toString());
this.l.remove(p7);
if (this.f()) {
this.b.submit(this.o);
}
v0_9 = 1;
} else {
v0_9 = 0;
}
return v0_9;
}
}
Lcom/b/a/a;.close()V {
public final declared_synchronized void close()
{
try {
if (this.k != null) {
java.util.Iterator v1_2 = new java.util.ArrayList(this.l.values()).iterator();
while (v1_2.hasNext()) {
com.b.a.b v0_7 = ((com.b.a.d) v1_2.next());
if (v0_7.d != null) {
v0_7.d.c();
}
}
this.h();
this.k.close();
this.k = 0;
}
} catch (com.b.a.b v0_8) {
throw v0_8;
}
return;
}
}
Lcom/b/a/b;.<init>(Lcom/b/a/a; Lcom/b/a/d;)V {
private b(com.b.a.a p2, com.b.a.d p3)
{
boolean[] v0_2;
this.d = p2;
this.a = p3;
if (!p3.c) {
v0_2 = new boolean[com.b.a.a.f(p2)];
} else {
v0_2 = 0;
}
this.b = v0_2;
return;
}
}
Lcom/b/a/b;.<init>(Lcom/b/a/a; Lcom/b/a/d; B)V {
synthetic b(com.b.a.a p1, com.b.a.d p2, byte p3)
{
this(p1, p2);
return;
}
}
Lcom/b/a/b;.a()Ljava/io/OutputStream; {
public final java.io.OutputStream a()
{
try {
if (this.a.d == this) {
if (!this.a.c) {
this.b[0] = 1;
}
java.io.FileOutputStream v1_3 = new java.io.FileOutputStream(this.a.b(0));
java.io.OutputStream v0_12 = new com.b.a.c(this, v1_3, 0);
return v0_12;
} else {
throw new IllegalStateException();
}
} catch (java.io.OutputStream v0_16) {
throw v0_16;
}
}
}
Lcom/b/a/b;.b()V {
public final void b()
{
if (!this.c) {
com.b.a.a.a(this.d, this, 1);
} else {
com.b.a.a.a(this.d, this, 0);
this.d.c(this.a.a);
}
this.e = 1;
return;
}
}
Lcom/b/a/b;.c()V {
public final void c()
{
com.b.a.a.a(this.d, this, 0);
return;
}
}
Lcom/b/a/c;.<init>(Lcom/b/a/b; Ljava/io/OutputStream;)V {
private c(com.b.a.b p1, java.io.OutputStream p2)
{
this.a = p1;
this(p2);
return;
}
}
Lcom/b/a/c;.<init>(Lcom/b/a/b; Ljava/io/OutputStream; B)V {
synthetic c(com.b.a.b p1, java.io.OutputStream p2, byte p3)
{
this(p1, p2);
return;
}
}
Lcom/b/a/c;.close()V {
public final void close()
{
try {
this.out.close();
} catch (com.b.a.b v0) {
this.a.c = 1;
}
return;
}
}
Lcom/b/a/c;.flush()V {
public final void flush()
{
try {
this.out.flush();
} catch (com.b.a.b v0) {
this.a.c = 1;
}
return;
}
}
Lcom/b/a/c;.write(I)V {
public final void write(int p3)
{
try {
this.out.write(p3);
} catch (com.b.a.b v0) {
this.a.c = 1;
}
return;
}
}
Lcom/b/a/c;.write([B I I)V {
public final void write(byte[] p3, int p4, int p5)
{
try {
this.out.write(p3, p4, p5);
} catch (com.b.a.b v0) {
this.a.c = 1;
}
return;
}
}
Lcom/b/a/d;.<init>(Lcom/b/a/a; Ljava/lang/String;)V {
private d(com.b.a.a p2, String p3)
{
this.f = p2;
this.a = p3;
long[] v0_1 = new long[com.b.a.a.f(p2)];
this.b = v0_1;
return;
}
}
Lcom/b/a/d;.<init>(Lcom/b/a/a; Ljava/lang/String; B)V {
synthetic d(com.b.a.a p1, String p2, byte p3)
{
this(p1, p2);
return;
}
}
Lcom/b/a/d;.b([Ljava/lang/String;)Ljava/io/IOException; {
private static java.io.IOException b(String[] p3)
{
throw new java.io.IOException(new StringBuilder("unexpected journal line: ").append(java.util.Arrays.toString(p3)).toString());
}
}
Lcom/b/a/d;.a(I)Ljava/io/File; {
public final java.io.File a(int p5)
{
return new java.io.File(com.b.a.a.g(this.f), new StringBuilder().append(this.a).append(".").append(p5).toString());
}
}
Lcom/b/a/d;.a()Ljava/lang/String; {
public final String a()
{
StringBuilder v1_1 = new StringBuilder();
long[] v2 = this.b;
int v3 = v2.length;
String v0_0 = 0;
while (v0_0 < v3) {
v1_1.append(32).append(v2[v0_0]);
v0_0++;
}
return v1_1.toString();
}
}
Lcom/b/a/d;.a([Ljava/lang/String;)V {
final void a(String[] p5)
{
if (p5.length == com.b.a.a.f(this.f)) {
int v0_1 = 0;
try {
while (v0_1 < p5.length) {
this.b[v0_1] = Long.parseLong(p5[v0_1]);
v0_1++;
}
} catch (int v0) {
throw com.b.a.d.b(p5);
}
return;
} else {
throw com.b.a.d.b(p5);
}
}
}
Lcom/b/a/d;.b(I)Ljava/io/File; {
public final java.io.File b(int p5)
{
return new java.io.File(com.b.a.a.g(this.f), new StringBuilder().append(this.a).append(".").append(p5).append(".tmp").toString());
}
}
Lcom/b/a/e;.<init>(Lcom/b/a/a; Ljava/lang/String; J [Ljava/io/InputStream; [J)V {
private e(com.b.a.a p2, String p3, long p4, java.io.InputStream[] p6, long[] p7)
{
this.b = p2;
this.c = p3;
this.d = p4;
this.a = p6;
this.e = p7;
return;
}
}
Lcom/b/a/e;.<init>(Lcom/b/a/a; Ljava/lang/String; J [Ljava/io/InputStream; [J B)V {
synthetic e(com.b.a.a p2, String p3, long p4, java.io.InputStream[] p6, long[] p7, byte p8)
{
this(p2, p3, p4, p6, p7);
return;
}
}
Lcom/b/a/e;.close()V {
public final void close()
{
java.io.InputStream[] v1 = this.a;
int v2 = v1.length;
int v0 = 0;
while (v0 < v2) {
com.b.a.g.a(v1[v0]);
v0++;
}
return;
}
}
Lcom/b/a/f$1;.<init>(Lcom/b/a/f; I)V {
f$1(com.b.a.f p1, int p2)
{
this.a = p1;
this(p2);
return;
}
}
Lcom/b/a/f$1;.toString()Ljava/lang/String; {
public final String toString()
{
if ((this.count <= 0) || (this.buf[(this.count - 1)] != 13)) {
java.io.UnsupportedEncodingException v0_3 = this.count;
} else {
v0_3 = (this.count - 1);
}
try {
return new String(this.buf, 0, v0_3, this.a.a.name());
} catch (java.io.UnsupportedEncodingException v0_5) {
throw new AssertionError(v0_5);
}
}
}
Lcom/b/a/f;.<init>(Ljava/io/InputStream; Ljava/nio/charset/Charset;)V {
public f(java.io.InputStream p2, java.nio.charset.Charset p3)
{
this(p2, p3, 0);
return;
}
}
Lcom/b/a/f;.<init>(Ljava/io/InputStream; Ljava/nio/charset/Charset; B)V {
private f(java.io.InputStream p3, java.nio.charset.Charset p4, byte p5)
{
if ((p3 != null) && (p4 != null)) {
if (p4.equals(com.b.a.g.a)) {
this.b = p3;
this.a = p4;
byte[] v0_3 = new byte[8192];
this.c = v0_3;
return;
} else {
throw new IllegalArgumentException("Unsupported encoding");
}
} else {
throw new NullPointerException();
}
}
}
Lcom/b/a/f;.b()V {
private void b()
{
java.io.EOFException v0_1 = this.b.read(this.c, 0, this.c.length);
if (v0_1 != -1) {
this.d = 0;
this.e = v0_1;
return;
} else {
throw new java.io.EOFException();
}
}
}
Lcom/b/a/f;.a()Ljava/lang/String; {
public final String a()
{
try {
if (this.c != null) {
if (this.d >= this.e) {
this.b();
}
byte[] v2_0 = this.d;
while (v2_0 != this.e) {
if (this.c[v2_0] != 10) {
v2_0++;
} else {
if ((v2_0 == this.d) || (this.c[(v2_0 - 1)] != 13)) {
int v1_5 = v2_0;
} else {
v1_5 = (v2_0 - 1);
}
String v0_10 = new String(this.c, this.d, (v1_5 - this.d), this.a.name());
this.d = (v2_0 + 1);
}
return v0_10;
}
int v1_2 = new com.b.a.f$1(this, ((this.e - this.d) + 80));
do {
v1_2.write(this.c, this.d, (this.e - this.d));
this.e = -1;
this.b();
String v0_8 = this.d;
if (v0_8 != this.e) {
break;
}
} while(v0_8 != this.e);
if (this.c[v0_8] != 10) {
v0_8++;
while (v0_8 == this.e) {
}
} else {
if (v0_8 != this.d) {
v1_2.write(this.c, this.d, (v0_8 - this.d));
}
this.d = (v0_8 + 1);
v0_10 = v1_2.toString();
}
return v0_10;
} else {
throw new java.io.IOException("LineReader is closed");
}
} catch (String v0_20) {
throw v0_20;
}
}
}
Lcom/b/a/f;.close()V {
public final void close()
{
try {
if (this.c != null) {
this.c = 0;
this.b.close();
}
} catch (java.io.InputStream v0_3) {
throw v0_3;
}
return;
}
}
Lcom/b/a/g;.<clinit>()V {
static g()
{
com.b.a.g.a = java.nio.charset.Charset.forName("US-ASCII");
com.b.a.g.b = java.nio.charset.Charset.forName("UTF-8");
return;
}
}
Lcom/b/a/g;.a(Ljava/io/Closeable;)V {
static void a(java.io.Closeable p1)
{
if (p1 != null) {
try {
p1.close();
} catch (Exception v0) {
throw v0;
} catch (Exception v0) {
}
}
return;
}
}
Lcom/b/a/g;.a(Ljava/io/File;)V {
static void a(java.io.File p5)
{
String v1_0 = p5.listFiles();
if (v1_0 != null) {
String v2_0 = v1_0.length;
int v0_0 = 0;
while (v0_0 < v2_0) {
String v3 = v1_0[v0_0];
if (v3.isDirectory()) {
com.b.a.g.a(v3);
}
if (v3.delete()) {
v0_0++;
} else {
throw new java.io.IOException(new StringBuilder("failed to delete file: ").append(v3).toString());
}
}
return;
} else {
throw new java.io.IOException(new StringBuilder("not a readable directory: ").append(p5).toString());
}
}
}
Lcom/c/a;.<init>(Ljava/lang/String; Ljava/lang/String;)V {
public a(String p4, String p5)
{
this.a = new javax.crypto.spec.IvParameterSpec(p5.getBytes());
this.b = new javax.crypto.spec.SecretKeySpec(p4.getBytes(), "AES");
try {
this.c = javax.crypto.Cipher.getInstance("AES/CBC/NoPadding");
} catch (javax.crypto.NoSuchPaddingException v0_7) {
v0_7.printStackTrace();
} catch (javax.crypto.NoSuchPaddingException v0_6) {
v0_6.printStackTrace();
}
return;
}
}
Lcom/c/a;.a([B)Ljava/lang/String; {
public static String a(byte[] p6)
{
String v0_1;
if (p6 != null) {
int v2 = p6.length;
v0_1 = "";
int v1_1 = 0;
while (v1_1 < v2) {
if ((p6[v1_1] & 255) >= 16) {
v0_1 = new StringBuilder().append(v0_1).append(Integer.toHexString((p6[v1_1] & 255))).toString();
} else {
v0_1 = new StringBuilder().append(v0_1).append("0").append(Integer.toHexString((p6[v1_1] & 255))).toString();
}
v1_1++;
}
} else {
v0_1 = 0;
}
return v0_1;
}
}
Lcom/c/a;.b(Ljava/lang/String;)Ljava/lang/String; {
private static String b(String p4)
{
int v1 = (16 - (p4.length() % 16));
int v0_2 = 0;
while (v0_2 < v1) {
p4 = new StringBuilder().append(p4).append(32).toString();
v0_2++;
}
return p4;
}
}
Lcom/c/a;.a(Ljava/lang/String;)[B {
public final byte[] a(String p5)
{
if ((p5 != null) && (p5.length() != 0)) {
try {
this.c.init(1, this.b, this.a);
return this.c.doFinal(com.c.a.b(p5).getBytes());
} catch (String v0_4) {
throw new Exception(new StringBuilder("[encrypt] ").append(v0_4.getMessage()).toString());
}
} else {
throw new Exception("Empty string");
}
}
}
Lcom/c/b;.<clinit>()V {
static b()
{
com.c.b.d = 0;
return;
}
}
Lcom/c/b;.<init>(Landroid/content/Context; Lcom/c/g;)V {
public b(android.content.Context p4, com.c.g p5)
{
this.a = p4.getSharedPreferences("mat_queue", 0);
this.b = new java.util.concurrent.Semaphore(1, 1);
this.c = p5;
return;
}
}
Lcom/c/b;.a(J)J {
static synthetic long a(long p0)
{
com.c.b.d = p0;
return p0;
}
}
Lcom/c/b;.a(Lcom/c/b;)Ljava/util/concurrent/Semaphore; {
static synthetic java.util.concurrent.Semaphore a(com.c.b p1)
{
return p1.b;
}
}
Lcom/c/b;.b()J {
static synthetic long b()
{
return com.c.b.d;
}
}
Lcom/c/b;.b(Lcom/c/b;)Lcom/c/g; {
static synthetic com.c.g b(com.c.b p1)
{
return p1.c;
}
}
Lcom/c/b;.a()I {
protected final declared_synchronized int a()
{
try {
return this.a.getInt("queuesize", 0);
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/b;.a(I)V {
protected final declared_synchronized void a(int p3)
{
try {
Throwable v0_1 = this.a.edit();
} catch (Throwable v0_2) {
throw v0_2;
}
if (p3 < 0) {
p3 = 0;
}
v0_1.putInt("queuesize", p3);
v0_1.commit();
return;
}
}
Lcom/c/b;.a(Ljava/lang/String;)V {
protected final declared_synchronized void a(String p2)
{
try {
this.a((this.a() - 1));
Throwable v0_3 = this.a.edit();
v0_3.remove(p2);
v0_3.commit();
return;
} catch (Throwable v0_4) {
throw v0_4;
}
}
}
Lcom/c/b;.a(Lorg/json/JSONObject; Ljava/lang/String;)V {
protected final declared_synchronized void a(org.json.JSONObject p3, String p4)
{
try {
Throwable v0_1 = this.a.edit();
v0_1.putString(p4, p3.toString());
v0_1.commit();
return;
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/b;.b(Ljava/lang/String;)Ljava/lang/String; {
protected final declared_synchronized String b(String p3)
{
try {
return this.a.getString(p3, 0);
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/c;.<init>(Lcom/c/b; Ljava/lang/String; Ljava/lang/String; Lorg/json/JSONObject; Z)V {
protected c(com.c.b p2, String p3, String p4, org.json.JSONObject p5, boolean p6)
{
this.a = p2;
this.b = 0;
this.c = 0;
this.d = 0;
this.e = 0;
this.b = p3;
this.c = p4;
this.d = p5;
this.e = p6;
return;
}
}
Lcom/c/c;.run()V {
public final void run()
{
try {
com.c.b.a(this.a).acquire();
java.util.concurrent.Semaphore v0_3 = new org.json.JSONObject();
try {
v0_3.put("link", this.b);
v0_3.put("data", this.c);
v0_3.put("post_body", this.d);
v0_3.put("first_session", this.e);
} catch (java.util.concurrent.Semaphore v0_4) {
android.util.Log.w("MobileAppTracker", "Failed creating event for queueing");
v0_4.printStackTrace();
com.c.b.a(this.a).release();
return;
}
String v1_7 = (this.a.a() + 1);
this.a.a(v1_7);
this.a.a(v0_3, Integer.toString(v1_7));
com.c.b.a(this.a).release();
return;
} catch (java.util.concurrent.Semaphore v0_9) {
android.util.Log.w("MobileAppTracker", "Interrupted adding event to queue");
v0_9.printStackTrace();
com.c.b.a(this.a).release();
return;
} catch (java.util.concurrent.Semaphore v0_12) {
com.c.b.a(this.a).release();
throw v0_12;
}
}
}
Lcom/c/d;.<init>(Lcom/c/b;)V {
protected d(com.c.b p1)
{
this.a = p1;
return;
}
}
Lcom/c/d;.run()V {
public final void run()
{
int v3 = this.a.a();
if (v3 != 0) {
try {
com.c.b.a(this.a).acquire();
int v0_3 = 1;
} catch (int v0_15) {
com.c.b.a(this.a).release();
throw v0_15;
} catch (int v0_12) {
v0_12.printStackTrace();
com.c.b.a(this.a).release();
}
if (v3 > 50) {
v0_3 = ((v3 - 50) + 1);
}
while (v0_3 <= v3) {
long v4_0 = Integer.toString(v0_3);
String v5_0 = this.a.b(v4_0);
if (v5_0 == null) {
android.util.Log.d("MobileAppTracker", "Null request skipped from queue");
this.a.a(v4_0);
} else {
try {
org.json.JSONException v1_5 = new org.json.JSONObject(v5_0);
long v6_0 = v1_5.getString("link");
org.json.JSONObject v2_3 = v1_5.getString("data");
StringBuilder v7_1 = v1_5.getJSONObject("post_body");
} catch (int v0_7) {
v0_7.printStackTrace();
this.a.a(v4_0);
com.c.b.a(this.a).release();
return;
}
if (v1_5.getBoolean("first_session")) {
com.c.b.b(this.a);
try {
com.c.b.b(this.a).l.wait(60000);
} catch (int v0_11) {
throw v0_11;
}
}
if (com.c.b.b(this.a) == null) {
android.util.Log.d("MobileAppTracker", "Dropping queued request because no MAT object was found");
this.a.a(v4_0);
} else {
if (!com.c.b.b(this.a).a(v6_0, v2_3, v7_1)) {
v0_3--;
org.json.JSONObject v2_5 = v6_0.indexOf("&sdk_retry_attempt=");
if (v2_5 > null) {
org.json.JSONException v1_17 = -1;
StringBuilder v7_2 = (v2_5 + 19);
org.json.JSONObject v2_6 = (v7_2 + 1);
try {
while(true) {
try {
v1_17 = Integer.parseInt(v6_0.substring(v7_2, v2_6));
v2_6++;
} catch (org.json.JSONObject v2) {
org.json.JSONException v1_21 = v6_0.replaceFirst("&sdk_retry_attempt=\\d+", new StringBuilder("&sdk_retry_attempt=").append((v1_17 + 1)).toString());
try {
org.json.JSONObject v2_9 = new org.json.JSONObject(v5_0);
v2_9.put("link", v1_21);
this.a.a(v2_9, v4_0);
} catch (org.json.JSONException v1_23) {
v1_23.printStackTrace();
}
}
}
} catch (org.json.JSONObject v2) {
}
}
if (com.c.b.b() != 0) {
if (com.c.b.b() > 30) {
if (com.c.b.b() > 90) {
if (com.c.b.b() > 600) {
if (com.c.b.b() > 3600) {
com.c.b.a(86400);
} else {
com.c.b.a(21600);
}
} else {
com.c.b.a(3600);
}
} else {
com.c.b.a(600);
}
} else {
com.c.b.a(90);
}
} else {
com.c.b.a(30);
}
try {
Thread.sleep(((long) (((1.0 + (0.1 * Math.random())) * ((double) com.c.b.b())) * 1000.0)));
} catch (org.json.JSONException v1) {
}
} else {
this.a.a(v4_0);
com.c.b.a(0);
}
}
}
v0_3++;
}
com.c.b.a(this.a).release();
}
return;
}
}
Lcom/c/g;.<clinit>()V {
static g()
{
com.c.g.t = 0;
return;
}
}
Lcom/c/g;.<init>()V {
protected g()
{
this.o = "heF9BATUfWuISyO8";
return;
}
}
Lcom/c/g;.a()Lcom/c/g; {
public static declared_synchronized com.c.g a()
{
try {
return com.c.g.t;
} catch (Throwable v1_1) {
throw v1_1;
}
}
}
Lcom/c/g;.a(Landroid/content/Context; Ljava/lang/String; Ljava/lang/String;)V {
public static void a(android.content.Context p2, String p3, String p4)
{
void v0_1 = new com.c.g();
com.c.g.t = v0_1;
v0_1.k = p2.getApplicationContext();
com.c.g.t.m = java.util.concurrent.Executors.newSingleThreadExecutor();
com.c.g.t.a(p3, p4);
return;
}
}
Lcom/c/g;.a(Lcom/c/g; Ljava/lang/Object; Ljava/lang/String; Ljava/lang/String;)V {
static synthetic void a(com.c.g p0, Object p1, String p2, String p3)
{
p0.a(p1, p2, p3);
return;
}
}
Lcom/c/g;.a(Ljava/lang/Object; Ljava/lang/String; Ljava/lang/String;)V {
private declared_synchronized void a(Object p7, String p8, String p9)
{
try {
if (this.d) {
this.b();
this.j.a("conversion");
com.c.h v0_3 = new java.util.Date();
if (!(p7 instanceof String)) {
if (!(p7 instanceof Integer)) {
android.util.Log.d("MobileAppTracker", "Received invalid event name or id value, not measuring event");
} else {
this.j.c(Integer.toString(((Integer) p7).intValue()));
}
} else {
if (p7.equals("close")) {
} else {
if ((!p7.equals("open")) && ((!p7.equals("install")) && ((!p7.equals("update")) && (!p7.equals("session"))))) {
this.j.d(((String) p7));
} else {
this.j.a("session");
new java.util.Date((v0_3.getTime() + 60000));
}
}
}
this.j.m(Double.toString(0));
this.j.b(p8);
this.j.l(p9);
com.c.h v0_12 = com.c.m.a(this.r, this.s);
boolean v1_19 = com.c.m.a();
org.json.JSONObject v2_4 = com.c.m.b();
if (this.b != null) {
}
this.a(v0_12, v1_19, v2_4, this.g);
this.g = 0;
this.b();
if (this.a != null) {
}
this.j.b();
}
} catch (com.c.h v0_15) {
throw v0_15;
}
return;
}
}
Lcom/c/g;.a(Ljava/lang/String; Ljava/lang/String;)V {
private void a(String p6, String p7)
{
com.c.h.a(this.k, p6);
this.j = com.c.h.a();
this.l = java.util.concurrent.Executors.newSingleThreadExecutor();
this.p = new com.c.r();
this.q = new com.c.a(p7.trim(), "heF9BATUfWuISyO8");
this.g = 1;
this.d = 0;
this.c = 0;
this.r = 0;
this.s = 0;
this.n = new com.c.b(this.k, this);
this.b();
this.i = new com.c.s(this);
if (this.c) {
try {
this.k.unregisterReceiver(this.i);
} catch (IllegalArgumentException v0) {
}
this.c = 0;
}
this.k.registerReceiver(this.i, new android.content.IntentFilter("android.net.conn.CONNECTIVITY_CHANGE"));
this.c = 1;
this.d = 1;
return;
}
}
Lcom/c/g;.a(Ljava/lang/String; Ljava/lang/String; Lorg/json/JSONObject; Z)V {
private void a(String p8, String p9, org.json.JSONObject p10, boolean p11)
{
java.util.concurrent.ExecutorService v6 = this.l;
com.c.b v1 = this.n;
v1.getClass();
v6.execute(new com.c.c(v1, p8, p9, p10, p11));
return;
}
}
Lcom/c/g;.a(Landroid/content/Context;)Z {
private static boolean a(android.content.Context p1)
{
int v0_5;
int v0_3 = ((android.net.ConnectivityManager) p1.getSystemService("connectivity")).getActiveNetworkInfo();
if ((v0_3 == 0) || (!v0_3.isConnected())) {
v0_5 = 0;
} else {
v0_5 = 1;
}
return v0_5;
}
}
Lcom/c/g;.a(Lcom/c/g; Z)Z {
static synthetic boolean a(com.c.g p0, boolean p1)
{
p0.r = p1;
return p1;
}
}
Lcom/c/g;.a(Ljava/lang/String;)V {
public final void a(String p3)
{
this.m.execute(new com.c.u(this, p3));
return;
}
}
Lcom/c/g;.a(Ljava/lang/String; Z)V {
public final void a(String p4, boolean p5)
{
int v0;
if (!p5) {
v0 = 0;
} else {
v0 = 1;
}
this.m.execute(new com.c.j(this, p4, v0));
return;
}
}
Lcom/c/g;.a(Z)V {
public final void a(boolean p3)
{
this.m.execute(new com.c.i(this, p3));
return;
}
}
Lcom/c/g;.a(Ljava/lang/String; Ljava/lang/String; Lorg/json/JSONObject;)Z {
protected final boolean a(String p6, String p7, org.json.JSONObject p8)
{
boolean v1_0 = 1;
com.c.e v0_0 = 0;
if (this.r) {
android.util.Log.d("MobileAppTracker", "Sending event to server...");
}
com.c.h v2_6 = this.p.a(new StringBuilder().append(p6).append("&data=").append(com.c.m.a(p7, this.q)).toString(), p8, this.r);
if (v2_6 != null) {
if (v2_6.has("success")) {
if (this.a != null) {
try {
if (v2_6.getString("success").equals("true")) {
v0_0 = 1;
}
} catch (boolean v1_1) {
v1_1.printStackTrace();
v1_0 = 0;
return v1_0;
}
// Both branches of the condition point to the same code.
// if (v0_0 == null) {
// }
}
try {
if (v2_6.getString("site_event_type").equals("open")) {
com.c.e v0_5 = v2_6.getString("log_id");
if (this.j.ac().equals("")) {
this.j.j(v0_5);
}
this.j.i(v0_5);
}
} catch (com.c.e v0) {
}
} else {
if (this.r) {
android.util.Log.d("MobileAppTracker", "Request failed, event will remain in queue");
}
v1_0 = 0;
}
} else {
// Both branches of the condition point to the same code.
// if (this.a == null) {
// }
}
return v1_0;
}
}
Lcom/c/g;.b()V {
protected final void b()
{
if (com.c.g.a(this.k)) {
java.util.concurrent.ExecutorService v0_2 = this.l;
com.c.b v2 = this.n;
v2.getClass();
v0_2.execute(new com.c.d(v2));
}
return;
}
}
Lcom/c/g;.b(Ljava/lang/String;)V {
public final void b(String p3)
{
this.m.execute(new com.c.k(this, p3));
return;
}
}
Lcom/c/g;.c()V {
public final void c()
{
this.m.execute(new com.c.t(this));
return;
}
}
Lcom/c/g;.c(Ljava/lang/String;)V {
public final void c(String p3)
{
this.m.execute(new com.c.l(this, p3));
return;
}
}
Lcom/c/g;.d()Ljava/lang/String; {
public final String d()
{
return this.j.n();
}
}
Lcom/c/g;.d(Ljava/lang/String;)V {
public final void d(String p3)
{
this.m.execute(new com.c.n(this, p3));
return;
}
}
Lcom/c/g;.e()Ljava/lang/String; {
public final String e()
{
return this.j.aj();
}
}
Lcom/c/g;.e(Ljava/lang/String;)V {
public final void e(String p3)
{
this.m.execute(new com.c.o(this, p3));
return;
}
}
Lcom/c/g;.f()V {
public final void f()
{
this.m.execute(new com.c.p(this));
return;
}
}
Lcom/c/h;.<clinit>()V {
static h()
{
com.c.h.b = 0;
return;
}
}
Lcom/c/h;.<init>()V {
public h()
{
this.c = 0;
this.d = 0;
this.e = 0;
this.f = 0;
this.g = 0;
this.h = 0;
this.i = 0;
this.j = 0;
this.k = 0;
this.l = 0;
this.m = 0;
this.n = 0;
this.o = 0;
this.p = 0;
this.q = 0;
this.r = 0;
this.s = 0;
this.t = 0;
this.u = 0;
this.v = 0;
this.w = 0;
this.x = 0;
this.y = 0;
this.z = 0;
this.A = 0;
this.B = 0;
this.C = 0;
this.D = 0;
this.E = 0;
this.F = 0;
this.G = 0;
this.H = 0;
this.I = 0;
this.J = 0;
this.K = 0;
this.L = 0;
this.M = 0;
this.N = 0;
this.O = 0;
this.P = 0;
this.Q = 0;
this.R = 0;
this.S = 0;
this.T = 0;
this.U = 0;
this.V = 0;
this.W = 0;
this.X = 0;
this.Y = 0;
this.Z = 0;
this.aa = 0;
this.ab = 0;
this.ac = 0;
this.ad = 0;
this.ae = 0;
this.af = 0;
this.ag = 0;
this.ah = 0;
this.ai = 0;
this.aj = 0;
this.ak = 0;
this.al = 0;
this.am = 0;
this.an = 0;
this.ao = 0;
this.ap = 0;
this.aq = 0;
this.ar = 0;
this.as = 0;
this.at = 0;
this.au = 0;
this.av = 0;
this.aw = 0;
this.ax = 0;
this.ay = 0;
this.az = 0;
this.aA = 0;
this.aB = 0;
this.aC = 0;
this.aD = 0;
this.aE = 0;
this.aF = 0;
this.aG = 0;
this.aH = 0;
return;
}
}
Lcom/c/h;.A(Ljava/lang/String;)V {
private declared_synchronized void A(String p2)
{
try {
this.R = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.B(Ljava/lang/String;)V {
private declared_synchronized void B(String p3)
{
try {
this.a("mat_id", "mat_id", p3);
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.C(Ljava/lang/String;)V {
private declared_synchronized void C(String p2)
{
try {
this.W = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.D(Ljava/lang/String;)V {
private declared_synchronized void D(String p2)
{
try {
this.X = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.E(Ljava/lang/String;)V {
private declared_synchronized void E(String p2)
{
try {
this.Y = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.F(Ljava/lang/String;)V {
private declared_synchronized void F(String p2)
{
try {
this.ag = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.G(Ljava/lang/String;)V {
private declared_synchronized void G(String p2)
{
try {
this.ah = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.H(Ljava/lang/String;)V {
private declared_synchronized void H(String p2)
{
try {
this.ai = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.a()Lcom/c/h; {
public static com.c.h a()
{
return com.c.h.b;
}
}
Lcom/c/h;.a(Ljava/lang/String; Ljava/lang/String;)Ljava/lang/String; {
private declared_synchronized String a(String p3, String p4)
{
try {
return this.a.getSharedPreferences(p3, 0).getString(p4, "");
} catch (Throwable v0_3) {
throw v0_3;
}
}
}
Lcom/c/h;.a(Landroid/content/Context; Ljava/lang/String;)V {
public static void a(android.content.Context p1, String p2)
{
if (com.c.h.b == null) {
com.c.h v0_2 = new com.c.h();
com.c.h.b = v0_2;
v0_2.a = p1;
com.c.h.b.b(p1, p2);
}
return;
}
}
Lcom/c/h;.a(Lcom/c/h; Ljava/lang/String;)V {
static synthetic void a(com.c.h p0, String p1)
{
p0.an = p1;
return;
}
}
Lcom/c/h;.a(Ljava/lang/String; Ljava/lang/String; Ljava/lang/String;)V {
private declared_synchronized void a(String p3, String p4, String p5)
{
try {
this.a.getSharedPreferences(p3, 0).edit().putString(p4, p5).commit();
return;
} catch (Throwable v0_4) {
throw v0_4;
}
}
}
Lcom/c/h;.aS()V {
private declared_synchronized void aS()
{
try {
this.u = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aT()V {
private declared_synchronized void aT()
{
try {
this.v = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aU()V {
private declared_synchronized void aU()
{
try {
this.w = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aV()V {
private declared_synchronized void aV()
{
try {
this.x = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aW()V {
private declared_synchronized void aW()
{
try {
this.y = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aX()V {
private declared_synchronized void aX()
{
try {
this.z = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aY()V {
private declared_synchronized void aY()
{
try {
this.A = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aZ()V {
private declared_synchronized void aZ()
{
try {
this.B = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.b(Landroid/content/Context; Ljava/lang/String;)Z {
private declared_synchronized boolean b(android.content.Context p9, String p10)
{
try {
this.p(p10.trim());
this.b("USD");
new android.os.Handler(android.os.Looper.getMainLooper()).post(new com.c.q(this, this.a));
IndexOutOfBoundsException v0_5 = this.a.getPackageName();
this.k(v0_5);
String v3_4 = this.a.getPackageManager();
try {
this.q(v3_4.getApplicationLabel(v3_4.getApplicationInfo(v0_5, 0)).toString());
this.y(Long.toString((new java.util.Date(new java.io.File(v3_4.getApplicationInfo(v0_5, 0).sourceDir).lastModified()).getTime() / 1000)));
} catch (int v4) {
}
try {
this.r(Integer.toString(v3_4.getPackageInfo(v0_5, 0).versionCode));
} catch (int v4) {
this.r("0");
}
String v3_7;
IndexOutOfBoundsException v0_20;
this.z(v3_4.getInstallerPackageName(v0_5));
this.x(android.os.Build.MODEL);
this.u(android.os.Build.MANUFACTURER);
this.w(System.getProperty("os.arch"));
this.E(android.os.Build$VERSION.RELEASE);
this.F(Float.toString(p9.getResources().getDisplayMetrics().density));
IndexOutOfBoundsException v0_18 = ((android.view.WindowManager) p9.getSystemService("window"));
if (android.os.Build$VERSION.SDK_INT < 13) {
v3_7 = v0_18.getDefaultDisplay().getWidth();
v0_20 = v0_18.getDefaultDisplay().getHeight();
} else {
int v4_19 = new android.graphics.Point();
v0_18.getDefaultDisplay().getSize(v4_19);
v3_7 = v4_19.x;
v0_20 = v4_19.y;
}
this.H(Integer.toString(v3_7));
this.G(Integer.toString(v0_20));
if (!((android.net.ConnectivityManager) this.a.getSystemService("connectivity")).getNetworkInfo(1).isConnected()) {
this.s("mobile");
} else {
this.s("WIFI");
}
this.A(java.util.Locale.getDefault().getDisplayLanguage(java.util.Locale.US));
IndexOutOfBoundsException v0_34 = ((android.telephony.TelephonyManager) this.a.getSystemService("phone"));
if (v0_34 == null) {
this.t(java.util.Locale.getDefault().getCountry());
} else {
if (v0_34.getNetworkCountryIso() != null) {
this.t(v0_34.getNetworkCountryIso());
}
this.v(v0_34.getNetworkOperatorName());
IndexOutOfBoundsException v0_37 = v0_34.getNetworkOperator();
if (v0_37 != null) {
try {
String v3_17 = v0_37.substring(0, 3);
IndexOutOfBoundsException v0_38 = v0_37.substring(3);
this.C(v3_17);
this.D(v0_38);
} catch (IndexOutOfBoundsException v0) {
}
}
}
IndexOutOfBoundsException v0_39 = this.Z();
if ((v0_39 == null) || (v0_39.length() == 0)) {
this.B(java.util.UUID.randomUUID().toString());
}
IndexOutOfBoundsException v0_44 = 1;
return v0_44;
} catch (IndexOutOfBoundsException v0_45) {
throw v0_45;
} catch (IndexOutOfBoundsException v0_43) {
android.util.Log.d("MobileAppTracker", "MobileAppTracker initialization failed");
v0_43.printStackTrace();
v0_44 = 0;
return v0_44;
}
}
}
Lcom/c/h;.ba()V {
private declared_synchronized void ba()
{
try {
this.C = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bb()V {
private declared_synchronized void bb()
{
try {
this.E = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bc()V {
private declared_synchronized void bc()
{
try {
this.G = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bd()V {
private declared_synchronized void bd()
{
try {
this.H = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.be()V {
private declared_synchronized void be()
{
try {
this.I = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bf()V {
private declared_synchronized void bf()
{
try {
this.ao = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bg()V {
private declared_synchronized void bg()
{
try {
this.ap = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bh()V {
private declared_synchronized void bh()
{
try {
this.aq = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bi()V {
private declared_synchronized void bi()
{
try {
this.ar = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bj()V {
private declared_synchronized void bj()
{
try {
this.as = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bk()V {
private declared_synchronized void bk()
{
try {
this.at = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bl()V {
private declared_synchronized void bl()
{
try {
this.au = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bm()V {
private declared_synchronized void bm()
{
try {
this.av = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bn()V {
private declared_synchronized void bn()
{
try {
this.aw = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bo()V {
private declared_synchronized void bo()
{
try {
this.ax = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bp()V {
private declared_synchronized void bp()
{
try {
this.ay = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bq()V {
private declared_synchronized void bq()
{
try {
this.az = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.br()V {
private declared_synchronized void br()
{
try {
this.aA = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bs()V {
private declared_synchronized void bs()
{
try {
this.aB = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bt()V {
private declared_synchronized void bt()
{
try {
this.aC = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bu()V {
private declared_synchronized void bu()
{
try {
this.aD = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bv()V {
private declared_synchronized void bv()
{
try {
this.aE = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bw()V {
private declared_synchronized void bw()
{
try {
this.aF = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.bx()V {
private declared_synchronized void bx()
{
try {
this.aG = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.by()V {
private declared_synchronized void by()
{
try {
this.aH = 0;
return;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.p(Ljava/lang/String;)V {
private declared_synchronized void p(String p2)
{
try {
this.d = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.q(Ljava/lang/String;)V {
private declared_synchronized void q(String p2)
{
try {
this.j = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.r(Ljava/lang/String;)V {
private declared_synchronized void r(String p2)
{
try {
this.k = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.s(Ljava/lang/String;)V {
private declared_synchronized void s(String p2)
{
try {
this.l = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.t(Ljava/lang/String;)V {
private declared_synchronized void t(String p2)
{
try {
this.m = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.u(Ljava/lang/String;)V {
private declared_synchronized void u(String p2)
{
try {
this.o = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.v(Ljava/lang/String;)V {
private declared_synchronized void v(String p2)
{
try {
this.p = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.w(Ljava/lang/String;)V {
private declared_synchronized void w(String p2)
{
try {
this.q = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.x(Ljava/lang/String;)V {
private declared_synchronized void x(String p2)
{
try {
this.t = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.y(Ljava/lang/String;)V {
private declared_synchronized void y(String p2)
{
try {
this.P = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.z(Ljava/lang/String;)V {
private declared_synchronized void z(String p2)
{
try {
this.Q = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.A()Ljava/lang/String; {
public final declared_synchronized String A()
{
try {
return this.A;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.B()Ljava/lang/String; {
public final declared_synchronized String B()
{
try {
return this.B;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.C()Ljava/lang/String; {
public final declared_synchronized String C()
{
try {
return this.C;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.D()Ljava/lang/String; {
public final declared_synchronized String D()
{
try {
return this.D;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.E()Ljava/lang/String; {
public final declared_synchronized String E()
{
try {
return this.E;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.F()Ljava/lang/String; {
public final declared_synchronized String F()
{
try {
return this.F;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.G()Ljava/lang/String; {
public final declared_synchronized String G()
{
try {
return this.G;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.H()Ljava/lang/String; {
public final declared_synchronized String H()
{
try {
return this.H;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.I()Ljava/lang/String; {
public final declared_synchronized String I()
{
try {
return this.I;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.J()Ljava/lang/String; {
public final declared_synchronized String J()
{
try {
return this.J;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.K()Ljava/lang/String; {
public final declared_synchronized String K()
{
try {
return this.K;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.L()Ljava/lang/String; {
public final declared_synchronized String L()
{
try {
return this.L;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.M()Ljava/lang/String; {
public final declared_synchronized String M()
{
try {
return this.M;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.N()Ljava/lang/String; {
public final declared_synchronized String N()
{
try {
return this.N;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.O()Ljava/lang/String; {
public final declared_synchronized String O()
{
try {
return this.O;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.P()Ljava/lang/String; {
public final declared_synchronized String P()
{
try {
return this.P;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.Q()Ljava/lang/String; {
public final declared_synchronized String Q()
{
try {
return this.Q;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.R()Ljava/lang/String; {
public final declared_synchronized String R()
{
try {
return this.a("mat_log_id_install", "logId");
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/h;.S()Ljava/lang/String; {
public final declared_synchronized String S()
{
try {
return this.a("mat_referrer", "referrer");
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/h;.T()Ljava/lang/String; {
public final declared_synchronized String T()
{
try {
return this.a("mat_is_paying_user", "mat_is_paying_user");
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/h;.U()Ljava/lang/String; {
public final declared_synchronized String U()
{
try {
return this.R;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.V()Ljava/lang/String; {
public final declared_synchronized String V()
{
try {
return this.a("mat_log_id_last_open", "logId");
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/h;.W()Ljava/lang/String; {
public final declared_synchronized String W()
{
try {
return this.S;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.X()Ljava/lang/String; {
public final declared_synchronized String X()
{
try {
return this.U;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.Y()Ljava/lang/String; {
public final declared_synchronized String Y()
{
try {
return this.V;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.Z()Ljava/lang/String; {
public final declared_synchronized String Z()
{
try {
return this.a("mat_id", "mat_id");
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/h;.a(Ljava/lang/String;)V {
public final declared_synchronized void a(String p2)
{
try {
this.c = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.aA()Ljava/lang/String; {
public final declared_synchronized String aA()
{
try {
return this.aq;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aB()Ljava/lang/String; {
public final declared_synchronized String aB()
{
try {
return this.ar;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aC()Ljava/lang/String; {
public final declared_synchronized String aC()
{
try {
return this.as;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aD()Ljava/lang/String; {
public final declared_synchronized String aD()
{
try {
return this.at;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aE()Ljava/lang/String; {
public final declared_synchronized String aE()
{
try {
return this.au;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aF()Ljava/lang/String; {
public final declared_synchronized String aF()
{
try {
return this.av;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aG()Ljava/lang/String; {
public final declared_synchronized String aG()
{
try {
return this.aw;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aH()Ljava/lang/String; {
public final declared_synchronized String aH()
{
try {
return this.ax;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aI()Ljava/lang/String; {
public final declared_synchronized String aI()
{
try {
return this.ay;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aJ()Ljava/lang/String; {
public final declared_synchronized String aJ()
{
try {
return this.az;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aK()Ljava/lang/String; {
public final declared_synchronized String aK()
{
try {
return this.aA;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aL()Ljava/lang/String; {
public final declared_synchronized String aL()
{
try {
return this.aB;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aM()Ljava/lang/String; {
public final declared_synchronized String aM()
{
try {
return this.aC;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aN()Ljava/lang/String; {
public final declared_synchronized String aN()
{
try {
return this.aD;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aO()Ljava/lang/String; {
public final declared_synchronized String aO()
{
try {
return this.aE;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aP()Ljava/lang/String; {
public final declared_synchronized String aP()
{
try {
return this.aF;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aQ()Ljava/lang/String; {
public final declared_synchronized String aQ()
{
try {
return this.aG;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aR()Ljava/lang/String; {
public final declared_synchronized String aR()
{
try {
return this.aH;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aa()Ljava/lang/String; {
public final declared_synchronized String aa()
{
try {
return this.W;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.ab()Ljava/lang/String; {
public final declared_synchronized String ab()
{
try {
return this.X;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.ac()Ljava/lang/String; {
public final declared_synchronized String ac()
{
try {
return this.a("mat_log_id_open", "logId");
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/h;.ad()Ljava/lang/String; {
public final declared_synchronized String ad()
{
try {
return this.Y;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.ae()Ljava/lang/String; {
public final declared_synchronized String ae()
{
try {
return this.Z;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.af()Ljava/lang/String; {
public final declared_synchronized String af()
{
try {
return this.aa;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.ag()Ljava/lang/String; {
public final declared_synchronized String ag()
{
try {
return this.ab;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.ah()Ljava/lang/String; {
public final declared_synchronized String ah()
{
try {
return this.ac;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.ai()Ljava/lang/String; {
public final declared_synchronized String ai()
{
try {
return this.ad;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aj()Ljava/lang/String; {
public final declared_synchronized String aj()
{
try {
return this.ae;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.ak()Ljava/lang/String; {
public final declared_synchronized String ak()
{
try {
return this.af;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.al()Ljava/lang/String; {
public final declared_synchronized String al()
{
try {
return this.ag;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.am()Ljava/lang/String; {
public final declared_synchronized String am()
{
try {
return this.ah;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.an()Ljava/lang/String; {
public final declared_synchronized String an()
{
try {
return this.ai;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.ao()Ljava/lang/String; {
public final declared_synchronized String ao()
{
try {
return "3.4.2";
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.ap()Ljava/lang/String; {
public final declared_synchronized String ap()
{
try {
return this.aj;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.aq()Ljava/lang/String; {
public final declared_synchronized String aq()
{
try {
return this.ak;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.ar()Ljava/lang/String; {
public final declared_synchronized String ar()
{
try {
return this.al;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.as()Ljava/lang/String; {
public final declared_synchronized String as()
{
try {
return this.am;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.at()Ljava/lang/String; {
public final declared_synchronized String at()
{
try {
return this.a("mat_log_id_update", "logId");
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/h;.au()Ljava/lang/String; {
public final declared_synchronized String au()
{
try {
return this.an;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.av()Ljava/lang/String; {
public final declared_synchronized String av()
{
try {
return this.a("mat_user_ids", "user_email");
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/h;.aw()Ljava/lang/String; {
public final declared_synchronized String aw()
{
try {
return this.a("mat_user_ids", "user_id");
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/h;.ax()Ljava/lang/String; {
public final declared_synchronized String ax()
{
try {
return this.a("mat_user_ids", "user_name");
} catch (Throwable v0_2) {
throw v0_2;
}
}
}
Lcom/c/h;.ay()Ljava/lang/String; {
public final declared_synchronized String ay()
{
try {
return this.ao;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.az()Ljava/lang/String; {
public final declared_synchronized String az()
{
try {
return this.ap;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.b()V {
public final declared_synchronized void b()
{
try {
this.c(0);
this.d(0);
this.m(0);
this.b("USD");
this.l(0);
this.aY();
this.aX();
this.bb();
this.bc();
this.be();
this.bd();
this.aZ();
this.ba();
this.aS();
this.aT();
this.aU();
this.aV();
this.aW();
this.bg();
this.bf();
this.bh();
this.bu();
this.bv();
this.bw();
this.bx();
this.by();
this.bs();
this.br();
this.bq();
this.bt();
this.bo();
this.bp();
this.bm();
this.bl();
this.bk();
this.bn();
this.bi();
this.bj();
return;
} catch (Throwable v0_5) {
throw v0_5;
}
}
}
Lcom/c/h;.b(Ljava/lang/String;)V {
public final declared_synchronized void b(String p2)
{
try {
this.n = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.c()Ljava/lang/String; {
public final declared_synchronized String c()
{
try {
return this.c;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.c(Ljava/lang/String;)V {
public final declared_synchronized void c(String p2)
{
try {
this.D = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.d()Ljava/lang/String; {
public final declared_synchronized String d()
{
try {
return this.d;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.d(Ljava/lang/String;)V {
public final declared_synchronized void d(String p2)
{
try {
this.F = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.e()Ljava/lang/String; {
public final declared_synchronized String e()
{
try {
return this.e;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.e(Ljava/lang/String;)V {
public final declared_synchronized void e(String p2)
{
try {
this.J = p2;
return;
} catch (Throwable v0) {
throw v0;
}
}
}
Lcom/c/h;.f()Ljava/lang/String; {
public final declared_synchronized String f()
{
try {
return this.f;
} catch (Throwable v0_1) {
throw v0_1;
}
}
}
Lcom/c/h;.f(Ljava/lang/String;)V {
public final declar
Source¶
# encoding: utf-8
__author__ = "Nils Tobias Schmidt"
__email__ = "schmidt89 at informatik.uni-marburg.de"
from androguard.decompiler.dad import decompile
from androlyze.model.script.AndroScript import AndroScript
class DecompileMethodsText(AndroScript):
''' Get the source code from the apk for each method. '''
VERSION = "0.1"
def _analyze(self, apk, dalvik_vm_format, vm_analysis, gvm_analysis, *args, **kwargs):
# CFG
for method in dalvik_vm_format.get_methods():
try:
mx = vm_analysis.get_method(method)
if method.get_code() == None:
continue
classname, methodname, method_descriptor = method.get_class_name(), method.get_name(), method.get_descriptor()
# skip android classes due to mongo db document limit
if classname.find("Landroid") != -1:
continue
ms = decompile.DvMethod(mx)
# process to the decompilation
ms.process()
self.cres += '''%s.%s%s {
%s
}
''' % (classname, methodname, method_descriptor, ms.get_source())
except:
pass
def custom_result_object(self):
return ("", "java")
############################################################
#---Options
############################################################
def needs_dalvik_vm_format(self):
return True
def needs_vmanalysis(self):
return True