Global Vars LoL

From UnKnoWnCheaTs Game Hacking Wiki
Jump to: navigation, search

Posted By: Y3t1y3t

Description

Some classes to grab those global vars of LoL. Offsets below.

Asm

.text:0027B9A5                 mov     esi, VarProxyData
.text:0027B9AB                 mov     ecx, esi        ; int
.text:0027B9AD                 fstp    [esp+334h+var_31C]
.text:0027B9B1                 movss   xmm0, [esp+334h+var_31C]
.text:0027B9B7                 push    4               ; int
.text:0027B9B9                 shufps  xmm0, xmm0, 0
.text:0027B9BD                 push    offset aWorld_view_pro ; "WORLD_VIEW_PROJECTION_MATRIX"
.text:0027B9C2                 movaps  [esp+33Ch+var_2C0], xmm0
.text:0027B9C7                 call    GetVar

Var


    template<class _class>
    class Var
    {
    public:
        _class Get( void );
    };

    template <class _class>
    _class Var<_class>::Get( void )
    {
        return *reinterpret_cast<_class*>( DWORD( this ) + 0xC );
    }

VarProxyData

h:

    class VarProxyData
    {
    public:

        template<class _class>
        Var<_class>* ProvideVar( const std::string& key );

        static VarProxyData* Instance( void );
    };

    template <class _class>
    Var<_class>* VarProxyData::ProvideVar( const std::string& key )
    {
        auto fn = reinterpret_cast< Var<_class>*( __thiscall* )( const void*, const char*, size_t ) >( gOffsetManager->GetVar );
        return fn( this, key.c_str(), sizeof( _class ) );
    }

cpp:

    VarProxyData* VarProxyData::Instance( void )
    {
        return *reinterpret_cast<VarProxyData**>( gOffsetManager->VarProxyData );
    }

Example

auto matrix = VarProxyData::Instance()->ProvideVar<D3DMATRIX*>( "WORLD_VIEW_PROJECTION_MATRIX" )->Get(); // Used for w2s

Offsets

6.19.16_09_15_21_03

GetVar = 0x002a88a0 -> 8B 44 24 04 83 EC 10 53 8B D9
VarProxyData = 0x013b7b74 -> 8B 0D ? ? ? ? 33 FF 89 4C 24 20 + 0x2

Credits

GameObject Array Matrixes Stuff by can1357