-
Автор темы
- #1
NETVARS:
Signature for: FindAndStoreDataMaps();
signatures:
// classes by sig.
m_move_helper = pattern::find( m_client_dll, XOR( "8B 0D ? ? ? ? 8B 45 ? 51 8B D4 89 02 8B 01" ) ).add( 0x2 ).get< IMoveHelper* >( 2 );
m_cl = pattern::find( m_engine_dll, XOR("B9 ? ? ? ? 56 FF 50 14 8B 34 85")).add(0x1).get< CGlobalState* >()->m_client_state;
m_game = pattern::find( m_engine_dll, XOR( "A1 ? ? ? ? B9 ? ? ? ? FF 75 08 FF 50 34" ) ).add( 0x1 ).get< CGame* >( );
m_render = pattern::find( m_engine_dll, XOR( "A1 ? ? ? ? B9 ? ? ? ? FF 75 0C FF 75 08 FF 50 0C" ) ).add( 0x1 ).get< CRender* >( );
m_shadow_mgr = pattern::find(m_client_dll, XOR("A1 ? ? ? ? FF 90 ? ? ? ? 6A 00 6A 00")).add(0x1).get().as< IClientShadowMgr* >();
m_view_render = pattern::find(m_client_dll, XOR("8B 0D ? ? ? ? 57 8B 01 FF 50 14 E8 ? ? ? ? 5F").add(0x2).get< CViewRender* >(2);
m_hud = pattern::find(m_client_dll, XOR("B9 ? ? ? ? E8 ? ? ? ? 8B 5D 08").add(0x1).get().as< CHud* >();
m_gamerules = pattern::find(m_client_dll, XOR("A1 ? ? ? ? 8B 0D ? ? ? ? 6A 00 68 ? ? ? C6")).add(0x1).get< C_CSGameRules* >();
m_beams = pattern::find(m_client_dll, XOR("8D 43 FC B9 ? ? ? ? 50 A1")).add(0x4).get< IViewRenderBeams* >();
m_mem_alloc = PE::GetExport( m_tier0_dll, HASH( "g_pMemAlloc" ) ).get< IMemAlloc* >( );
m_glow = *pattern::find(m_client_dll, XOR("0F 11 05 ? ? ? ? 83 C8 01")).add(0x3).as< CGlowObjectManager** >();
m_device = **pattern::find(m_shaderapidx9_dll, XOR("A1 ?? ?? ?? ?? 50 8B 08 FF 51 0C").add(0x1).as<IDirect3DDevice9***>();
m_input = pattern::find(m_client_dll, XOR("B9 ? ? ? ? F3 0F 11 04 24 FF 50 10")).add(0x1).get< CInput* >();
// classes by offset from virtual.
m_globals = util::get_method( m_client, CHLClient::INIT ).add( 0x1f ).get< CGlobalVarsBase* >( 2 );
m_client_mode = util::get_method( m_client, CHLClient::HUDPROCESSINPUT ).add( 0x5 ).get< IClientMode* >( 2 );
// functions.
DisablePostProcess = pattern::find( m_client_dll, XOR( "80 3D ? ? ? ? ? 53 56 57 0F 85" ) ).add( 0x2 );
ReportHit = pattern::find( m_client_dll, XOR( "53 56 57 8B F9 33 F6 8B 5F 1C 84 DB 74" ) .as< uintptr_t >( );
IsBreakableEntity = pattern::find( m_client_dll, XOR( "55 8B EC 51 56 8B F1 85 F6 74 68" ) ).as< IsBreakableEntity_t >( );
SetAbsVelocity = pattern::find( m_client_dll, XOR( "55 8B EC 83 E4 F8 83 EC 0C 53 56 57 8B 7D 08 8B F1 F3" ) );
AngleMatrix = pattern::find( m_client_dll, XOR( "E8 ? ? ? ? 8B 07 89 46 0C" ) ).rel32( 0x1 ).as< AngleMatrix_t >( );
ComputeHitboxSurroundingBox = pattern::find( m_client_dll, XOR( "E9 ? ? ? ? 32 C0 5D" ) ).rel32( 0x1 );
GetSequenceActivity = pattern::find( m_client_dll, XOR( "55 8B EC 53 8B 5D 08 56 8B F1 83" ) );
LoadFromBuffer = pattern::find( m_client_dll, XOR( "E8 ? ? ? ? 88 44 24 0F 8B 56 FC" ) ).rel32( 0x1 ).as< LoadFromBuffer_t >( );
ServerRankRevealAll = pattern::find( m_client_dll, XOR( "55 8B EC 8B 0D ? ? ? ? 68" ) ).as< ServerRankRevealAll_t >( );
TEFireBullets = util::GetVirtualTablePointer( XOR( "client.dll" ), XOR( "C_TEFireBullets" ) );
ClearNotices = pattern::find( m_client_dll, XOR( "E8 ? ? ? ? 68 ? ? ? ? B9 ? ? ? ? E8 ? ? ? 8B F0 85 F6 74 19" ) ).rel32< ClearNotices_t >( 0x1 );
GetShotgunSpread = pattern::find( m_client_dll, XOR( "E8 ? ? ? ? EB 38 83 EC 08" ) ).rel32< GetShotgunSpread_t >( 1 );
MD5_PseudoRandom = pattern::find(m_client_dll, XOR("55 8B EC 83 E4 F8 83 EC 70 6A")).as< MD5_PseudoRandom_t >();
SetAbsAngles = pattern::find(m_client_dll, XOR("55 8B EC 83 E4 F8 83 EC 64 53"));
InvalidateBoneCache = pattern::find(m_client_dll, XOR("80 ? ? ? ? ? ? 74 16 A1 ? ? ? ? 48 C7 ? ? ? ? ? ? ? ? 89 ? ? ? ? ? C3"));
LockStudioHdr = pattern::find(m_client_dll, XOR("55 8B EC 51 53 8B D9 56 57 8D ? ? ? ? ? FF"));
CL_Move = pattern::find(m_engine_dll, XOR("55 8B EC 81 EC 64 01 00 00 53 56 8A F9")).as<uintptr_t>();
SetAbsOrigin = pattern::find(m_client_dll, XOR("55 8B EC 83 E4 F8 51 53 56 57 8B F1"));
HasC4 = pattern::find(m_client_dll, XOR("56 8B F1 85 F6 74 31"));
InvalidatePhysicsRecursive = pattern::find(m_client_dll, XOR("55 8B EC 83 E4 F8 83 EC 0C 53 8B 5D 08 8B"));
ShowAndUpdateSelection = pattern::find(m_client_dll, XOR("E8 ? ? ? ? A1 ? ? ? ? F3 0F 10 40 ? C6 83")).rel32(0x1).as< ShowAndUpdateSelection_t >();
IsReady = pattern::find(m_client_dll, XOR("55 8B EC 83 E4 F8 8B 4D 08 BA ? ? ? ? E8 ? ? ? ? 85 C0 75 12")).as< IsReady_t >();
GetEconItemView = pattern::find(m_client_dll, XOR("8B 81 ? ? ? ? 81 C1 ? ? ? ? FF 50 04 83 C0 40 C3")).as< GetEconItemView_t >();
GetStaticData = pattern::find(m_client_dll, XOR("55 8B EC 51 53 8B D9 8B 0D ? ? ? ? 56 57 8B B9")).as< GetStaticData_t >();
SmokeCount = pattern::find(m_client_dll, XOR("A3 ? ? ? ? 57 8B CB")).add(0x1).to();
BeamAlloc = pattern::find(m_client_dll, XOR("E8 ? ? ? ? 8B F0 85 F6 74 7C")).rel32< BeamAlloc_t >(0x1);
SetupBeam = pattern::find(m_client_dll, XOR("E8 ? ? ? ? 8B 07 33 C9")).rel32< SetupBeam_t >(0x1);
AddListenerEntity = pattern::find(m_client_dll, XOR("55 8B EC 8B 0D ? ? ? ? 33 C0 56 85 C9 7E 32 8B 55 08 8B 35")).as< AddListenerEntity_t >();
BoneAccessor = pattern::find(m_client_dll, XOR("8D 81 ? ? ? ? 50 8D 84 24")).add(0x2).to< size_t >();
AnimOverlay = pattern::find(m_client_dll, XOR("8B 87 ? ? ? ? 83 79 04 00 8B")).add(0x2).to< size_t >();
SpawnTime = pattern::find(m_client_dll, XOR("F3 0F 5C 88 ? ? ? 0F")).add(0x4).to< size_t >();
IsLocalPlayer = pattern::find(m_client_dll, XOR("74 ? 8A 83 ? ? ? 88")).add(0x4).to< size_t >();
PlayerAnimState = pattern::find(m_client_dll, XOR("89 87 ? ? ? ? 80 BF ? ? ? ? 74 07")).add(0x2).to< size_t >();
studioHdr = pattern::find(m_client_dll, XOR("8B 86 ? ? ? ? 89 44 24 10 85 C0")).add(0x2).to< size_t >();
UTIL_TraceLine = pattern::find(m_client_dll, XOR("55 8B EC 83 E4 F0 83 EC 7C"));
CTraceFilterSimple_vmt = UTIL_TraceLine.add(0x3D).to();
CTraceFilterSkipTwoEntities_vmt = pattern::find(m_client_dll, XOR("55 8B EC 81 EC BC 00 00 00 56 8B F1 8B 86")).add(0x226).to();
LastBoneSetupTime = InvalidateBoneCache.add(0x11).to<size_t>();
MostRecentModelBoneCounter = InvalidateBoneCache.add(0x1B).to<size_t>();
C++:
INIT_XOREDNETVAR_SPECIFIC( m_flOldSimulationTime, g_netvars.get( HASH( "DT_BaseEntity" ), HASH( "m_flSimulationTime" ) ) + sizeof( float ) );
INIT_XOREDNETVAR_SPECIFIC( m_pCoordFrame, g_netvars.get( HASH( "DT_BaseEntity" ), HASH( "m_CollisionGroup" ) ) - 0x30 );
INIT_XOREDNETVAR_SPECIFIC( m_CustomMaterials, g_netvars.get( HASH( "DT_BaseCombatWeapon" ), HASH( "m_Item" ) ) + 0x14 );
INIT_XOREDNETVAR_SPECIFIC( m_VisualsDataProcessors, g_netvars.get( HASH( "DT_BaseCombatWeapon" ), HASH( "m_Item" ) ) + 0x220 );
INIT_XOREDNETVAR_SPECIFIC( m_vecOldOrigin, 0x3A8 );
INIT_XOREDNETVAR_SPECIFIC( m_fEffects, 0xF0 );
INIT_XOREDNETVAR_SPECIFIC( m_bReadyToDraw, 0x274 );
INIT_XOREDNETVAR_SPECIFIC( m_vecAbsVelocity, 0x94 );
INIT_XOREDNETVAR_SPECIFIC( m_flFlashBangTime, 0xA2E8 );
INIT_XOREDNETVAR_SPECIFIC( m_PlayerCommand, 0x3298 );
INIT_XOREDNETVAR_SPECIFIC( m_pCurrentCommand, 0x3348 );
INIT_XOREDNETVAR_SPECIFIC( m_iEFlags, 0xE8 );
INIT_XOREDNETVAR_SPECIFIC( m_BoneCache, 0x2914);
INIT_XOREDNETVAR_SPECIFIC( m_CustomMaterials2, 0x9DC );
INIT_XOREDNETVAR_SPECIFIC( m_bCustomMaterialInitialized, 0x32DD );
INIT_XOREDNETVAR_SPECIFIC( m_nNextThinkTick, 0xFC);
INIT_XOREDNETVAR_SPECIFIC( m_iOcclusionFlags, 0xA28 );
INIT_XOREDNETVAR_SPECIFIC( m_iOcclusionFramecount, 0xA30 );
INIT_XOREDNETVAR_SPECIFIC(ReadableBones, 0x26AC);
INIT_XOREDNETVAR_SPECIFIC(WriteableBones, 0x26B0);
INIT_XOREDNETVAR_SPECIFIC(BoneArrayForWrite, 0x26A8);
matches = pattern::FindAll( g_csgo.m_client_dll, XOR( "55 8B EC 83 EC 08 53 8B DA C6" ) );