a.smali
.class public Lcom/ss/android/downloadlib/f/a;
.super Ljava/lang/Object;
.source "AntiHijackUtils.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/ss/android/downloadlib/f/a$a;
}
.end annotation
# direct methods
.method public static a(Ljava/lang/String;Ljava/lang/String;)I
.registers 3
.prologue
.line 41
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_8
.line 42
const/4 v0, 0x5
.line 44
:goto_7
return v0
:cond_8
new-instance v0, Ljava/io/File;
invoke-direct {v0, p1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-static {p0, v0}, Lcom/ss/android/ttmd5/TTMd5;->a(Ljava/lang/String;Ljava/io/File;)I
move-result v0
goto :goto_7
.end method
.method public static a(Ljava/lang/String;)Ljava/lang/String;
.registers 2
.prologue
.line 30
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_8
.line 31
const/4 v0, 0x0
.line 33
:goto_7
return-object v0
:cond_8
new-instance v0, Ljava/io/File;
invoke-direct {v0, p0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
invoke-static {v0}, Lcom/ss/android/ttmd5/TTMd5;->a(Ljava/io/File;)Ljava/lang/String;
move-result-object v0
goto :goto_7
.end method
.method public static a()V
.registers 4
.prologue
.line 76
invoke-static {}, Lcom/ss/android/downloadlib/a/x;->i()Lorg/json/JSONObject;
move-result-object v0
const-string v1, "hook"
const/4 v2, 0x0
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->optInt(Ljava/lang/String;I)I
move-result v0
const/4 v1, 0x1
if-eq v0, v1, :cond_f
.line 87
:goto_e
return-void
.line 79
:cond_f
invoke-static {}, Lcom/ss/android/downloadlib/i;->a()Lcom/ss/android/downloadlib/i;
move-result-object v0
new-instance v1, Lcom/ss/android/downloadlib/f/b;
invoke-direct {v1}, Lcom/ss/android/downloadlib/f/b;-><init>()V
const-wide/16 v2, 0x2710
invoke-virtual {v0, v1, v2, v3}, Lcom/ss/android/downloadlib/i;->a(Ljava/lang/Runnable;J)V
goto :goto_e
.end method
.method public static a([Ljava/lang/Object;)V
.registers 9
.prologue
const/4 v4, 0x2
const/4 v2, 0x0
const/4 v1, 0x1
.line 124
invoke-static {}, Lcom/ss/android/downloadlib/a/x;->i()Lorg/json/JSONObject;
move-result-object v0
const-string v3, "hook"
invoke-virtual {v0, v3, v2}, Lorg/json/JSONObject;->optInt(Ljava/lang/String;I)I
move-result v0
if-eq v0, v1, :cond_10
.line 161
:cond_f
:goto_f
return-void
.line 127
:cond_10
aget-object v0, p0, v1
instance-of v0, v0, Ljava/lang/String;
if-eqz v0, :cond_f
aget-object v0, p0, v4
instance-of v0, v0, Landroid/content/Intent;
if-eqz v0, :cond_f
.line 128
aget-object v0, p0, v4
check-cast v0, Landroid/content/Intent;
.line 129
const-string v3, "android.intent.action.VIEW"
invoke-virtual {v0}, Landroid/content/Intent;->getAction()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_f
sget-object v3, Lcom/ss/android/socialbase/downloader/b/e;->a:Ljava/lang/String;
.line 130
invoke-virtual {v0}, Landroid/content/Intent;->getType()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_f
.line 131
invoke-static {}, Lcom/ss/android/socialbase/downloader/m/ax;->c()Z
move-result v3
if-eqz v3, :cond_55
.line 132
invoke-static {}, Lcom/ss/android/downloadlib/a/x;->i()Lorg/json/JSONObject;
move-result-object v0
const-string v2, "hook_vivo_arg"
const-string v3, "com.android.settings"
invoke-virtual {v0, v2, v3}, Lorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 133
const-string v2, "null"
invoke-virtual {v2, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-nez v2, :cond_f
.line 134
aput-object v0, p0, v1
goto :goto_f
.line 136
:cond_55
invoke-static {}, Lcom/ss/android/socialbase/downloader/m/ax;->d()Z
move-result v3
if-eqz v3, :cond_111
.line 137
invoke-static {}, Lcom/ss/android/downloadlib/a/x;->i()Lorg/json/JSONObject;
move-result-object v3
const-string v4, "hook_kllk_arg1"
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "com."
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
sget-object v6, Lcom/ss/android/socialbase/downloader/b/e;->c:Ljava/lang/String;
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
const-string v6, ".market"
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
invoke-virtual {v3, v4, v5}, Lorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
.line 138
const-string v4, "null"
invoke-virtual {v4, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-nez v4, :cond_8a
.line 139
aput-object v3, p0, v1
.line 141
:cond_8a
invoke-static {}, Lcom/ss/android/downloadlib/a/x;->i()Lorg/json/JSONObject;
move-result-object v3
const-string v4, "hook_kllk_arg2"
const-string v5, "com.android.browser"
invoke-virtual {v3, v4, v5}, Lorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
.line 142
invoke-static {}, Lcom/ss/android/downloadlib/a/x;->i()Lorg/json/JSONObject;
move-result-object v4
const-string v5, "hook_kllk_arg3"
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
const-string v7, "m.store."
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
sget-object v7, Lcom/ss/android/socialbase/downloader/b/e;->c:Ljava/lang/String;
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
const-string v7, "mobile.com"
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v6
invoke-virtual {v4, v5, v6}, Lorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
.line 143
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
sget-object v6, Lcom/ss/android/socialbase/downloader/b/e;->c:Ljava/lang/String;
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
const-string v6, "_extra_pkg_name"
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
invoke-virtual {v0, v5, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
.line 144
const-string v5, "refererHost"
invoke-virtual {v0, v5, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
.line 145
invoke-static {}, Lcom/ss/android/downloadlib/a/x;->i()Lorg/json/JSONObject;
move-result-object v5
const-string v6, "hook_kllk_arg4"
invoke-virtual {v5, v6, v2}, Lorg/json/JSONObject;->optInt(Ljava/lang/String;I)I
move-result v5
if-ne v5, v1, :cond_10f
.line 146
:goto_e4
if-eqz v1, :cond_f
.line 147
new-instance v1, Landroid/content/Intent;
invoke-direct {v1}, Landroid/content/Intent;-><init>()V
.line 148
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
sget-object v5, Lcom/ss/android/socialbase/downloader/b/e;->c:Ljava/lang/String;
invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
const-string v5, "_extra_pkg_name"
invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
.line 149
const-string v2, "refererHost"
invoke-virtual {v1, v2, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
.line 150
const-string v2, "android.intent.extra.INTENT"
invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent;
goto/16 :goto_f
:cond_10f
move v1, v2
.line 145
goto :goto_e4
.line 152
:cond_111
invoke-static {}, Lcom/ss/android/socialbase/downloader/m/ax;->a()Z
move-result v2
if-eqz v2, :cond_f
.line 153
invoke-static {}, Lcom/ss/android/downloadlib/a/x;->i()Lorg/json/JSONObject;
move-result-object v2
const-string v3, "hook_huawei_arg1"
const-string v4, "com.huawei.appmarket"
invoke-virtual {v2, v3, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
.line 154
const-string v3, "null"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_12d
.line 155
aput-object v2, p0, v1
.line 157
:cond_12d
const-string v1, "caller_package"
invoke-static {}, Lcom/ss/android/downloadlib/a/x;->i()Lorg/json/JSONObject;
move-result-object v2
const-string v3, "hook_huawei_arg2"
const-string v4, "com.huawei.appmarket"
invoke-virtual {v2, v3, v4}, Lorg/json/JSONObject;->optString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
goto/16 :goto_f
.end method
.method public static b(Ljava/lang/String;)Ljava/lang/String;
.registers 4
.prologue
const/4 v0, 0x0
.line 61
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_8
.line 72
:cond_7
:goto_7
return-object v0
.line 65
:cond_8
:try_start_8
invoke-static {}, Lcom/ss/android/downloadlib/a/x;->a()Landroid/content/Context;
move-result-object v1
invoke-virtual {v1}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v1
const/4 v2, 0x0
invoke-virtual {v1, p0, v2}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
move-result-object v1
.line 66
if-eqz v1, :cond_7
.line 67
iget-object v0, v1, Landroid/content/pm/ApplicationInfo;->sourceDir:Ljava/lang/String;
:try_end_19
.catch Ljava/lang/Exception; {:try_start_8 .. :try_end_19} :catch_1a
goto :goto_7
.line 69
:catch_1a
move-exception v1
goto :goto_7
.end method
.method static synthetic b()V
.registers 0
.prologue
.line 27
invoke-static {}, Lcom/ss/android/downloadlib/f/a;->c()V
return-void
.end method
.method private static c()V
.registers 7
.prologue
.line 93
:try_start_0
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x1a
if-ge v0, v1, :cond_32
.line 94
const-string v0, "android.app.ActivityManagerNative"
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
.line 95
const-string v1, "gDefault"
invoke-virtual {v0, v1}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field;
move-result-object v0
.line 100
:goto_12
const/4 v1, 0x1
invoke-virtual {v0, v1}, Ljava/lang/reflect/Field;->setAccessible(Z)V
.line 101
const/4 v1, 0x0
invoke-virtual {v0, v1}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
.line 102
const-string v1, "android.util.Singleton"
invoke-static {v1}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v1
.line 103
const-string v2, "mInstance"
invoke-virtual {v1, v2}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field;
move-result-object v1
.line 104
const/4 v2, 0x1
invoke-virtual {v1, v2}, Ljava/lang/reflect/Field;->setAccessible(Z)V
.line 105
invoke-virtual {v1, v0}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
.line 106
if-nez v2, :cond_3f
.line 121
:cond_31
:goto_31
return-void
.line 97
:cond_32
const-string v0, "android.app.ActivityManager"
invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
.line 98
const-string v1, "IActivityManagerSingleton"
invoke-virtual {v0, v1}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field;
move-result-object v0
goto :goto_12
.line 110
:cond_3f
const-string v3, "android.app.IActivityManager"
invoke-static {v3}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v3
.line 111
if-eqz v3, :cond_31
.line 114
new-instance v4, Lcom/ss/android/downloadlib/f/a$a;
const/4 v5, 0x0
invoke-direct {v4, v2, v5}, Lcom/ss/android/downloadlib/f/a$a;-><init>(Ljava/lang/Object;Lcom/ss/android/downloadlib/f/b;)V
.line 116
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/Thread;->getContextClassLoader()Ljava/lang/ClassLoader;
move-result-object v2
const/4 v5, 0x1
new-array v5, v5, [Ljava/lang/Class;
const/4 v6, 0x0
aput-object v3, v5, v6
invoke-static {v2, v5, v4}, Ljava/lang/reflect/Proxy;->newProxyInstance(Ljava/lang/ClassLoader;[Ljava/lang/Class;Ljava/lang/reflect/InvocationHandler;)Ljava/lang/Object;
move-result-object v2
.line 117
invoke-virtual {v1, v0, v2}, Ljava/lang/reflect/Field;->set(Ljava/lang/Object;Ljava/lang/Object;)V
:try_end_62
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_62} :catch_63
goto :goto_31
.line 119
:catch_63
move-exception v0
goto :goto_31
.end method