Skocz do zawartości
1 maja :: Święto Pracy / 2 maja :: Dzień Flagi / 3 maja :: Święto Konstytucji

Wydobywanie netvarów/offsetów w IDA Pro - problem, pomocy


# CSH External VIP Project

Masz dosyć problemów z czynnikiem zaufania w CS2 lub notorycznymi banami?

Sprawdź CSH External VIP Project.


Więcej informacji  

Rekomendowane odpowiedzi

Cześć Wszystkim.

Mam problem z wydobywaniem netwarów w IDA Pro.

 

Napiszę najpierw co po kolei robię:

Chcę wyszukać offsetu do m_iAccountID.

Uruchamiam IDA Pro.

Otwieram client.dll z csgo/bin

Klikam  EDIT->SEGMENTS->REBASE PROGRAM

zmieniam ustawienia na te:

O81bstI.png

 

Szukam za pomocą stringu m_iAccountID, czyli View -> Open subviews -> Stings

klikam ctrl + f

Wpisuję m_iAccountID

Klikam dwa razy na m_iAccountID

Później szukam sub_......

Klikam dwa razy na sub_....

 

Wyskakuje mi takie coś:

82ed9a4415949.png

 

Czyli wnioskuję po tym:

 

fc483d70f83e1.png

 

że mój offset to: m_iAccountID = 0x1F8

 

a aktualnym offsetem dla m_iAccountID nie jest 0x1F8 jak wskazuje mi IDA, tylko 0x2FA8

Mógłby ktoś wskazać mi, co robię źle?

Dziękuję & Pozdrawiam!

Odnośnik do komentarza

A to teraz po tym ostatnim update większym nie jest tak, ze wszystkie offset dumpery nie działają lub złe offsety wyciągają?

bAim = Baim = Shot the Pelvis                      
Resolver = Dont shot the fakes and resolver the LBY Breaking
Fake Walk = Slow Walk and Fake Angles
LBY Correction = Pastes       

ayypaste today: new resolver(bruteforce), new antiaim(also shit), fixed crashes(crashes anyway) and fixed autowall(still not working) 
Fake/Real yaw = Angles Fake YAW = No HitBox / Real Yaw = Hitbox

 

Odnośnik do komentarza

https://github.com/frk1/hazedumper

lub netvar managera spastujcie do cheata

szkoda waszego czasu i czasu w ogole jezeli masz to co update sprawdzac lol

 

Jakby to było takie proste z tym netvar managerem :D

a na githubie tego hazedumpera nie ma offestów, których mi trzeba, tj:

m_vecMins

m_vecMaxs

 

ew. możesz mi dać namiary, skąd spastować netvar managera


Edytowane przez ViruS.
Odnośnik do komentarza

https://github.com/frk1/hazedumper

lub netvar managera spastujcie do cheata

szkoda waszego czasu i czasu w ogole jezeli masz to co update sprawdzac lol

 

Tylko, że warto wiedzieć jak coś działa i dlaczego, używając gotowców nic się nie nauczysz, a sprawdzenie tego to i tak kilka min roboty.

 

 

Co do tematu. Żeby dostać właściwy offset musisz dodać: 

off= m_AttributeManager + m_Item + m_iAccountID

 

czyli odpowiednio:

0x2D70+0x40+0x1F8=0x2FA8


Edytowane przez mactec
Odnośnik do komentarza

Tylko, że warto wiedzieć jak coś działa i dlaczego, używając gotowców nic się nie nauczysz, a sprawdzenie tego to i tak kilka min roboty.

 

 

Co do tematu. Żeby dostać właściwy offset musisz dodać: 

off= m_AttributeManager + m_Item + m_iAccountID

 

czyli odpowiednio:

0x2D70+0x40+0x1F8=0x2FA8

i czego to go uczy? ze po wyszukaniu stringa i kliknieciu na xref pokaze mu sie offset pod nim?

do pojedynczych ok, jak sie komus chce 30 offsetow tak sprawdzac to szanuje

Odnośnik do komentarza

i czego to go uczy? ze po wyszukaniu stringa i kliknieciu na xref pokaze mu sie offset pod nim?

 

RE/jak jest zbudowany Source Engine. Akurat znalezienie netvarów jest banalnie proste.

 

Powodzenia z takim podejściem w pisaniu czegoś do mniej popularnych gier ;v, szkoda tylko, że wtedy wszystkiego na necie nie znajdziesz.

Odnośnik do komentarza

Tylko, że warto wiedzieć jak coś działa i dlaczego, używając gotowców nic się nie nauczysz, a sprawdzenie tego to i tak kilka min roboty.

 

 

Co do tematu. Żeby dostać właściwy offset musisz dodać: 

off= m_AttributeManager + m_Item + m_iAccountID

 

czyli odpowiednio:

0x2D70+0x40+0x1F8=0x2FA8

 

