Spellforce-Spell-framework
Loading...
Searching...
No Matches
ASI Namespace Reference

Data Structures

class  FakeStack
 
struct  MemoryRegion
 MemoryRegion is used for rewriting code in a given memory block. More...
 
struct  Pointer
 

Enumerations

enum  SF_Version { SF_154 = 154 , SF_161 = 161 , SF_BETA = 162 }
 

Functions

bool BeginRewrite (MemoryRegion &mem_region)
 allows rewriting code in a given memory region by overwriting permissions for that memory region
 
bool EndRewrite (MemoryRegion &mem_region)
 ends rewriting by restoring old permissions in a given memory region
 
void SetGameBase ()
 
bool Init (HMODULE lib_module)
 required for everything to work... why?
 
bool __stdcall CheckSFVersion (SF_Version sf_version)
 check version of the game that was hooked into
 
int AddrOf (int offset)
 returns "real" virtual address of given memory offset
 
template<unsigned int Addr, typename ... Args>
void CallGlobalProc (Args... vals)
 
template<unsigned int Addr, typename Result , typename ... Args>
Result CallGlobalFunc (Args... vals)
 
template<unsigned int Addr, typename ... Args>
void CallGlobalCDeclProc (Args... vals)
 
template<unsigned int Addr, typename Result , typename ... Args>
Result CallGlobalCDeclFunc (Args... vals)
 
template<unsigned int Addr, typename ... Args>
void CallClassProc (ASI::Pointer _this, Args... vals)
 
template<unsigned int Addr, typename Result , typename ... Args>
Result CallClassFunc (ASI::Pointer _this, Args... vals)
 
template<unsigned int Offset, typename ... Args>
void CallClassVirtualProc (ASI::Pointer _this, Args... vals)
 
template<unsigned int Offset, typename Result , typename ... Args>
Result CallClassVirtualFunc (ASI::Pointer _this, Args... vals)
 
template<typename ... Args>
void CallAsClassProc (void *FPtr, ASI::Pointer _this, Args... vals)
 
template<typename Result , typename ... Args>
Result CallAsClassFunc (void *FPtr, ASI::Pointer _this, Args... vals)
 

Variables

unsigned int GAME_BASE
 
int WINDOW_OFFSET
 
unsigned int APPMAIN_OFFSET
 

Enumeration Type Documentation

◆ SF_Version

Enumerator
SF_154 
SF_161 
SF_BETA 

Definition at line 8 of file sf_asi.h.

Function Documentation

◆ AddrOf()

int ASI::AddrOf ( int offset)
inline

returns "real" virtual address of given memory offset

Definition at line 135 of file sf_asi.h.

Here is the caller graph for this function:

◆ BeginRewrite()

bool ASI::BeginRewrite ( MemoryRegion & mem_region)

allows rewriting code in a given memory region by overwriting permissions for that memory region

Definition at line 6 of file sf_asi.cpp.

Here is the caller graph for this function:

◆ CallAsClassFunc()

template<typename Result , typename ... Args>
Result ASI::CallAsClassFunc ( void * FPtr,
ASI::Pointer _this,
Args... vals )
inline

Definition at line 199 of file sf_asi.h.

◆ CallAsClassProc()

template<typename ... Args>
void ASI::CallAsClassProc ( void * FPtr,
ASI::Pointer _this,
Args... vals )
inline

Definition at line 193 of file sf_asi.h.

◆ CallClassFunc()

template<unsigned int Addr, typename Result , typename ... Args>
Result ASI::CallClassFunc ( ASI::Pointer _this,
Args... vals )
inline

Definition at line 170 of file sf_asi.h.

◆ CallClassProc()

template<unsigned int Addr, typename ... Args>
void ASI::CallClassProc ( ASI::Pointer _this,
Args... vals )
inline

Definition at line 164 of file sf_asi.h.

◆ CallClassVirtualFunc()

template<unsigned int Offset, typename Result , typename ... Args>
Result ASI::CallClassVirtualFunc ( ASI::Pointer _this,
Args... vals )
inline

Definition at line 185 of file sf_asi.h.

◆ CallClassVirtualProc()

template<unsigned int Offset, typename ... Args>
void ASI::CallClassVirtualProc ( ASI::Pointer _this,
Args... vals )
inline

Definition at line 178 of file sf_asi.h.

◆ CallGlobalCDeclFunc()

template<unsigned int Addr, typename Result , typename ... Args>
Result ASI::CallGlobalCDeclFunc ( Args... vals)
inline

Definition at line 158 of file sf_asi.h.

◆ CallGlobalCDeclProc()

template<unsigned int Addr, typename ... Args>
void ASI::CallGlobalCDeclProc ( Args... vals)
inline

Definition at line 152 of file sf_asi.h.

◆ CallGlobalFunc()

template<unsigned int Addr, typename Result , typename ... Args>
Result ASI::CallGlobalFunc ( Args... vals)
inline

Definition at line 146 of file sf_asi.h.

◆ CallGlobalProc()

template<unsigned int Addr, typename ... Args>
void ASI::CallGlobalProc ( Args... vals)
inline

Definition at line 140 of file sf_asi.h.

◆ CheckSFVersion()

bool __stdcall ASI::CheckSFVersion ( SF_Version sf_version)

check version of the game that was hooked into

Definition at line 54 of file sf_asi.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EndRewrite()

bool ASI::EndRewrite ( MemoryRegion & mem_region)

ends rewriting by restoring old permissions in a given memory region

Definition at line 14 of file sf_asi.cpp.

Here is the caller graph for this function:

◆ Init()

bool ASI::Init ( HMODULE lib_module)

required for everything to work... why?

Definition at line 35 of file sf_asi.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetGameBase()

void ASI::SetGameBase ( )

Definition at line 29 of file sf_asi.cpp.

Here is the caller graph for this function:

Variable Documentation

◆ APPMAIN_OFFSET

unsigned int ASI::APPMAIN_OFFSET

Definition at line 28 of file sf_asi.cpp.

◆ GAME_BASE

unsigned int ASI::GAME_BASE

Definition at line 26 of file sf_asi.cpp.

◆ WINDOW_OFFSET

int ASI::WINDOW_OFFSET

Definition at line 27 of file sf_asi.cpp.