Remove ceg
This commit is contained in:
parent
9974d0a71a
commit
aef820179c
@ -108,6 +108,7 @@ namespace Components
|
|||||||
Loader::Register(new Branding());
|
Loader::Register(new Branding());
|
||||||
Loader::Register(new RawMouse());
|
Loader::Register(new RawMouse());
|
||||||
Loader::Register(new Bullet());
|
Loader::Register(new Bullet());
|
||||||
|
Loader::Register(new Ceg());
|
||||||
|
|
||||||
Loader::Pregame = false;
|
Loader::Pregame = false;
|
||||||
}
|
}
|
||||||
|
@ -139,3 +139,4 @@ namespace Components
|
|||||||
#include "Modules/Branding.hpp"
|
#include "Modules/Branding.hpp"
|
||||||
#include "Modules/RawMouse.hpp"
|
#include "Modules/RawMouse.hpp"
|
||||||
#include "Modules/Bullet.hpp"
|
#include "Modules/Bullet.hpp"
|
||||||
|
#include "Modules/Ceg.hpp"
|
||||||
|
47
src/Components/Modules/Ceg.cpp
Normal file
47
src/Components/Modules/Ceg.cpp
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
#include <STDInclude.hpp>
|
||||||
|
|
||||||
|
namespace Components
|
||||||
|
{
|
||||||
|
Ceg::Ceg()
|
||||||
|
{
|
||||||
|
Utils::Hook::Signature signature(0x401000, 0x740000);
|
||||||
|
|
||||||
|
// Generic killer caller.
|
||||||
|
signature.add({
|
||||||
|
"\x56\x8B\x00\x24\x0c\x85\xF6\x7F\x0E", "xx?xxxxxx", [](char* address)
|
||||||
|
{
|
||||||
|
Utils::Hook::Set<BYTE>(address, 0xC3);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
signature.process();
|
||||||
|
|
||||||
|
// Some more generic obfuscation (mov al, 1; retn)
|
||||||
|
Utils::Hook::Set<DWORD>(0x471B20, 0xC301B0);
|
||||||
|
Utils::Hook::Set<DWORD>(0x43A070, 0xC301B0);
|
||||||
|
Utils::Hook::Set<DWORD>(0x4C8B30, 0xC301B0);
|
||||||
|
Utils::Hook::Set<DWORD>(0x469340, 0xC301B0);
|
||||||
|
|
||||||
|
// Other checks
|
||||||
|
Utils::Hook::Set<DWORD>(0x401000, 0xC301B0);
|
||||||
|
Utils::Hook::Set<DWORD>(0x45F8B0, 0xC301B0);
|
||||||
|
Utils::Hook::Set<DWORD>(0x46FAE0, 0xC301B0);
|
||||||
|
|
||||||
|
// Removed in 159 SP binaries
|
||||||
|
Utils::Hook::Nop(0x46B173, 9);
|
||||||
|
Utils::Hook::Nop(0x43CA16, 9);
|
||||||
|
Utils::Hook::Nop(0x505426, 9);
|
||||||
|
|
||||||
|
// Something useless that can be skipped
|
||||||
|
Utils::Hook::Nop(0x4BB671, 2);
|
||||||
|
Utils::Hook::Nop(0x40A54D, 2);
|
||||||
|
|
||||||
|
// Random checks scattered throughout the binary
|
||||||
|
Utils::Hook::Set<BYTE>(0x499F90, 0xC3);
|
||||||
|
Utils::Hook::Set<BYTE>(0x4FC700, 0xC3);
|
||||||
|
Utils::Hook::Set<BYTE>(0x4C4170, 0xC3);
|
||||||
|
Utils::Hook::Set<BYTE>(0x49E8C0, 0xC3);
|
||||||
|
Utils::Hook::Set<BYTE>(0x42DB00, 0xC3);
|
||||||
|
Utils::Hook::Set<BYTE>(0x4F4CF0, 0xC3);
|
||||||
|
}
|
||||||
|
}
|
10
src/Components/Modules/Ceg.hpp
Normal file
10
src/Components/Modules/Ceg.hpp
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
namespace Components
|
||||||
|
{
|
||||||
|
class Ceg : public Component
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Ceg();
|
||||||
|
};
|
||||||
|
}
|
@ -39,7 +39,7 @@ namespace Utils
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Hook::Signature::add(Hook::Signature::Container& container)
|
void Hook::Signature::add(const Hook::Signature::Container& container)
|
||||||
{
|
{
|
||||||
Hook::Signature::signatures.push_back(container);
|
Hook::Signature::signatures.push_back(container);
|
||||||
}
|
}
|
||||||
|
@ -23,7 +23,7 @@ namespace Utils
|
|||||||
Signature() : Signature(0x400000, 0x800000) {}
|
Signature() : Signature(0x400000, 0x800000) {}
|
||||||
|
|
||||||
void process();
|
void process();
|
||||||
void add(Container& container);
|
void add(const Container& container);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void* start;
|
void* start;
|
||||||
|
Loading…
Reference in New Issue
Block a user