diff --git a/app/build.gradle b/app/build.gradle index df2cfb2..5e598ce 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -9,7 +9,7 @@ android { minSdkVersion 15 targetSdkVersion 24 versionCode 1 - versionName "1.1" + versionName "1.2" } buildTypes { release { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 5cb1091..0c0474c 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,7 +1,7 @@ android:versionCode="1" - android:versionName="1.1" > + android:versionName="1.2" > = 20000045){ + try { + Log.d(TAG, "Starting to bypass RootedDetector version 2.4.1 or higher"); + findAndHookMethod("ᵥ", lpparam.classLoader, "ʻ", android.content.Context.class, returnConstant(false)); // Check 1 + findAndHookMethod("ᵥ", lpparam.classLoader, "ˋ", android.content.Context.class, returnConstant(false)); // Check 2 + findAndHookMethod("ᵥ", lpparam.classLoader, "ˎ", android.content.Context.class, returnConstant(false)); // Check 3 + findAndHookMethod("ᵥ", lpparam.classLoader, "ˏ", android.content.Context.class, returnConstant(false)); // Check 4 + findAndHookMethod("ᵥ", lpparam.classLoader, "ᐝ", android.content.Context.class, returnConstant(false)); // Check 5 + Log.d(TAG, "RootedDetector bypassed!"); + } + catch (Throwable ex){ + Log.d(TAG, "RootedDetector failed!"); + } } - catch (Throwable e){ - Log.d(TAG, "Old RootedDetector failed, trying a new one!"); - try{ + else if(versionCode >= 20000042){ + try { + Log.d(TAG, "Starting to bypass RootedDetector version 2.3.5.894 or higher"); findAndHookMethod("Ϊ", lpparam.classLoader, "ʻ", android.content.Context.class, returnConstant(false)); // Check 1 findAndHookMethod("Ϊ", lpparam.classLoader, "ˋ", android.content.Context.class, returnConstant(false)); // Check 2 findAndHookMethod("Ϊ", lpparam.classLoader, "ˎ", android.content.Context.class, returnConstant(false)); // Check 3 findAndHookMethod("Ϊ", lpparam.classLoader, "ˏ", android.content.Context.class, returnConstant(false)); // Check 4 findAndHookMethod("Ϊ", lpparam.classLoader, "ᐝ", android.content.Context.class, returnConstant(false)); // Check 5 - Log.d(TAG, "New RootedDetector bypassed!"); + Log.d(TAG, "RootedDetector bypassed!"); } catch (Throwable ex){ - Log.d(TAG, "New RootedDetector failed!"); - + Log.d(TAG, "RootedDetector failed!"); + } + } + else{ + try { + Log.d(TAG, "Starting to bypass RootedDetector version lower than 2.3.5.894"); + findAndHookMethod("ʟ", lpparam.classLoader, "ˊ", returnConstant(false)); // Check 1 + findAndHookMethod("ʟ", lpparam.classLoader, "ˋ", returnConstant(false)); // Check 2 + findAndHookMethod("ʟ", lpparam.classLoader, "ˋ", android.content.Context.class, returnConstant(false)); // Check 3 + findAndHookMethod("ʟ", lpparam.classLoader, "ˎ", returnConstant(false)); // Check 4 + Log.d(TAG, "RootedDetector bypassed!"); + } + catch (Throwable e){ + Log.d(TAG, "RootedDetector failed, trying a new one!"); } } // EmulatorDetector - try{ - findAndHookMethod("Ӏ", lpparam.classLoader, "ˊ", returnConstant(false)); // Check 1 - findAndHookMethod("Ӏ", lpparam.classLoader, "ˋ", returnConstant(false)); // Check 2 - findAndHookMethod("Ӏ", lpparam.classLoader, "ˋ", android.content.Context.class, returnConstant(false)); // Check 3 - findAndHookMethod("Ӏ", lpparam.classLoader, "ˎ", returnConstant(false)); // Check 4 - findAndHookMethod("Ӏ", lpparam.classLoader, "ˎ", android.content.Context.class, returnConstant(false)); // Check 5 - Log.d(TAG, "Old EmulatorDetector bypassed!"); + if(versionCode >= 20000045){ + try { + Log.d(TAG, "Starting to bypass EmulatorDetector version 2.4.1 or higher"); + findAndHookMethod("ﺩ", lpparam.classLoader, "ʻ", android.content.Context.class, returnConstant(false)); // Check 1 + findAndHookMethod("ﺩ", lpparam.classLoader, "ˋ", android.content.Context.class, returnConstant(false)); // Check 2 + findAndHookMethod("ﺩ", lpparam.classLoader, "ˎ", android.content.Context.class, returnConstant(false)); // Check 3 + findAndHookMethod("ﺩ", lpparam.classLoader, "ˏ", android.content.Context.class, returnConstant(false)); // Check 4 + findAndHookMethod("ﺩ", lpparam.classLoader, "ᐝ", android.content.Context.class, returnConstant(false)); // Check 5 + Log.d(TAG, "EmulatorDetector bypassed!"); + } + catch (Throwable ex){ + Log.d(TAG, "EmulatorDetector failed!"); + } } - catch (Throwable e){ - Log.d(TAG, "Old EmulatorDetector failed, trying a new one!"); - try{ + else if(versionCode >= 20000042){ + try { + Log.d(TAG, "Starting to bypass EmulatorDetector version 2.3.5.894 or higher"); findAndHookMethod("Ӏ", lpparam.classLoader, "ʻ", android.content.Context.class, returnConstant(false)); // Check 1 findAndHookMethod("Ӏ", lpparam.classLoader, "ˋ", android.content.Context.class, returnConstant(false)); // Check 2 findAndHookMethod("Ӏ", lpparam.classLoader, "ˎ", android.content.Context.class, returnConstant(false)); // Check 3 findAndHookMethod("Ӏ", lpparam.classLoader, "ˏ", android.content.Context.class, returnConstant(false)); // Check 4 findAndHookMethod("Ӏ", lpparam.classLoader, "ᐝ", android.content.Context.class, returnConstant(false)); // Check 5 - Log.d(TAG, "New EmulatorDetector bypassed!"); + Log.d(TAG, "EmulatorDetector bypassed!"); } catch (Throwable ex){ - Log.d(TAG, "New EmulatorDetector failed!"); - + Log.d(TAG, "EmulatorDetector failed!"); + } + } + else{ + try { + Log.d(TAG, "Starting to bypass EmulatorDetector version lower than 2.3.5.894"); + findAndHookMethod("Ӏ", lpparam.classLoader, "ˊ", returnConstant(false)); // Check 1 + findAndHookMethod("Ӏ", lpparam.classLoader, "ˋ", returnConstant(false)); // Check 2 + findAndHookMethod("Ӏ", lpparam.classLoader, "ˋ", android.content.Context.class, returnConstant(false)); // Check 3 + findAndHookMethod("Ӏ", lpparam.classLoader, "ˎ", returnConstant(false)); // Check 4 + findAndHookMethod("Ӏ", lpparam.classLoader, "ˎ", android.content.Context.class, returnConstant(false)); // Check 5 + Log.d(TAG, "EmulatorDetector bypassed!"); + } + catch (Throwable e){ + Log.d(TAG, "EmulatorDetector failed!"); } } // DebuggerDetector (USB Debugging) - try{ - findAndHookMethod("ﺫ", lpparam.classLoader, "ˋ", android.content.Context.class, returnConstant(false)); // Check 1 - Log.d(TAG, "Old DebuggerDetector bypassed!"); + if(versionCode >= 20000045){ + try { + Log.d(TAG, "Starting to bypass DebuggerDetector version 2.4.1 or higher"); + findAndHookMethod("ﯦ", lpparam.classLoader, "ˎ", android.content.Context.class, returnConstant(false)); // Check 1 + Log.d(TAG, "DebuggerDetector bypassed!"); + } + catch (Throwable ex){ + Log.d(TAG, "DebuggerDetector failed!"); + } } - catch (Throwable e){ - Log.d(TAG, "Old DebuggerDetector failed, trying a new one!"); - try{ + else if(versionCode >= 20000042){ + try { + Log.d(TAG, "Starting to bypass DebuggerDetector version 2.3.5.894 or higher"); findAndHookMethod("ĭ", lpparam.classLoader, "ˎ", android.content.Context.class, returnConstant(false)); // Check 1 - Log.d(TAG, "New DebuggerDetector bypassed!"); + Log.d(TAG, "DebuggerDetector bypassed!"); } catch (Throwable ex){ - Log.d(TAG, "New DebuggerDetector failed!"); - + Log.d(TAG, "DebuggerDetector failed!"); + } + } + else{ + try { + Log.d(TAG, "Starting to bypass DebuggerDetector version lower than 2.3.5.894"); + findAndHookMethod("ﺫ", lpparam.classLoader, "ˋ", android.content.Context.class, returnConstant(false)); // Check 1 + Log.d(TAG, "DebuggerDetector bypassed!"); + } + catch (Throwable e){ + Log.d(TAG, "DebuggerDetector failed!"); } }