From 30b48c6677acdd3521f2b8b076696b40e7de62c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=99=BD=E6=B1=A0?= <98259561+whitechi73@users.noreply.github.com> Date: Wed, 31 Jan 2024 12:30:48 +0800 Subject: [PATCH] `Shamrock`: bypass shamrock detection --- xposed/src/main/cpp/clover.cpp | 4 +++- .../java/moe/fuqiuluo/qqinterface/servlet/GProSvc.kt | 12 ++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 xposed/src/main/java/moe/fuqiuluo/qqinterface/servlet/GProSvc.kt diff --git a/xposed/src/main/cpp/clover.cpp b/xposed/src/main/cpp/clover.cpp index 7168a46..dadb863 100644 --- a/xposed/src/main/cpp/clover.cpp +++ b/xposed/src/main/cpp/clover.cpp @@ -138,10 +138,12 @@ char * __cdecl my_strstr(const char *lhs, const char *rhs) { } int fake_memcmp(const void* __lhs, const void* __rhs, size_t __n) { - if (my_strstr((const char*) __rhs, "shamrock")) { + if (my_strstr((const char*) __rhs, "shamrock") && my_strstr((const char*) __lhs, "shamrock")) { if (backup_memcmp(__lhs, __rhs, __n) == 0) { // 底层广播判断 return 0; + } else { + LOGI("[Shamrock] QQ好像正在寻找Shamrock"); } return -1; } diff --git a/xposed/src/main/java/moe/fuqiuluo/qqinterface/servlet/GProSvc.kt b/xposed/src/main/java/moe/fuqiuluo/qqinterface/servlet/GProSvc.kt new file mode 100644 index 0000000..9fd751f --- /dev/null +++ b/xposed/src/main/java/moe/fuqiuluo/qqinterface/servlet/GProSvc.kt @@ -0,0 +1,12 @@ +package moe.fuqiuluo.qqinterface.servlet + +import com.tencent.mobileqq.qqguildsdk.api.IGPSService + +internal object GProSvc: BaseSvc() { + + + fun getSelfTinyId(): Long { + val service = app.getRuntimeService(IGPSService::class.java, "all") + return service.selfTinyId.toLong() + } +} \ No newline at end of file