feat: 完善3.9.2.26已有的功能

This commit is contained in:
hugy 2023-05-25 15:30:27 +08:00
parent dccc997067
commit 581aacb8ce
4 changed files with 36 additions and 38 deletions

View File

@ -18,6 +18,19 @@
31.修改群昵称 31.修改群昵称
32.获取数据库句柄 32.获取数据库句柄
34.查询数据库 34.查询数据库
35.hook日志
36.关闭hook日志
40.转发消息 40.转发消息
44.退出登录 44.退出登录
46.联系人列表
47.获取群详情
48.获取解密图片
49.图片提取文字ocr
50.拍一拍
51.群消息置顶消息
52.群消息取消置顶
53.朋友圈首页
54.朋友圈下一页
55.获取联系人或者群名称 55.获取联系人或者群名称
56.获取消息附件(图片,视频,文件)
57.获取消息语音文件

View File

@ -344,6 +344,7 @@ void PrintLog(DWORD addr) {
char *ansi_message = new char[size + 1]; char *ansi_message = new char[size + 1];
memset(ansi_message, 0, size + 1); memset(ansi_message, 0, size + 1);
WideCharToMultiByte(CP_ACP, 0, w_msg, -1, ansi_message, size, 0, 0); WideCharToMultiByte(CP_ACP, 0, w_msg, -1, ansi_message, size, 0, 0);
spdlog::info("wechat log:{}", ansi_message);
delete[] w_msg; delete[] w_msg;
w_msg = NULL; w_msg = NULL;
delete[] ansi_message; delete[] ansi_message;

View File

@ -153,8 +153,8 @@ int MiscMgr::DoDownloadTask(ULONG64 msg_id) {
DWORD get_current_data_path_addr = base_addr_ + WX_GET_CURRENT_DATA_PATH_OFFSET; DWORD get_current_data_path_addr = base_addr_ + WX_GET_CURRENT_DATA_PATH_OFFSET;
DWORD free_app_msg_info_addr = base_addr_ + WX_FREE_APP_MSG_INFO_OFFSET; DWORD free_app_msg_info_addr = base_addr_ + WX_FREE_APP_MSG_INFO_OFFSET;
DWORD push_thumb_task_addr = base_addr_ + WX_PUSH_THUMB_TASK_OFFSET; DWORD push_thumb_task_addr = base_addr_ + WX_PUSH_THUMB_TASK_OFFSET;
DWORD video_mgr_addr = base_addr_ + WX_VIDEO_MGR_OFFSET;
DWORD download_video_image_addr = base_addr_ + WX_VIDEO_MGR_OFFSET;
WeChatString current_data_path; WeChatString current_data_path;
@ -255,22 +255,6 @@ int MiscMgr::DoDownloadTask(ULONG64 msg_id) {
memcpy(&chat_msg[0x19C], &w_thumb_path, sizeof(w_thumb_path)); memcpy(&chat_msg[0x19C], &w_thumb_path, sizeof(w_thumb_path));
memcpy(&chat_msg[0x1B0], &w_save_path, sizeof(w_save_path)); memcpy(&chat_msg[0x1B0], &w_save_path, sizeof(w_save_path));
memcpy(&chat_msg[0x29C], &temp, sizeof(temp)); memcpy(&chat_msg[0x29C], &temp, sizeof(temp));
// note the image has been downloaded and will not be downloaded again
// use low-level method
// this function does not work, need to modify chatmsg.
// if (type == 0x3E || type == 0x2B){
// __asm{
// PUSHAD
// PUSHFD
// CALL video_mgr_addr
// LEA ECX,chat_msg
// PUSH ECX
// MOV ECX,EAX
// CALL download_video_image_addr
// POPFD
// POPAD
// }
// }
__asm { __asm {
PUSHAD PUSHAD

View File

@ -4,7 +4,7 @@
#include <string> #include <string>
// snsDataMgr // snsDataMgr
#define WX_SNS_DATA_MGR_OFFSET 0xc39680 #define WX_SNS_DATA_MGR_OFFSET 0xc3a500
// chatRoomMgr // chatRoomMgr
#define WX_CHAT_ROOM_MGR_OFFSET 0x78d9d0 #define WX_CHAT_ROOM_MGR_OFFSET 0x78d9d0
// contactMgr // contactMgr
@ -12,13 +12,13 @@
// syncMgr // syncMgr
#define WX_SYNC_MGR_OFFSET 0xa87fd0 #define WX_SYNC_MGR_OFFSET 0xa87fd0
// preDownloadMgr // preDownloadMgr
#define WX_GET_PRE_DOWNLOAD_MGR_OFFSET 0x80f110 #define WX_GET_PRE_DOWNLOAD_MGR_OFFSET 0x80fe50
// chatMgr // chatMgr
#define WX_CHAT_MGR_OFFSET 0x792700 #define WX_CHAT_MGR_OFFSET 0x7931b0
// videoMgr // videoMgr
#define WX_VIDEO_MGR_OFFSET 0x829820 #define WX_VIDEO_MGR_OFFSET 0x82a560
// patMgr // patMgr
#define WX_PAT_MGR_OFFSET 0x931730 #define WX_PAT_MGR_OFFSET 0x932470
// searchContactMgr // searchContactMgr
#define WX_SEARCH_CONTACT_MGR_OFFSET 0xa6d860 #define WX_SEARCH_CONTACT_MGR_OFFSET 0xa6d860
// appMsgMgr // appMsgMgr
@ -38,8 +38,8 @@
//sns //sns
#define WX_SNS_GET_FIRST_PAGE_OFFSET 0x14e2140 #define WX_SNS_GET_FIRST_PAGE_OFFSET 0x14e36e0
#define WX_SNS_GET_NEXT_PAGE_OFFSET 0x14e21e0 #define WX_SNS_GET_NEXT_PAGE_OFFSET 0x14e3780
//chat room //chat room
#define WX_GET_CHAT_ROOM_DETAIL_INFO_OFFSET 0xbdef30 #define WX_GET_CHAT_ROOM_DETAIL_INFO_OFFSET 0xbdef30
@ -65,9 +65,9 @@
#define WX_FREE_CONTACT_OFFSET 0xea8800 #define WX_FREE_CONTACT_OFFSET 0xea8800
// wcpayinfo // wcpayinfo
#define WX_NEW_WCPAYINFO_OFFSET 0x7b2e60 #define WX_NEW_WCPAYINFO_OFFSET 0x7b3900
#define WX_FREE_WCPAYINFO_OFFSET 0x79c250 #define WX_FREE_WCPAYINFO_OFFSET 0x79cd00
#define WX_CONFIRM_RECEIPT_OFFSET 0x15e2c20 #define WX_CONFIRM_RECEIPT_OFFSET 0x15e41d0
//contact //contact
@ -86,13 +86,13 @@
// pushAttachTask // pushAttachTask
#define WX_PUSH_ATTACH_TASK_OFFSET 0x82bb40 #define WX_PUSH_ATTACH_TASK_OFFSET 0x82c880
#define WX_GET_MGR_BY_PREFIX_LOCAL_ID_OFFSET 0xbc11d0 #define WX_GET_MGR_BY_PREFIX_LOCAL_ID_OFFSET 0xbc11d0
#define WX_APP_MSG_INFO_OFFSET 0x7b3d20 #define WX_APP_MSG_INFO_OFFSET 0x7b3d20
#define WX_GET_APP_MSG_XML_OFFSET 0xe628a0 #define WX_GET_APP_MSG_XML_OFFSET 0xe628a0
#define WX_FREE_APP_MSG_INFO_OFFSET 0x79d900 #define WX_FREE_APP_MSG_INFO_OFFSET 0x79e3b0
#define WX_PUSH_THUMB_TASK_OFFSET 0x82ba40 #define WX_PUSH_THUMB_TASK_OFFSET 0x82c780
#define WX_DOWNLOAD_VIDEO_IMG_OFFSET 0xd46c30 #define WX_DOWNLOAD_VIDEO_IMG_OFFSET 0xd46c30
@ -100,8 +100,8 @@
// pat // pat
#define WX_SEND_PAT_MSG_OFFSET 0x1421940 #define WX_SEND_PAT_MSG_OFFSET 0x1422f30
#define WX_RET_OFFSET 0x1D58751 #define WX_RET_OFFSET 0x1D59DB1
//search hook //search hook
@ -131,9 +131,9 @@
//ocr //ocr
#define WX_INIT_OBJ_OFFSET 0x80a800 #define WX_INIT_OBJ_OFFSET 0x80b540
#define WX_OCR_MANAGER_OFFSET 0x80f270 #define WX_OCR_MANAGER_OFFSET 0x80ffc0
#define WX_DO_OCR_TASK_OFFSET 0x13da3e0 #define WX_DO_OCR_TASK_OFFSET 0x13db9a0
//storage //storage