Code with Finding: |
/*
* Decompiled with CFR 0_128.
*
* Could not load the following classes:
* android.content.ComponentName
* android.content.Context
* android.content.Intent
* android.content.SharedPreferences
* android.content.SharedPreferences$Editor
* android.os.Handler
* com.whatsapp.App
* com.whatsapp.LocationSharingService
* com.whatsapp.a9g
* com.whatsapp.a9u
* com.whatsapp.ac0
* com.whatsapp.aeu
* com.whatsapp.awo
* com.whatsapp.e4
* com.whatsapp.protocol.d
* com.whatsapp.protocol.p
* com.whatsapp.util.Log
*/
package com.whatsapp;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Handler;
import com.whatsapp.App;
import com.whatsapp.LocationSharingService;
import com.whatsapp.a9f;
import com.whatsapp.a9g;
import com.whatsapp.a9u;
import com.whatsapp.ac0;
import com.whatsapp.aeu;
import com.whatsapp.awo;
import com.whatsapp.e4;
import com.whatsapp.protocol.d;
import com.whatsapp.protocol.p;
import com.whatsapp.q2;
import com.whatsapp.util.Log;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
/*
* Duplicate member names - consider using --renamedupmembers true
*/
public class fo
implements d {
public static final fo f;
private static final String[] z;
private final ArrayList a = new ArrayList();
private HashMap b;
private Runnable c = new ac0(this);
private final Object d = new Object();
private final ArrayList e = new ArrayList();
private final HashMap g = new HashMap();
/*
* Enabled aggressive block sorting
*/
static {
String[] arrstring = new String[30];
String string = "~Xj\u001eo.\u0005";
int n = -1;
String[] arrstring2 = arrstring;
int n2 = 0;
block37 : do {
char[] arrc = string.toCharArray();
int n3 = arrc.length;
int n4 = 0;
do {
int n5;
if (n3 <= n4) {
String string2 = new String(arrc).intern();
switch (n) {
default: {
arrstring2[n2] = string2;
string = "2P{\u0010n7Pv\u0002w9M7\u001et\u000e^j\u0005s=Vh\u0010t*ll\u001ej.Z|\"r?Mq\u001f}\u0012P{\u0010n7Pv^";
n2 = 1;
arrstring2 = arrstring;
n = 0;
continue block37;
}
case 0: {
arrstring2[n2] = string2;
string = "2P{\u0010n7Pv\u0002w9M7\u001et\rKy\u0003n\u0012P{\u0010n7Pv#.Pj\u0005s0X7";
n2 = 2;
arrstring2 = arrstring;
n = 1;
continue block37;
}
case 1: {
arrstring2[n2] = string2;
n2 = 3;
arrstring2 = arrstring;
string = ":Jj\u0010n7Pv";
n = 2;
continue block37;
}
case 2: {
arrstring2[n2] = string2;
n2 = 4;
string = "~[q\u0002{<S}\u0015";
n = 3;
arrstring2 = arrstring;
continue block37;
}
case 3: {
arrstring2[n2] = string2;
n2 = 5;
string = "2P{\u0010n7Pv\u0002w9M7\u001et\rKy\u0003n\u0012P{\u0010n7Pv#.Pj\u0005s0X7";
n = 4;
arrstring2 = arrstring;
continue block37;
}
case 4: {
arrstring2[n2] = string2;
n2 = 6;
string = "=Pu_m6^l\u0002{.O6\"r?M}=u=^l\u0018u0l}\u0003l7\\}_I\n~J%";
n = 5;
arrstring2 = arrstring;
continue block37;
}
case 5: {
arrstring2[n2] = string2;
n2 = 7;
string = "~[m\u0003{*Vw\u001f ";
n = 6;
arrstring2 = arrstring;
continue block37;
}
case 6: {
arrstring2[n2] = string2;
n2 = 8;
string = "2P{\u0010n7Pv.i6^j\u0018t9";
n = 7;
arrstring2 = arrstring;
continue block37;
}
case 7: {
arrstring2[n2] = string2;
n2 = 9;
string = "2P{\u0010n7Pv\u0002w9M7\u0002*Kq\u001f}-\u0010j\u0014i;K7\u0017{7S}\u0015";
n = 8;
arrstring2 = arrstring;
continue block37;
}
case 8: {
arrstring2[n2] = string2;
n2 = 10;
string = "2P{\u0010n7Pv.i6^j\u0018t9";
n = 9;
arrstring2 = arrstring;
continue block37;
}
case 9: {
arrstring2[n2] = string2;
n2 = 11;
string = "=Pu_m6^l\u0002{.OG\u0001h;Y}\u00030\\}\u0002";
n = 10;
arrstring2 = arrstring;
continue block37;
}
case 10: {
arrstring2[n2] = string2;
n2 = 12;
string = "2P{\u0010n7Pv\u0002w9M7\u001et\u000e^j\u0005s=Vh\u0010t*LK\u0019{,Vv\u0016V1\\y\u0005s1Q7";
n = 11;
arrstring2 = arrstring;
continue block37;
}
case 11: {
arrstring2[n2] = string2;
n2 = 13;
string = "2P{\u0010n7Pv\u0002w9M7\u001et\u000e^j\u0005s=Vh\u0010t*LK\u0019{,Vv\u0016V1\\y\u0005s1Q7\u001bs:\u0005";
n = 12;
arrstring2 = arrstring;
continue block37;
}
case 12: {
arrstring2[n2] = string2;
n2 = 14;
string = "2P{\u0010n7Pv\u0002w9M7\u001et\u000e^j\u0005s=Vh\u0010t*sw\u0012{*Vw\u001f5";
n = 13;
arrstring2 = arrstring;
continue block37;
}
case 13: {
arrstring2[n2] = string2;
n2 = 15;
string = "2P{\u0010n7Pv\u0002w9M7\u001et\rKw\u0001V1\\y\u0005s1QJ\u0014j1Ml\u0018t9";
n = 14;
arrstring2 = arrstring;
continue block37;
}
case 14: {
arrstring2[n2] = string2;
n2 = 16;
string = "=Pu_m6^l\u0002{.O6\"r?M}=u=^l\u0018u0l}\u0003l7\\}_I\npH";
n = 15;
arrstring2 = arrstring;
continue block37;
}
case 15: {
arrstring2[n2] = string2;
n2 = 17;
string = "=Pu_m6^l\u0002{.OG\u0001h;Y}\u00030\\}\u0002";
n = 16;
arrstring2 = arrstring;
continue block37;
}
case 16: {
arrstring2[n2] = string2;
n2 = 18;
string = "2P{\u0010n7Pv.i6^j\u0018t9";
n = 17;
arrstring2 = arrstring;
continue block37;
}
case 17: {
arrstring2[n2] = string2;
n2 = 19;
string = "2P{\u0010n7Pv\u0002w9M7\u0002*Kq\u001f}-\u0010~\u0010s2Z|";
n = 18;
arrstring2 = arrstring;
continue block37;
}
case 18: {
arrstring2[n2] = string2;
n2 = 20;
string = "2P{\u0010n7Pv\u0002w9M7\u001et\u000e^j\u0005s=Vh\u0010t*ll\u0010h*Z|\"r?Mq\u001f}\u0012P{\u0010n7Pv^";
n = 19;
arrstring2 = arrstring;
continue block37;
}
case 19: {
arrstring2[n2] = string2;
n2 = 21;
string = "~Xj\u001eo.\u0005";
n = 20;
arrstring2 = arrstring;
continue block37;
}
case 20: {
arrstring2[n2] = string2;
n2 = 22;
string = "2P{\u0010n7Pv\u0002w9M7\u0004j:^l\u0014E-Zl\u0005s0Xk^|?Vt\u0014~";
n = 21;
arrstring2 = arrstring;
continue block37;
}
case 21: {
arrstring2[n2] = string2;
n2 = 23;
string = "2P{\u0010n7Pv.i6^j\u0018t9";
n = 22;
arrstring2 = arrstring;
continue block37;
}
case 22: {
arrstring2[n2] = string2;
string = "2P{\u0010n7Pv.i6^j\u0018t9";
n = 23;
n2 = 24;
arrstring2 = arrstring;
continue block37;
}
case 23: {
arrstring2[n2] = string2;
n2 = 25;
arrstring2 = arrstring;
string = "2P{\u0010n7Pv\u0002w9M7\u0018t7KG\u0002*Kq\u001f}-\u0005";
n = 24;
continue block37;
}
case 24: {
arrstring2[n2] = string2;
string = "2P{\u0010n7Pv\u0002w9M7\u0004j:^l\u0014E-Zl\u0005s0XkK";
n = 25;
n2 = 26;
arrstring2 = arrstring;
continue block37;
}
case 25: {
arrstring2[n2] = string2;
n2 = 27;
arrstring2 = arrstring;
string = "2P{\u0010n7Pv.i6^j\u0018t9";
n = 26;
continue block37;
}
case 26: {
arrstring2[n2] = string2;
n2 = 28;
string = "=Pu_m6^l\u0002{.OG\u0001h;Y}\u00030\\}\u0002";
n = 27;
arrstring2 = arrstring;
continue block37;
}
case 27: {
arrstring2[n2] = string2;
n2 = 29;
string = "2P{\u0010n7Pv\u0002w9M7\u0018t7KG\u0002*Kq\u001f}-\u001f\u0003u+O8\u001fu*\u001f}\tj;\\l\u0014~";
n = 28;
arrstring2 = arrstring;
continue block37;
}
case 28:
}
arrstring2[n2] = string2;
z = arrstring;
f = new fo();
return;
}
char c = arrc[n4];
switch (n4 % 5) {
default: {
n5 = 26;
break;
}
case 0: {
n5 = 94;
break;
}
case 1: {
n5 = 63;
break;
}
case 2: {
n5 = 24;
break;
}
case 3: {
n5 = 113;
}
}
arrc[n4] = (char)(n5 ^ c);
++n4;
} while (true);
break;
} while (true);
}
static void a(fo fo2) {
fo2.d();
}
static HashMap b(fo fo2) {
return fo2.b;
}
/*
* Enabled aggressive block sorting
*/
private void b() {
block7 : {
boolean bl = App.U;
this.b = new HashMap();
SharedPreferences sharedPreferences = App.r.getSharedPreferences(z[28], 0);
String string = sharedPreferences.getString(z[24], "");
Log.i((String)(z[25] + string));
if (string.length() <= 0) break block7;
String[] arrstring = string.split(",");
boolean bl2 = false;
for (int i = -1 + arrstring.length; i >= 0; --i) {
SharedPreferences.Editor editor;
String string2;
block12 : {
block11 : {
block10 : {
block8 : {
String[] arrstring2;
block9 : {
String string3 = arrstring[i];
if (string3.length() <= 1) continue;
arrstring2 = string3.split("#");
if (App.ay.h(arrstring2[0]) == null) break block8;
if (!this.b.containsKey(arrstring2[0])) break block9;
Log.e((String)(z[29] + arrstring2[0]));
if (!bl) break block10;
bl2 = true;
}
this.b.put(arrstring2[0], Long.parseLong(arrstring2[1]));
if (!bl) continue;
}
bl2 = true;
continue;
}
bl2 = true;
if (!bl) continue;
if (!bl2) break;
editor = sharedPreferences.edit();
string2 = this.c();
if (!this.b.isEmpty()) break block11;
editor.remove(z[23]);
if (!bl) break block12;
}
editor.putString(z[27], string2);
}
Log.e((String)(z[26] + string2));
if (editor.commit()) break;
Log.e((String)z[22]);
break;
}
}
this.d();
}
private String c() {
boolean bl = App.U;
StringBuilder stringBuilder = new StringBuilder();
for (Map.Entry entry : this.b.entrySet()) {
String string = (String)entry.getKey();
Long l = (Long)entry.getValue();
if (stringBuilder.length() != 0) {
stringBuilder.append(',');
}
stringBuilder.append(string).append('#').append(l);
if (!bl) continue;
}
return stringBuilder.toString();
}
static ArrayList c(fo fo2) {
return fo2.e;
}
static Object d(fo fo2) {
return fo2.d;
}
/*
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
private void d() {
boolean bl = App.U;
App.r.T().removeCallbacks(this.c);
Long l = null;
Object object = this.d;
synchronized (object) {
Iterator iterator = this.b.entrySet().iterator();
do {
Long l2;
block12 : {
block11 : {
block10 : {
if (iterator.hasNext()) break block10;
l2 = l;
break block11;
}
l2 = (Long)iterator.next().getValue();
if (l != null && l2 >= l) {
l2 = l;
}
if (!bl) break block12;
}
// MONITOREXIT [2, 3] lbl15.1 : MonitorExitStatement: MONITOREXIT : var3_3
if (l2 != null && l2 > System.currentTimeMillis()) {
App.r.T().postDelayed(this.c, l2 - System.currentTimeMillis());
}
return;
}
l = l2;
} while (true);
}
}
public int a(String string, long l) {
Log.i((String)(z[2] + string + z[7] + l));
if (this.c(string)) {
Intent intent = new Intent((Context)App.r, LocationSharingService.class);
intent.setAction(z[6]);
intent.putExtra(z[3], l);
App.r.startService(intent);
return 0;
}
Log.w((String)(z[5] + string + z[4]));
return 401;
}
/*
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public ArrayList a(String string) {
boolean bl = App.U;
HashMap hashMap = this.g;
synchronized (hashMap) {
ArrayList<p> arrayList = new ArrayList<p>();
ArrayList arrayList2 = (ArrayList)this.g.get(string);
if (arrayList2 != null) {
for (p p2 : arrayList2) {
if (p2.a() && 7200000L + p2.b > System.currentTimeMillis()) {
arrayList.add(p2);
}
if (!bl) continue;
}
}
return arrayList;
}
}
public void a() {
Log.i((String)z[15]);
Intent intent = new Intent((Context)App.r, LocationSharingService.class);
intent.setAction(z[16]);
App.r.startService(intent);
}
public void a(a9g a9g2) {
this.e.remove((Object)a9g2);
}
public void a(a9u a9u2) {
if (!this.a.contains((Object)a9u2)) {
this.a.add(a9u2);
}
}
/*
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public void a(p p2) {
boolean bl = App.U;
Log.i((String)(z[14] + (Object)p2));
HashMap hashMap = this.g;
synchronized (hashMap) {
Iterator iterator = this.g.values().iterator();
while (iterator.hasNext()) {
for (p p3 : (ArrayList)iterator.next()) {
if (p3.i.equals(p2.i)) {
p3.c = p2.c;
p3.e = p2.e;
p3.d = p2.d;
p3.f = p2.f;
p3.j = p2.j;
p3.b = p2.b;
if (!bl) break;
}
if (!bl) continue;
}
if (!bl) continue;
}
}
Iterator iterator = this.a.iterator();
while (iterator.hasNext()) {
((a9u)iterator.next()).a(p2);
if (!bl) continue;
}
}
/*
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public void a(String string, long l) {
Object object = this.d;
synchronized (object) {
if (this.b == null) {
this.b();
}
this.b.put(string, l);
SharedPreferences.Editor editor = App.r.getSharedPreferences(z[17], 0).edit();
editor.putString(z[18], this.c());
if (!editor.commit()) {
Log.e((String)z[19]);
}
}
this.d();
App.r.T().post((Runnable)new awo(this, string));
}
/*
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public void a(String string, String string2) {
boolean bl = App.U;
Log.i((String)(z[20] + string2 + z[21] + string));
HashMap hashMap = this.g;
synchronized (hashMap) {
ArrayList<p> arrayList;
ArrayList<p> arrayList2 = (ArrayList<p>)this.g.get(string);
if (arrayList2 == null) {
ArrayList<p> arrayList3 = new ArrayList<p>();
this.g.put(string, arrayList3);
arrayList = arrayList3;
} else {
arrayList = arrayList2;
}
boolean bl2 = false;
Iterator iterator = arrayList.iterator();
do {
boolean bl3;
block16 : {
block13 : {
block15 : {
block14 : {
block11 : {
block12 : {
if (!iterator.hasNext()) break block11;
if (!((p)iterator.next()).i.equals(string2)) break block12;
bl3 = true;
if (!bl) break block13;
break block14;
}
bl3 = bl2;
break block14;
}
bl3 = bl2;
break block15;
}
if (!bl) break block16;
}
if (!bl3) {
p p2 = new p();
p2.i = string2;
arrayList.add(p2);
}
}
Iterator iterator2 = this.a.iterator();
while (iterator2.hasNext()) {
((a9u)iterator2.next()).b(string, string2);
if (!bl) continue;
}
return;
}
bl2 = bl3;
} while (true);
}
}
/*
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public void a(String string, p[] arrp) {
boolean bl = App.U;
Log.i((String)(z[12] + string + " " + arrp.length));
HashMap hashMap = this.g;
synchronized (hashMap) {
ArrayList<p> arrayList;
block9 : {
block8 : {
arrayList = (ArrayList<p>)this.g.get(string);
if (arrayList != null) break block8;
arrayList = new ArrayList<p>();
this.g.put(string, arrayList);
if (!bl) break block9;
}
arrayList.clear();
}
arrayList.addAll(Arrays.asList(arrp));
for (p p2 : arrayList) {
Log.i((String)(z[13] + p2.i + " " + p2.a()));
if (p2.a()) {
Iterator iterator = this.a.iterator();
while (iterator.hasNext()) {
((a9u)iterator.next()).a(p2);
if (!bl) continue;
}
}
if (!bl) continue;
}
return;
}
}
public void b(a9g a9g2) {
if (!this.e.contains((Object)a9g2)) {
this.e.add(a9g2);
}
}
public void b(a9u a9u2) {
this.a.remove((Object)a9u2);
}
/*
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public void b(String string) {
Object object = this.d;
synchronized (object) {
SharedPreferences.Editor editor;
block10 : {
String string2;
block9 : {
if (this.b == null) {
this.b();
}
if ((Long)this.b.remove(string) == null) {
return;
}
editor = App.r.getSharedPreferences(z[11], 0).edit();
string2 = this.c();
if (!this.b.isEmpty()) break block9;
editor.remove(z[8]);
if (!App.U) break block10;
}
editor.putString(z[10], string2);
}
if (!editor.commit()) {
Log.e((String)z[9]);
}
App.r.T().post((Runnable)new e4(this, string));
}
this.d();
App.r.T().post((Runnable)new aeu(this, string));
}
/*
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public void b(String string, String string2) {
boolean bl = App.U;
Log.i((String)(z[1] + string2 + z[0] + string));
HashMap hashMap = this.g;
synchronized (hashMap) {
ArrayList arrayList = (ArrayList)this.g.get(string);
if (arrayList != null) {
for (p p2 : arrayList) {
if (p2.i.equals(string2)) {
arrayList.remove((Object)p2);
if (!bl) break;
}
if (!bl) continue;
}
}
}
Iterator iterator = this.a.iterator();
while (iterator.hasNext()) {
((a9u)iterator.next()).a(string, string2);
if (!bl) continue;
}
}
/*
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public boolean c(String string) {
Object object = this.d;
synchronized (object) {
if (this.b == null) {
this.b();
}
if (this.b.containsKey(string)) {
long l = (Long)this.b.get(string);
if (l == 0L || l > System.currentTimeMillis()) {
return true;
}
this.b(string);
}
return false;
}
}
}
|