1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
#include <windows.h>
#include "bscan.h"
int main()
{
BOOL (__cdecl * damage)(DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD);
float **meStruct;
DWORD meYOffset;
BOOL *objectValid;
DWORD **objectStructs;
DWORD objectHpOffset;
double *critical;
LPVOID unrandomizer;
int sectionSize = 0;
int sectionAddress = 0;
LPBYTE result;
while (1) {
result = bscan(sectionAddress, sectionSize, "285?5?5?5?5?5?E8????????83C41C");
if (!result) {
OutputDebugString("Failed to find damage pattern. Retrying...");
Sleep(1000);
} else
break;
}
damage = (result + 12 + *(DWORD *)(result + 8));
result = bscan((LPBYTE)damage, 30, "8B??24??8B");
if (!result) {
OutputDebugString("Failed to find objectValid pattern");
return 1;
} else
objectValid = *(DWORD **)(result + 7);
result = bscan(sectionAddress, sectionSize, "5?C35?6A2B");
if (!result) {
OutputDebugString("Failed to find objectStructs/objectHpOffset pattern");
return 1;
} else {
objectStructs = *(DWORD ***)(result - 10);
objectHpOffset = *(DWORD *)(result - 4) >> 2;
}
result = bscan(sectionAddress, sectionSize, "DB??????????DC??????????E8");
if (!result) {
OutputDebugString("Failed to find critical pattern");
return 1;
} else
critical = *(double **)(result + 8);
result = bscan(sectionAddress, sectionSize, "25FF7F0000");
if (!result) {
OutputDebugString("Failed to find unrandomizer pattern");
return 1;
} else
unrandomizer = (LPVOID)result;
result = bscan(sectionAddress, sectionSize, "5?5?FF????????????A1????????8B");
if (!result) {
OutputDebugString("Failed to find meStruct pattern");
return 1;
} else
meStruct = *(float ***)(result + 10);
result = bscan(sectionAddress, sectionSize, "D986????????E8????????8986????????EB");
if (!result) {
OutputDebugString("Failed to find meYOffset pattern");
return 1;
} else
meYOffset = *(DWORD *)(result + 2) >> 2;
return 1;
}
| |