From 86e41aef7f3eae2772e932be4ca7ba9386657cce Mon Sep 17 00:00:00 2001 From: gdlbo <41114720+gdlbo@users.noreply.github.com> Date: Mon, 15 Aug 2022 14:18:57 +0300 Subject: [PATCH] Crypt hook --- .../ru/vtosters/lite/encryption/EncryptProvider.java | 8 +++++--- .../api_commands/messages/MessagesSendApiCmd.smali | 7 +------ .../vk/im/engine/models/messages/MsgFromUser.smali | 3 +-- .../msg_list/entry/MsgContentBuilder.smali | 12 ++++++------ .../com/vk/im/ui/formatters/MsgBodyFormatter.smali | 2 +- 5 files changed, 14 insertions(+), 18 deletions(-) diff --git a/app/src/main/java/ru/vtosters/lite/encryption/EncryptProvider.java b/app/src/main/java/ru/vtosters/lite/encryption/EncryptProvider.java index 87164f77c..8186b2ec7 100644 --- a/app/src/main/java/ru/vtosters/lite/encryption/EncryptProvider.java +++ b/app/src/main/java/ru/vtosters/lite/encryption/EncryptProvider.java @@ -1,5 +1,7 @@ package ru.vtosters.lite.encryption; +import static ru.vtosters.lite.hooks.MessagesHook.injectOwnTextAll; + import android.util.Log; import android.util.Pair; @@ -58,11 +60,12 @@ public class EncryptProvider { try { for (IMProcessor processor : processors) { if ((processor.isUsed() || !processor.isPublic()) && processor.isEncrypted(msgBody) && (processor.isPublic() || getKeyForProcessor(processor, peer) != null)) - return "\uD83D\uDD12 " + processor.decode(msgBody, getKeyForProcessor(processor, peer)); + return "\uD83D\uDD12 " + injectOwnTextAll(processor.decode(msgBody, getKeyForProcessor(processor, peer))); } } catch (Exception e) { e.printStackTrace(); } + return msgBody; } @@ -84,9 +87,8 @@ public class EncryptProvider { return keyString.getBytes(); } - // This will use only the processor which was chosen in chat menu [that's why ID is needed, bruh] + // This will use only the processor which was chosen in chat menu public static String encryptMessage(MsgFromUser msg) { - String msgBody = getBody(msg); Log.d("EncryptProvider", "encryptMessage: msg = " + msg); diff --git a/smali/smali_classes3/com/vk/im/engine/internal/api_commands/messages/MessagesSendApiCmd.smali b/smali/smali_classes3/com/vk/im/engine/internal/api_commands/messages/MessagesSendApiCmd.smali index c0f0bd437..9254c4048 100644 --- a/smali/smali_classes3/com/vk/im/engine/internal/api_commands/messages/MessagesSendApiCmd.smali +++ b/smali/smali_classes3/com/vk/im/engine/internal/api_commands/messages/MessagesSendApiCmd.smali @@ -249,12 +249,7 @@ :goto_2 if-eqz v8, :cond_7 - .line 15 - invoke-virtual {p1}, Lcom/vk/im/engine/models/messages/MsgFromUser;->f()Ljava/lang/String; - - move-result-object v8 - - invoke-static {v8}, Lru/vtosters/lite/hooks/MessagesHook;->injectOwnText(Ljava/lang/String;)Ljava/lang/String; + invoke-static {p1}, Lru/vtosters/lite/encryption/EncryptProvider;->encryptMessage(Lcom/vk/im/engine/models/messages/MsgFromUser;)Ljava/lang/String; move-result-object v8 diff --git a/smali/smali_classes3/com/vk/im/engine/models/messages/MsgFromUser.smali b/smali/smali_classes3/com/vk/im/engine/models/messages/MsgFromUser.smali index 58fc102e0..3e4b924fa 100644 --- a/smali/smali_classes3/com/vk/im/engine/models/messages/MsgFromUser.smali +++ b/smali/smali_classes3/com/vk/im/engine/models/messages/MsgFromUser.smali @@ -672,8 +672,7 @@ iput-object v0, p0, Lcom/vk/im/engine/models/messages/MsgFromUser;->W:Ljava/lang/String; - .line 16 - invoke-virtual {p1}, Lcom/vk/im/engine/models/messages/MsgFromUser;->f()Ljava/lang/String; + invoke-static {p1}, Lru/vtosters/lite/encryption/EncryptProvider;->decryptMessage(Lcom/vk/im/engine/models/messages/MsgFromUser;)Ljava/lang/String; move-result-object v0 diff --git a/smali/smali_classes3/com/vk/im/ui/components/viewcontrollers/msg_list/entry/MsgContentBuilder.smali b/smali/smali_classes3/com/vk/im/ui/components/viewcontrollers/msg_list/entry/MsgContentBuilder.smali index 8bcc175c3..1a0eada51 100644 --- a/smali/smali_classes3/com/vk/im/ui/components/viewcontrollers/msg_list/entry/MsgContentBuilder.smali +++ b/smali/smali_classes3/com/vk/im/ui/components/viewcontrollers/msg_list/entry/MsgContentBuilder.smali @@ -302,11 +302,7 @@ .line 39 iget-object v3, p0, Lcom/vk/im/ui/components/viewcontrollers/msg_list/entry/MsgContentBuilder;->c:Lcom/vk/im/ui/components/viewcontrollers/msg_list/entry/MsgTextBuilder; - invoke-virtual {p1}, Lcom/vk/im/engine/models/messages/MsgFromUser;->f()Ljava/lang/String; - - move-result-object v4 - - invoke-static {v4}, Lru/vtosters/lite/hooks/MessagesHook;->injectOwnTextAll(Ljava/lang/String;)Ljava/lang/String; + invoke-static {p1}, Lru/vtosters/lite/encryption/EncryptProvider;->decryptMessage(Lcom/vk/im/engine/models/messages/MsgFromUser;)Ljava/lang/String; move-result-object v4 @@ -678,7 +674,11 @@ move-result-object v2 - invoke-static {v2}, Lru/vtosters/lite/hooks/MessagesHook;->injectOwnTextAll(Ljava/lang/String;)Ljava/lang/String; + invoke-virtual {p1}, Lcom/vk/im/engine/models/messages/NestedMsg;->t1()I + + move-result v3 + + invoke-static {v2, v3}, Lru/vtosters/lite/encryption/EncryptProvider;->decryptMessage(Ljava/lang/String;I)Ljava/lang/String; move-result-object v2 diff --git a/smali/smali_classes3/com/vk/im/ui/formatters/MsgBodyFormatter.smali b/smali/smali_classes3/com/vk/im/ui/formatters/MsgBodyFormatter.smali index f6b1c3c67..2b049cdc1 100644 --- a/smali/smali_classes3/com/vk/im/ui/formatters/MsgBodyFormatter.smali +++ b/smali/smali_classes3/com/vk/im/ui/formatters/MsgBodyFormatter.smali @@ -834,7 +834,7 @@ .line 23 :cond_0 - invoke-virtual {p1}, Lcom/vk/im/engine/models/messages/MsgFromUser;->f()Ljava/lang/String; + invoke-static {p1}, Lru/vtosters/lite/encryption/EncryptProvider;->decryptMessage(Lcom/vk/im/engine/models/messages/MsgFromUser;)Ljava/lang/String; move-result-object p1