Dota显蓝插件的实现

不知显蓝可否算是作弊,以前是用的别人写的的一个DLL,注入进去后就可以实现显蓝,今天参考BR自己搞了个,测试了下bug还是很多,必须要开始游戏前开启,如果在游戏中开启很容易使魔兽死掉,但还是发上来吧。

#include "stdafx.h"
#include "manabar.h"
#include <WinBase.h>
#pragma comment(lib,"Version.lib")


#define ADDRESS LPVOID  // data
#define GADDRESS LPVOID // game call

GADDRESS g16FF24;   // 27B950 6f27B950
GADDRESS g16FF68;   // 334C00 6f334C00
GADDRESS a16FF64;   // 606860 6f606860
GADDRESS a16FF5C;   // 606370 6f606370
GADDRESS a16FF58;   // 35A740 6f35A740
GADDRESS a16FF20; // 32D300   6f
ADDRESS a16F088; //storm 0x191 #401
GADDRESS a2C7F10;
// as data
ADDRESS a16F08C; 
ADDRESS a16F004;
ADDRESS a1698A0;
ADDRESS a16F090;
ADDRESS a16F06C;
ADDRESS a16F070;
ADDRESS a3000AC; // should always be 1
ADDRESS a3000B0;

BYTE _backData_1[5];
BYTE _backData_2[5];

BYTE a16F008[0x80];

char* a164684 = "scaleFactor";

double a164A18 = 72; // ds:[00164A18]=72.00000000000000
double a164A10 = 0.0005000000237487257; //ds:[00164A10]=0.0005000000237487257
double a164A08 = 0.006000000052154064; //ds:[00164A08]=0.006000000052154064
double a1649D4 = 0.03000000; //ds:[004149D4]=0.03000000
double a1649D0 = 0.004000000;
double a1649CC = 0.3000000;

void __declspec(naked) f00152750()
{
	__asm
	{
		push    ebx
			mov     ebx, a16FF64    // ds:[0016FF64]=6F606860 (Game.6F606860)
			push    edi
			mov     edi, a16FF5C   // ds:[0016FF5C]=6F606370 (Game.6F606370)
			push    0
			push    0
			push    0
			xor     edx, edx
			mov     ecx, esi
			call    a16FF58         // ds:[0016FF58]=6F35A740 (Game.6F35A740)
			fld     a1649D4         // ds:[001649D4]=0.03000000
			push    0
			fstp    dword ptr [esi+0x58]
		xor     edx, edx
			mov     ecx, esi
			call    edi
			fld     a1649D0         // ds:[001649D0]=0.004000000
			push    0
			fstp    dword ptr [esi+0x5C]
		xor     edx, edx
			mov     ecx, esi
			call    edi
			fld     a1649CC         // ds:[001649CC]=0.3000000
			push    1
			sub     esp, 0x8
			fst     dword ptr [esp+0x4]
		xor     edx, edx
			fstp    dword ptr [esp]
		push    1
			mov     ecx, esi
			call    ebx
			mov     eax, dword ptr [esi]
		mov     eax, dword ptr [eax+0x64]
		pop     edi
			xor     edx, edx
			mov     ecx, esi
			pop     ebx
			jmp     eax
	}

}

void __declspec(naked) f001527C0()
{
	__asm{
		pop     a16F08C
			pop     eax
			add     eax, eax
			push    eax
			call    a16F088
			pushad
			mov     a16F004, eax
			mov     esi, a16F004
			add     esi, 0x158
			call    f0015275
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值