CheckHook.smali
.class public Lcom/aliyun/security/yunceng/android/sdk/umid/CheckHook;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 29
const-string/jumbo v0, "yunceng"
invoke-static {v0}, Ljava/lang/System;->loadLibrary(Ljava/lang/String;)V
.line 30
return-void
.end method
.method public constructor <init>()V
.registers 1
.line 4
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 5
return-void
.end method
.method private native CheckHookByNative()Z
.end method
.method private b()Z
.registers 10
.line 12
const-string v0, "Xposed"
.line 14
.local v0, "xposed":Ljava/lang/String;
:try_start_2
new-instance v1, Ljava/lang/Exception;
const-string v2, ""
invoke-direct {v1, v2}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
.end local v0 # "xposed":Ljava/lang/String;
throw v1
:try_end_a
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_a} :catch_a
.line 15
.restart local v0 # "xposed":Ljava/lang/String;
:catch_a
move-exception v1
.line 16
.local v1, "e":Ljava/lang/Exception;
invoke-virtual {v1}, Ljava/lang/Exception;->getStackTrace()[Ljava/lang/StackTraceElement;
move-result-object v2
array-length v3, v2
const/4 v4, 0x0
const/4 v5, 0x0
:goto_12
if-ge v5, v3, :cond_27
aget-object v6, v2, v5
.line 17
.local v6, "frame":Ljava/lang/StackTraceElement;
invoke-virtual {v6}, Ljava/lang/StackTraceElement;->getClassName()Ljava/lang/String;
move-result-object v7
.line 18
.local v7, "cls":Ljava/lang/String;
const-string v8, "Xposed"
invoke-virtual {v7, v8}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v8
if-eqz v8, :cond_24
.line 19
const/4 v2, 0x1
return v2
.line 16
.end local v6 # "frame":Ljava/lang/StackTraceElement;
.end local v7 # "cls":Ljava/lang/String;
:cond_24
add-int/lit8 v5, v5, 0x1
goto :goto_12
.line 23
.end local v1 # "e":Ljava/lang/Exception;
:cond_27
return v4
.end method
# virtual methods
.method public a()Z
.registers 2
.line 8
invoke-direct {p0}, Lcom/aliyun/security/yunceng/android/sdk/umid/CheckHook;->b()Z
move-result v0
if-nez v0, :cond_f
invoke-direct {p0}, Lcom/aliyun/security/yunceng/android/sdk/umid/CheckHook;->CheckHookByNative()Z
move-result v0
if-eqz v0, :cond_d
goto :goto_f
:cond_d
const/4 v0, 0x0
goto :goto_10
:cond_f
:goto_f
const/4 v0, 0x1
:goto_10
return v0
.end method