How do you find coordinates for gw 2? If anyone can please post links or explanation how to find those numbers.
.text:004BE8A0 ChCliContext__GetCharacterByAgentID proc near .text:004BE8A0 ; CODE XREF: sub_4D2530+98p .text:004BE8A0 ; sub_4E2A20+2Bp ... .text:004BE8A0 .text:004BE8A0 arg_0 = dword ptr 8 .text:004BE8A0 .text:004BE8A0 55 push ebp .text:004BE8A1 8B EC mov ebp, esp .text:004BE8A3 56 push esi .text:004BE8A4 8B F1 mov esi, ecx .text:004BE8A6 57 push edi .text:004BE8A7 8B 7D 08 mov edi, [ebp+arg_0] .text:004BE8AA 3B 7E 30 cmp edi, [esi+30h] .text:004BE8AD 73 0C jnb short loc_4BE8BB .text:004BE8AF 8B 46 28 mov eax, [esi+28h] .text:004BE8B2 8B 04 B8 mov eax, [eax+edi*4] .text:004BE8B5 5F pop edi .text:004BE8B6 5E pop esi .text:004BE8B7 5D pop ebp .text:004BE8B8 C2 04 00 retn 4 .text:004BE8BB ; --------------------------------------------------------------------------- .text:004BE8BB .text:004BE8BB loc_4BE8BB: ; CODE XREF: ChCliContext__GetCharacterByAgentID+Dj .text:004BE8BB 5F pop edi .text:004BE8BC 33 C0 xor eax, eax .text:004BE8BE 5E pop esi .text:004BE8BF 5D pop ebp .text:004BE8C0 C2 04 00 retn 4 .text:004BE8C0 ChCliContext__GetCharacterByAgentID endp .text:00566ED0 GdCliContext__GetGadgetByAgentID proc near .text:00566ED0 ; DATA XREF: .rdata:off_FB7C24o .text:00566ED0 .text:00566ED0 arg_0 = dword ptr 8 .text:00566ED0 .text:00566ED0 55 push ebp .text:00566ED1 8B EC mov ebp, esp .text:00566ED3 53 push ebx .text:00566ED4 56 push esi .text:00566ED5 8B 75 08 mov esi, [ebp+arg_0] .text:00566ED8 8B D9 mov ebx, ecx .text:00566EDA 57 push edi .text:00566EDB 85 F6 test esi, esi .text:00566EDD 75 14 jnz short loc_566EF3 .text:00566EDF 68 AE 00 00 00 push 0AEh .text:00566EE4 BA 40 7C FB 00 mov edx, offset a______GameGadg ; "..\\..\\..\\Game\\Gadget\\Cli\\GdCliCon"... .text:00566EE9 B9 C0 1B FA 00 mov ecx, offset aIndex ; "index" .text:00566EEE E8 6D 91 DA FF call assert .text:00566EF3 ; --------------------------------------------------------------------------- .text:00566EF3 .text:00566EF3 loc_566EF3: ; CODE XREF: GdCliContext__GetGadgetByIndex+Dj .text:00566EF3 8B 4B 1C mov ecx, [ebx+1Ch] .text:00566EF6 89 4D 08 mov [ebp+arg_0], ecx .text:00566EF9 39 0E cmp [esi], ecx .text:00566EFB 73 34 jnb short loc_566F31 .text:00566EFD 8D 49 00 lea ecx, [ecx+0] .text:00566F00 .text:00566F00 loc_566F00: ; CODE XREF: GdCliContext__GetGadgetByIndex+5Fj .text:00566F00 8B 3E mov edi, [esi] .text:00566F02 8D 47 01 lea eax, [edi+1] .text:00566F05 89 06 mov [esi], eax .text:00566F07 3B 7B 1C cmp edi, [ebx+1Ch] .text:00566F0A 72 17 jb short loc_566F23 .text:00566F0C 68 82 02 00 00 push 282h .text:00566F11 BA F4 4A F2 00 mov edx, offset aPCodeArenaCo_0 ; "p:\\code\\arena\\core\\Collections/Arra"... .text:00566F16 B9 B4 66 F2 00 mov ecx, offset aIndexM_count ; "index < m_count" .text:00566F1B E8 40 91 DA FF call assert .text:00566F1B ; --------------------------------------------------------------------------- .text:00566F20 8B db 8Bh ; ï .text:00566F21 4D db 4Dh ; M .text:00566F22 08 db 8 .text:00566F23 ; --------------------------------------------------------------------------- .text:00566F23 .text:00566F23 loc_566F23: ; CODE XREF: GdCliContext__GetGadgetByIndex+3Aj .text:00566F23 8B 43 14 mov eax, [ebx+14h] .text:00566F26 8B 04 B8 mov eax, [eax+edi*4] .text:00566F29 85 C0 test eax, eax .text:00566F2B 75 06 jnz short loc_566F33 .text:00566F2D 39 0E cmp [esi], ecx .text:00566F2F 72 CF jb short loc_566F00 .text:00566F31 .text:00566F31 loc_566F31: ; CODE XREF: GdCliContext__GetGadgetByIndex+2Bj .text:00566F31 33 C0 xor eax, eax .text:00566F33 .text:00566F33 loc_566F33: ; CODE XREF: GdCliContext__GetGadgetByIndex+5Bj .text:00566F33 5F pop edi .text:00566F34 5E pop esi .text:00566F35 5B pop ebx .text:00566F36 5D pop ebp .text:00566F37 C2 04 00 retn 4 .text:00566F37 GdCliContext__GetGadgetByIndex endp 00D76A70 GetAgentById proc near ; CODE XREF: sub_4DB810+4Ap .text:00D76A70 ; sub_4DE2B0+Bp ... .text:00D76A70 56 push esi .text:00D76A71 57 push edi .text:00D76A72 8B F1 mov esi, ecx .text:00D76A74 E8 B7 5B 00 00 call GetAgWorld .text:00D76A79 8B F8 mov edi, eax .text:00D76A7B 3B 77 44 cmp esi, [edi+44h] .text:00D76A7E 73 10 jnb short loc_D76A90 .text:00D76A80 8B 47 3C mov eax, [edi+3Ch] .text:00D76A83 8B 04 B0 mov eax, [eax+esi*4] .text:00D76A86 85 C0 test eax, eax .text:00D76A88 74 06 jz short loc_D76A90 .text:00D76A8A 8B 40 04 mov eax, [eax+4] .text:00D76A8D 5F pop edi .text:00D76A8E 5E pop esi .text:00D76A8F C3 retn .text:00D76A90 ; --------------------------------------------------------------------------- .text:00D76A90 .text:00D76A90 loc_D76A90: ; CODE XREF: GetAgentById+Ej .text:00D76A90 ; GetAgentById+18j .text:00D76A90 5F pop edi .text:00D76A91 33 C0 xor eax, eax .text:00D76A93 5E pop esi .text:00D76A94 C3 retn .text:00D76A94 GetAgentById endp
How do i use this i have experience only with cheat engine. Do i have to read long long book about programming?Quote:
If you are only interested in your own coordinates, i think that you can find them using mumble link. Position is located in the agent class.
ChCliContext->m_characters->m_agent->m_position
ChCliContext->m_players->m_character->m_agent->m_position
GdCliContext->m_gadgets->m_agent->m_position
AgWorld->m_agents->m_position
Code:.text:004BE8A0 ChCliContext__GetCharacterByAgentID proc near .text:004BE8A0 ; CODE XREF: sub_4D2530+98p .text:004BE8A0 ; sub_4E2A20+2Bp ... .text:004BE8A0 .text:004BE8A0 arg_0 = dword ptr 8 .text:004BE8A0 .text:004BE8A0 55 push ebp .text:004BE8A1 8B EC mov ebp, esp .text:004BE8A3 56 push esi .text:004BE8A4 8B F1 mov esi, ecx .text:004BE8A6 57 push edi .text:004BE8A7 8B 7D 08 mov edi, [ebp+arg_0] .text:004BE8AA 3B 7E 30 cmp edi, [esi+30h] .text:004BE8AD 73 0C jnb short loc_4BE8BB .text:004BE8AF 8B 46 28 mov eax, [esi+28h] .text:004BE8B2 8B 04 B8 mov eax, [eax+edi*4] .text:004BE8B5 5F pop edi .text:004BE8B6 5E pop esi .text:004BE8B7 5D pop ebp .text:004BE8B8 C2 04 00 retn 4 .text:004BE8BB ; --------------------------------------------------------------------------- .text:004BE8BB .text:004BE8BB loc_4BE8BB: ; CODE XREF: ChCliContext__GetCharacterByAgentID+Dj .text:004BE8BB 5F pop edi .text:004BE8BC 33 C0 xor eax, eax .text:004BE8BE 5E pop esi .text:004BE8BF 5D pop ebp .text:004BE8C0 C2 04 00 retn 4 .text:004BE8C0 ChCliContext__GetCharacterByAgentID endp .text:00566ED0 GdCliContext__GetGadgetByAgentID proc near .text:00566ED0 ; DATA XREF: .rdata:off_FB7C24o .text:00566ED0 .text:00566ED0 arg_0 = dword ptr 8 .text:00566ED0 .text:00566ED0 55 push ebp .text:00566ED1 8B EC mov ebp, esp .text:00566ED3 53 push ebx .text:00566ED4 56 push esi .text:00566ED5 8B 75 08 mov esi, [ebp+arg_0] .text:00566ED8 8B D9 mov ebx, ecx .text:00566EDA 57 push edi .text:00566EDB 85 F6 test esi, esi .text:00566EDD 75 14 jnz short loc_566EF3 .text:00566EDF 68 AE 00 00 00 push 0AEh .text:00566EE4 BA 40 7C FB 00 mov edx, offset a______GameGadg ; "..\\..\\..\\Game\\Gadget\\Cli\\GdCliCon"... .text:00566EE9 B9 C0 1B FA 00 mov ecx, offset aIndex ; "index" .text:00566EEE E8 6D 91 DA FF call assert .text:00566EF3 ; --------------------------------------------------------------------------- .text:00566EF3 .text:00566EF3 loc_566EF3: ; CODE XREF: GdCliContext__GetGadgetByIndex+Dj .text:00566EF3 8B 4B 1C mov ecx, [ebx+1Ch] .text:00566EF6 89 4D 08 mov [ebp+arg_0], ecx .text:00566EF9 39 0E cmp [esi], ecx .text:00566EFB 73 34 jnb short loc_566F31 .text:00566EFD 8D 49 00 lea ecx, [ecx+0] .text:00566F00 .text:00566F00 loc_566F00: ; CODE XREF: GdCliContext__GetGadgetByIndex+5Fj .text:00566F00 8B 3E mov edi, [esi] .text:00566F02 8D 47 01 lea eax, [edi+1] .text:00566F05 89 06 mov [esi], eax .text:00566F07 3B 7B 1C cmp edi, [ebx+1Ch] .text:00566F0A 72 17 jb short loc_566F23 .text:00566F0C 68 82 02 00 00 push 282h .text:00566F11 BA F4 4A F2 00 mov edx, offset aPCodeArenaCo_0 ; "p:\\code\\arena\\core\\Collections/Arra"... .text:00566F16 B9 B4 66 F2 00 mov ecx, offset aIndexM_count ; "index < m_count" .text:00566F1B E8 40 91 DA FF call assert .text:00566F1B ; --------------------------------------------------------------------------- .text:00566F20 8B db 8Bh ; ï .text:00566F21 4D db 4Dh ; M .text:00566F22 08 db 8 .text:00566F23 ; --------------------------------------------------------------------------- .text:00566F23 .text:00566F23 loc_566F23: ; CODE XREF: GdCliContext__GetGadgetByIndex+3Aj .text:00566F23 8B 43 14 mov eax, [ebx+14h] .text:00566F26 8B 04 B8 mov eax, [eax+edi*4] .text:00566F29 85 C0 test eax, eax .text:00566F2B 75 06 jnz short loc_566F33 .text:00566F2D 39 0E cmp [esi], ecx .text:00566F2F 72 CF jb short loc_566F00 .text:00566F31 .text:00566F31 loc_566F31: ; CODE XREF: GdCliContext__GetGadgetByIndex+2Bj .text:00566F31 33 C0 xor eax, eax .text:00566F33 .text:00566F33 loc_566F33: ; CODE XREF: GdCliContext__GetGadgetByIndex+5Bj .text:00566F33 5F pop edi .text:00566F34 5E pop esi .text:00566F35 5B pop ebx .text:00566F36 5D pop ebp .text:00566F37 C2 04 00 retn 4 .text:00566F37 GdCliContext__GetGadgetByIndex endp 00D76A70 GetAgentById proc near ; CODE XREF: sub_4DB810+4Ap .text:00D76A70 ; sub_4DE2B0+Bp ... .text:00D76A70 56 push esi .text:00D76A71 57 push edi .text:00D76A72 8B F1 mov esi, ecx .text:00D76A74 E8 B7 5B 00 00 call GetAgWorld .text:00D76A79 8B F8 mov edi, eax .text:00D76A7B 3B 77 44 cmp esi, [edi+44h] .text:00D76A7E 73 10 jnb short loc_D76A90 .text:00D76A80 8B 47 3C mov eax, [edi+3Ch] .text:00D76A83 8B 04 B0 mov eax, [eax+esi*4] .text:00D76A86 85 C0 test eax, eax .text:00D76A88 74 06 jz short loc_D76A90 .text:00D76A8A 8B 40 04 mov eax, [eax+4] .text:00D76A8D 5F pop edi .text:00D76A8E 5E pop esi .text:00D76A8F C3 retn .text:00D76A90 ; --------------------------------------------------------------------------- .text:00D76A90 .text:00D76A90 loc_D76A90: ; CODE XREF: GetAgentById+Ej .text:00D76A90 ; GetAgentById+18j .text:00D76A90 5F pop edi .text:00D76A91 33 C0 xor eax, eax .text:00D76A93 5E pop esi .text:00D76A94 C3 retn .text:00D76A94 GetAgentById endp
You should have programming experience before even thinking about reverse engineering.Quote:
How do i use this i have experience only with cheat engine. Do i have to read long long book about programming?