Mactec, skąd 2D70?

 

m_AttributeManager:

3d35df207fab3.png

 

czyli 1148, nie 2D70

 

co do m_Item mam:

beccb7c694059.png

 

Czyli zgadza się 0x40

Odnośnik do komentarza

tak, dowie sie jak jest zbudowany zwracajac uwage na linijke ze stringiem i wartoscia pod nim, czytasz co piszesz w ogole

 

Od czegoś musi zacząć geniuszu... Lepsze to niż bezmyślne kopiowanie z neta.

 

 

 

Jakim ch*** pokazuje mi 1148 ?!:

3d35df207fab3.png

 

ida wtf?!

W złym miejscu patrzysz, jest kilka odniesień do m_AttributeManager, zobacz DT_EconEntity

Odnośnik do komentarza

sprobuj 2 xref bo nie wiem

 

Już pokazuje prawidłowo, 2D70.

Dzięki chłopaki za pomoc!

Btw. mam jeszcze tylko jedno pytanie.

 

Żeby uzyskać m_iAccountID musiałem dodać do siebie wartości z: 

off= m_AttributeManager + m_Item + m_iAccountID

 

czyli muszę robić analogicznie z innymi netvarami?

Jak chcę offset do przykładowo m_vecMins

to muszę dodać do siebie:

 

m_AttributeManager + m_Item + m_vecMins?

Odnośnik do komentarza

Już pokazuje prawidłowo, 2D70.

Dzięki chłopaki za pomoc!

Btw. mam jeszcze tylko jedno pytanie.

 

Żeby uzyskać m_iAccountID musiałem dodać do siebie wartości z: 

off= m_AttributeManager + m_Item + m_iAccountID

 

czyli muszę robić analogicznie z innymi netvarami?

Jak chcę offset do przykładowo m_vecMins

to muszę dodać do siebie:

 

m_AttributeManager + m_Item + m_vecMins?

nie, trzeba je dodawac zaleznie od tabeli w jakiej sie znajduja, w czym ida ci nie pomoze juz

w przypadku skinchangera tak

 

vec mins to CHYBA icollision+vecmins


Edytowane przez krzychu1
Odnośnik do komentarza

 

Z tego SDK :

#ifndef CLIENT_DLL

	BEGIN_DATADESC_NO_BASE( CCollisionProperty )

//		DEFINE_FIELD( m_pOuter, FIELD_CLASSPTR ),
		DEFINE_GLOBAL_FIELD( m_vecMins, FIELD_VECTOR ),
		DEFINE_GLOBAL_FIELD( m_vecMaxs, FIELD_VECTOR ),
		DEFINE_KEYFIELD( m_nSolidType, FIELD_CHARACTER, "solid" ),
		DEFINE_FIELD( m_usSolidFlags, FIELD_SHORT ),
		DEFINE_FIELD( m_nSurroundType, FIELD_CHARACTER ),
		DEFINE_FIELD( m_flRadius, FIELD_FLOAT ),
		DEFINE_FIELD( m_triggerBloat, FIELD_CHARACTER ),
		DEFINE_FIELD( m_vecSpecifiedSurroundingMins, FIELD_VECTOR ),
		DEFINE_FIELD( m_vecSpecifiedSurroundingMaxs, FIELD_VECTOR ),
		DEFINE_FIELD( m_vecSurroundingMins, FIELD_VECTOR ),
		DEFINE_FIELD( m_vecSurroundingMaxs, FIELD_VECTOR ),
//		DEFINE_FIELD( m_Partition, FIELD_SHORT ),
//		DEFINE_PHYSPTR( m_pPhysicsObject ),

	END_DATADESC()

#else

//-----------------------------------------------------------------------------
// Prediction
//-----------------------------------------------------------------------------
BEGIN_PREDICTION_DATA_NO_BASE( CCollisionProperty )

	DEFINE_PRED_FIELD( m_vecMins, FIELD_VECTOR, FTYPEDESC_INSENDTABLE ),
	DEFINE_PRED_FIELD( m_vecMaxs, FIELD_VECTOR, FTYPEDESC_INSENDTABLE ),
	DEFINE_PRED_FIELD( m_nSolidType, FIELD_CHARACTER, FTYPEDESC_INSENDTABLE ),
	DEFINE_PRED_FIELD( m_usSolidFlags, FIELD_SHORT, FTYPEDESC_INSENDTABLE ),
	DEFINE_PRED_FIELD( m_triggerBloat, FIELD_CHARACTER, FTYPEDESC_INSENDTABLE ),

END_PREDICTION_DATA()

#endif

Czy BEGIN_DATADESC_NO_BASE( CCollisionProperty ) oznacza, że chodzi o CCollisionProperty w IDA?

 

bo mam jeszcze m_collisionMins i inne pochodne..

Odnośnik do komentarza
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Regulamin. Polityka prywatności