📄 stub.cpp
字号:
#include "stdafx.h"
#include "bgwnd.h"
#define FUNMAX 5
static DWORD FuncStable1=NULL;
static DWORD FuncStable2=NULL;
static DWORD FuncStable3=NULL;
static DWORD FuncStable4=NULL;
static DWORD FuncStable5=NULL;
static DWORD* FuncStable[FUNMAX]=
{
&FuncStable1,
&FuncStable2,
&FuncStable3,
&FuncStable4,
&FuncStable5
};
static CHAR* FuncStr[FUNMAX]=
{
"vSetDdrawflag",
"AlphaBlend",
"DllInitialize",
"GradientFill",
"TransparentBlt"
};
#pragma comment(linker, "/EXPORT:vSetDdrawflag@1=MyFunc1")
#pragma comment(linker, "/EXPORT:AlphaBlend@2=MyFunc2")
#pragma comment(linker, "/EXPORT:DllInitialize@3=MyFunc3")
#pragma comment(linker, "/EXPORT:GradientFill@4=MyFunc4")
#pragma comment(linker, "/EXPORT:TransparentBlt@5=MyFunc5")
void _declspec(naked) MyFunc1(void)
{
__asm PUSH EBP
__asm MOV EBP, ESP
__asm PUSH ECX
__asm POP ECX
__asm POP EBP
__asm JMP FuncStable1
};
void _declspec(naked) MyFunc2(void)
{
__asm PUSH EBP
__asm MOV EBP, ESP
__asm PUSH ECX
__asm POP ECX
__asm POP EBP
__asm JMP FuncStable2
};
void _declspec(naked) MyFunc3(void)
{
__asm PUSH EBP
__asm MOV EBP, ESP
__asm PUSH ECX
__asm POP ECX
__asm POP EBP
__asm JMP FuncStable3
};
void _declspec(naked) MyFunc4(void)
{
__asm PUSH EBP
__asm MOV EBP, ESP
__asm PUSH ECX
__asm POP ECX
__asm POP EBP
__asm JMP FuncStable4
};
void _declspec(naked) MyFunc5(void)
{
__asm PUSH EBP
__asm MOV EBP, ESP
__asm PUSH ECX
__asm POP ECX
__asm POP EBP
__asm JMP FuncStable5
};
CBGWnd g_bgwnd;
static BOOL bInQQ09=FALSE;
BOOL StartStub()
{
TCHAR szLib[MAX_PATH];
HINSTANCE hLib=NULL;
GetSystemDirectory(szLib,MAX_PATH);
_tcscat(szLib,_T("\\MSIMG32.dll"));
hLib=LoadLibrary(szLib);
if (NULL==hLib) return FALSE;
for (int i=0;i<FUNMAX;i++)
{
*FuncStable[i]=(DWORD)GetProcAddress(hLib,FuncStr[i]);
}
bInQQ09=(GetModuleHandle(_T("KernelUtil.dll")) && GetModuleHandle(_T("qq.exe")));
if (bInQQ09)
{
g_bgwnd.Init();
}
return TRUE;
}
void StopStub()
{
if (bInQQ09)
{
g_bgwnd.Delete();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -