My Old ESP
[highlight=ASM]
.text:10007A70 GameInfo__ESP proc near ; CODE XREF: PresentCallBack+8B1p
.text:10007A70
.text:10007A70 var_3C = dword ptr -3Ch
.text:10007A70 var_38 = dword ptr -38h
.text:10007A70 var_18 = dword ptr -18h
.text:10007A70 var_14 = dword ptr -14h
.text:10007A70 var_C = dword ptr -0Ch
.text:10007A70 var_8 = dword ptr -8
.text:10007A70 var_4 = dword ptr -4
.text:10007A70 arg_0 = dword ptr 8
.text:10007A70 arg_4 = dword ptr 0Ch
.text:10007A70 arg_8 = byte ptr 10h
.text:10007A70 arg_C = byte ptr 14h
.text:10007A70
.text:10007A70 push ebp
.text:10007A71 mov ebp, esp
.text:10007A73 sub esp, 1Ch
.text:10007A76 push ebx
.text:10007A77 push esi
.text:10007A78 mov esi, [ebp+arg_0]
.text:10007A7B push edi
.text:10007A7C push offset ModuleName ; "CShell.dll"
.text:10007A81 call ds:__imp__GetModuleHandleA@4 ; GetModuleHandleA(x)
.text:10007A87 mov edi, [eax+324BD0h]
.text:10007A8D add eax, 7700h
.text:10007A92 mov ecx, edi
.text:10007A94 mov GetMeIdxInPlayerInfoList, eax
.text:10007A99 call eax
.text:10007A9B mov [ebp+var_8], eax
.text:10007A9E cmp eax, 0Fh
.text:10007AA1 ja short loc_10007AB7
.text:10007AA3 imul eax, 1C0h
.text:10007AA9 lea eax, [eax+edi+0FD3Ch]
.text:10007AB0 mov dword_1005E908, eax
.text:10007AB5 jmp short loc_10007AC1
.text:10007AB7 ; ---------------------------------------------------------------------------
.text:10007AB7
.text:10007AB7 loc_10007AB7: ; CODE XREF: GameInfo__ESP+31j
.text:10007AB7 mov dword_1005E908, 0
.text:10007AC1
.text:10007AC1 loc_10007AC1: ; CODE XREF: GameInfo__ESP+45j
.text:10007AC1 test edi, edi
.text:10007AC3 jz loc_10007C80
.text:10007AC9 mov [ebp+var_4], 0
.text:10007AD0 lea ebx, [edi+0FD74h]
.text:10007AD6 jmp short loc_10007AE0
.text:10007AD6 ; ---------------------------------------------------------------------------
.text:10007AD8 align 10h
.text:10007AE0
.text:10007AE0 loc_10007AE0: ; CODE XREF: GameInfo__ESP+66j
.text:10007AE0 ; GameInfo__ESP+20Aj
.text:10007AE0 lea ecx, [ebx-38h]
.text:10007AE3 test ecx, ecx
.text:10007AE5 jz loc_10007C6A
.text:10007AEB lea eax, [ebx-2Eh]
.text:10007AEE lea edx, [eax+1]
.text:10007AF1
.text:10007AF1 loc_10007AF1: ; CODE XREF: GameInfo__ESP+86j
.text:10007AF1 mov cl, [eax]
.text:10007AF3 inc eax
.text:10007AF4 test cl, cl
.text:10007AF6 jnz short loc_10007AF1
.text:10007AF8 sub eax, edx
.text:10007AFA cmp eax, 2
.text:10007AFD jbe loc_10007C6A
.text:10007B03 cmp [ebx], cl
.text:10007B05 jle loc_10007C6A
.text:10007B0B lea edx, [ebx-38h]
.text:10007B0E push edx
.text:10007B0F lea edi, [ebp+var_18]
.text:10007B12 call WorldToScreen
.text:10007B17 add esp, 4
.text:10007B1A test al, al
.text:10007B1C jz loc_10007C6A
.text:10007B22 mov eax, [ebp+var_8]
.text:10007B25 cmp [ebp+var_4], eax
.text:10007B28 jz loc_10007C6A
.text:10007B2E cmp [ebp+arg_C], 0
.text:10007B32 fld [ebp+var_14]
.text:10007B35 fld [ebp+var_18]
.text:10007B38 jz loc_10007BD3
.text:10007B3E mov al, [ebx]
.text:10007B40 mov edi, 0FF00FF00h
.text:10007B45 cmp al, 46h
.text:10007B47 jg short loc_10007B4E
.text:10007B49 mov edi, 0FFFFFF00h
.text:10007B4E
.text:10007B4E loc_10007B4E: ; CODE XREF: GameInfo__ESP+D7j
.text:10007B4E cmp al, 32h
.text:10007B50 jg short loc_10007B57
.text:10007B52 mov edi, 0FFFF8800h
.text:10007B57
.text:10007B57 loc_10007B57: ; CODE XREF: GameInfo__ESP+E0j
.text:10007B57 cmp al, 1Eh
.text:10007B59 jg short loc_10007B60
.text:10007B5B mov edi, 0FFFF0000h
.text:10007B60
.text:10007B60 loc_10007B60: ; CODE XREF: GameInfo__ESP+E9j
.text:10007B60 push 0FF000000h
.text:10007B65 fxch st(1)
.text:10007B67 push 4
.text:10007B69 push 20h
.text:10007B6B call _ftol2_sse
.text:10007B70 fsub ds:__real@403a000000000000
.text:10007B76 movzx esi, ax
.text:10007B79 call _ftol2_sse
.text:10007B7E mov edx, esi
.text:10007B80 mov esi, [ebp+arg_0]
.text:10007B83 mov ecx, eax
.text:10007B85 call cMenu__DrawBox
.text:10007B8A movsx ecx, byte ptr [ebx]
.text:10007B8D mov [ebp+var_C], ecx
.text:10007B90 push edi
.text:10007B91 push 2
.text:10007B93 fild [ebp+var_C]
.text:10007B96 fdiv ds:__real@400aaaaa80000000
.text:10007B9C call _ftol2_sse
.text:10007BA1 fld [ebp+var_14]
.text:10007BA4 fadd ds:__real@3ff0000000000000
.text:10007BAA movzx edx, ax
.text:10007BAD push edx
.text:10007BAE call _ftol2_sse
.text:10007BB3 movzx edi, ax
.text:10007BB6 fld [ebp+var_18]
.text:10007BB9 fsub ds:__real@4039000000000000
.text:10007BBF call _ftol2_sse
.text:10007BC4 mov edx, edi
.text:10007BC6 mov ecx, eax
.text:10007BC8 call cMenu__DrawBox
.text:10007BCD fld [ebp+var_14]
.text:10007BD0 fld [ebp+var_18]
.text:10007BD3
.text:10007BD3 loc_10007BD3: ; CODE XREF: GameInfo__ESP+C8j
.text:10007BD3 cmp [ebp+arg_8], 0
.text:10007BD7 jz loc_10007C66
.text:10007BDD mov eax, dword_1005E908
.text:10007BE2 fxch st(1)
.text:10007BE4 push 11h ; float
.text:10007BE6 test eax, eax
.text:10007BE8 jz short loc_10007C44
.text:10007BEA mov al, [eax+9]
.text:10007BED fadd ds:__real@4028000000000000
.text:10007BF3 cmp al, [ebx-2Fh]
.text:10007BF6 lea eax, [ebx-2Eh]
.text:10007BF9 push eax ; int
.text:10007BFA jz short loc_10007C20
.text:10007BFC mov ecx, [ebp+arg_4]
.text:10007BFF fstp [ebp+var_C]
.text:10007C02 fld [ebp+var_C]
.text:10007C05 mov edx, [ecx]
.text:10007C07 mov eax, [edx+24h]
.text:10007C0A push 0FFFF0000h ; int
.text:10007C0F sub esp, 8
.text:10007C12 fstp [esp+3Ch+var_38]
.text:10007C16 fstp [esp+3Ch+var_3C]
.text:10007C19 call CD3DFont__DrawTextA
.text:10007C1E jmp short loc_10007C6A
.text:10007C20 ; ---------------------------------------------------------------------------
.text:10007C20
.text:10007C20 loc_10007C20: ; CODE XREF: GameInfo__ESP+18Aj
.text:10007C20 mov eax, [ebp+arg_4]
.text:10007C23 fstp [ebp+var_C]
.text:10007C26 fld [ebp+var_C]
.text:10007C29 mov ecx, [eax]
.text:10007C2B mov eax, [ecx+24h]
.text:10007C2E push 0FF00FF00h ; int
.text:10007C33 sub esp, 8
.text:10007C36 fstp [esp+3Ch+var_38]
.text:10007C3A fstp [esp+3Ch+var_3C]
.text:10007C3D call CD3DFont__DrawTextA
.text:10007C42 jmp short loc_10007C6A
.text:10007C44 ; ---------------------------------------------------------------------------
.text:10007C44
.text:10007C44 loc_10007C44: ; CODE XREF: GameInfo__ESP+178j
.text:10007C44 mov edx, [ebp+arg_4]
.text:10007C47 lea eax, [ebx-2Eh]
.text:10007C4A push eax ; int
.text:10007C4B mov eax, [edx]
.text:10007C4D mov eax, [eax+24h]
.text:10007C50 push 0FFFF0000h ; int
.text:10007C55 sub esp, 8
.text:10007C58 fstp [esp+3Ch+var_38]
.text:10007C5C fstp [esp+3Ch+var_3C]
.text:10007C5F call CD3DFont__DrawTextA
.text:10007C64 jmp short loc_10007C6A
.text:10007C66 ; ---------------------------------------------------------------------------
.text:10007C66
.text:10007C66 loc_10007C66: ; CODE XREF: GameInfo__ESP+167j
.text:10007C66 fstp st(1)
.text:10007C68 fstp st
.text:10007C6A
.text:10007C6A loc_10007C6A: ; CODE XREF: GameInfo__ESP+75j
.text:10007C6A ; GameInfo__ESP+8Dj ...
.text:10007C6A mov eax, [ebp+var_4]
.text:10007C6D inc eax
.text:10007C6E add ebx, 1C0h
.text:10007C74 mov [ebp+var_4], eax
.text:10007C77 cmp eax, 10h
.text:10007C7A jl loc_10007AE0
.text:10007C80
.text:10007C80 loc_10007C80: ; CODE XREF: GameInfo__ESP+53j
.text:10007C80 pop edi
.text:10007C81 pop esi
.text:10007C82 pop ebx
.text:10007C83 mov esp, ebp
.text:10007C85 pop ebp
.text:10007C86 retn 10h
.text:10007C86 GameInfo__ESP endp
[/highlight]
.text:10007A70 GameInfo__ESP proc near ; CODE XREF: PresentCallBack+8B1p
.text:10007A70
.text:10007A70 var_3C = dword ptr -3Ch
.text:10007A70 var_38 = dword ptr -38h
.text:10007A70 var_18 = dword ptr -18h
.text:10007A70 var_14 = dword ptr -14h
.text:10007A70 var_C = dword ptr -0Ch
.text:10007A70 var_8 = dword ptr -8
.text:10007A70 var_4 = dword ptr -4
.text:10007A70 arg_0 = dword ptr 8
.text:10007A70 arg_4 = dword ptr 0Ch
.text:10007A70 arg_8 = byte ptr 10h
.text:10007A70 arg_C = byte ptr 14h
.text:10007A70
.text:10007A70 push ebp
.text:10007A71 mov ebp, esp
.text:10007A73 sub esp, 1Ch
.text:10007A76 push ebx
.text:10007A77 push esi
.text:10007A78 mov esi, [ebp+arg_0]
.text:10007A7B push edi
.text:10007A7C push offset ModuleName ; "CShell.dll"
.text:10007A81 call ds:__imp__GetModuleHandleA@4 ; GetModuleHandleA(x)
.text:10007A87 mov edi, [eax+324BD0h]
.text:10007A8D add eax, 7700h
.text:10007A92 mov ecx, edi
.text:10007A94 mov GetMeIdxInPlayerInfoList, eax
.text:10007A99 call eax
.text:10007A9B mov [ebp+var_8], eax
.text:10007A9E cmp eax, 0Fh
.text:10007AA1 ja short loc_10007AB7
.text:10007AA3 imul eax, 1C0h
.text:10007AA9 lea eax, [eax+edi+0FD3Ch]
.text:10007AB0 mov dword_1005E908, eax
.text:10007AB5 jmp short loc_10007AC1
.text:10007AB7 ; ---------------------------------------------------------------------------
.text:10007AB7
.text:10007AB7 loc_10007AB7: ; CODE XREF: GameInfo__ESP+31j
.text:10007AB7 mov dword_1005E908, 0
.text:10007AC1
.text:10007AC1 loc_10007AC1: ; CODE XREF: GameInfo__ESP+45j
.text:10007AC1 test edi, edi
.text:10007AC3 jz loc_10007C80
.text:10007AC9 mov [ebp+var_4], 0
.text:10007AD0 lea ebx, [edi+0FD74h]
.text:10007AD6 jmp short loc_10007AE0
.text:10007AD6 ; ---------------------------------------------------------------------------
.text:10007AD8 align 10h
.text:10007AE0
.text:10007AE0 loc_10007AE0: ; CODE XREF: GameInfo__ESP+66j
.text:10007AE0 ; GameInfo__ESP+20Aj
.text:10007AE0 lea ecx, [ebx-38h]
.text:10007AE3 test ecx, ecx
.text:10007AE5 jz loc_10007C6A
.text:10007AEB lea eax, [ebx-2Eh]
.text:10007AEE lea edx, [eax+1]
.text:10007AF1
.text:10007AF1 loc_10007AF1: ; CODE XREF: GameInfo__ESP+86j
.text:10007AF1 mov cl, [eax]
.text:10007AF3 inc eax
.text:10007AF4 test cl, cl
.text:10007AF6 jnz short loc_10007AF1
.text:10007AF8 sub eax, edx
.text:10007AFA cmp eax, 2
.text:10007AFD jbe loc_10007C6A
.text:10007B03 cmp [ebx], cl
.text:10007B05 jle loc_10007C6A
.text:10007B0B lea edx, [ebx-38h]
.text:10007B0E push edx
.text:10007B0F lea edi, [ebp+var_18]
.text:10007B12 call WorldToScreen
.text:10007B17 add esp, 4
.text:10007B1A test al, al
.text:10007B1C jz loc_10007C6A
.text:10007B22 mov eax, [ebp+var_8]
.text:10007B25 cmp [ebp+var_4], eax
.text:10007B28 jz loc_10007C6A
.text:10007B2E cmp [ebp+arg_C], 0
.text:10007B32 fld [ebp+var_14]
.text:10007B35 fld [ebp+var_18]
.text:10007B38 jz loc_10007BD3
.text:10007B3E mov al, [ebx]
.text:10007B40 mov edi, 0FF00FF00h
.text:10007B45 cmp al, 46h
.text:10007B47 jg short loc_10007B4E
.text:10007B49 mov edi, 0FFFFFF00h
.text:10007B4E
.text:10007B4E loc_10007B4E: ; CODE XREF: GameInfo__ESP+D7j
.text:10007B4E cmp al, 32h
.text:10007B50 jg short loc_10007B57
.text:10007B52 mov edi, 0FFFF8800h
.text:10007B57
.text:10007B57 loc_10007B57: ; CODE XREF: GameInfo__ESP+E0j
.text:10007B57 cmp al, 1Eh
.text:10007B59 jg short loc_10007B60
.text:10007B5B mov edi, 0FFFF0000h
.text:10007B60
.text:10007B60 loc_10007B60: ; CODE XREF: GameInfo__ESP+E9j
.text:10007B60 push 0FF000000h
.text:10007B65 fxch st(1)
.text:10007B67 push 4
.text:10007B69 push 20h
.text:10007B6B call _ftol2_sse
.text:10007B70 fsub ds:__real@403a000000000000
.text:10007B76 movzx esi, ax
.text:10007B79 call _ftol2_sse
.text:10007B7E mov edx, esi
.text:10007B80 mov esi, [ebp+arg_0]
.text:10007B83 mov ecx, eax
.text:10007B85 call cMenu__DrawBox
.text:10007B8A movsx ecx, byte ptr [ebx]
.text:10007B8D mov [ebp+var_C], ecx
.text:10007B90 push edi
.text:10007B91 push 2
.text:10007B93 fild [ebp+var_C]
.text:10007B96 fdiv ds:__real@400aaaaa80000000
.text:10007B9C call _ftol2_sse
.text:10007BA1 fld [ebp+var_14]
.text:10007BA4 fadd ds:__real@3ff0000000000000
.text:10007BAA movzx edx, ax
.text:10007BAD push edx
.text:10007BAE call _ftol2_sse
.text:10007BB3 movzx edi, ax
.text:10007BB6 fld [ebp+var_18]
.text:10007BB9 fsub ds:__real@4039000000000000
.text:10007BBF call _ftol2_sse
.text:10007BC4 mov edx, edi
.text:10007BC6 mov ecx, eax
.text:10007BC8 call cMenu__DrawBox
.text:10007BCD fld [ebp+var_14]
.text:10007BD0 fld [ebp+var_18]
.text:10007BD3
.text:10007BD3 loc_10007BD3: ; CODE XREF: GameInfo__ESP+C8j
.text:10007BD3 cmp [ebp+arg_8], 0
.text:10007BD7 jz loc_10007C66
.text:10007BDD mov eax, dword_1005E908
.text:10007BE2 fxch st(1)
.text:10007BE4 push 11h ; float
.text:10007BE6 test eax, eax
.text:10007BE8 jz short loc_10007C44
.text:10007BEA mov al, [eax+9]
.text:10007BED fadd ds:__real@4028000000000000
.text:10007BF3 cmp al, [ebx-2Fh]
.text:10007BF6 lea eax, [ebx-2Eh]
.text:10007BF9 push eax ; int
.text:10007BFA jz short loc_10007C20
.text:10007BFC mov ecx, [ebp+arg_4]
.text:10007BFF fstp [ebp+var_C]
.text:10007C02 fld [ebp+var_C]
.text:10007C05 mov edx, [ecx]
.text:10007C07 mov eax, [edx+24h]
.text:10007C0A push 0FFFF0000h ; int
.text:10007C0F sub esp, 8
.text:10007C12 fstp [esp+3Ch+var_38]
.text:10007C16 fstp [esp+3Ch+var_3C]
.text:10007C19 call CD3DFont__DrawTextA
.text:10007C1E jmp short loc_10007C6A
.text:10007C20 ; ---------------------------------------------------------------------------
.text:10007C20
.text:10007C20 loc_10007C20: ; CODE XREF: GameInfo__ESP+18Aj
.text:10007C20 mov eax, [ebp+arg_4]
.text:10007C23 fstp [ebp+var_C]
.text:10007C26 fld [ebp+var_C]
.text:10007C29 mov ecx, [eax]
.text:10007C2B mov eax, [ecx+24h]
.text:10007C2E push 0FF00FF00h ; int
.text:10007C33 sub esp, 8
.text:10007C36 fstp [esp+3Ch+var_38]
.text:10007C3A fstp [esp+3Ch+var_3C]
.text:10007C3D call CD3DFont__DrawTextA
.text:10007C42 jmp short loc_10007C6A
.text:10007C44 ; ---------------------------------------------------------------------------
.text:10007C44
.text:10007C44 loc_10007C44: ; CODE XREF: GameInfo__ESP+178j
.text:10007C44 mov edx, [ebp+arg_4]
.text:10007C47 lea eax, [ebx-2Eh]
.text:10007C4A push eax ; int
.text:10007C4B mov eax, [edx]
.text:10007C4D mov eax, [eax+24h]
.text:10007C50 push 0FFFF0000h ; int
.text:10007C55 sub esp, 8
.text:10007C58 fstp [esp+3Ch+var_38]
.text:10007C5C fstp [esp+3Ch+var_3C]
.text:10007C5F call CD3DFont__DrawTextA
.text:10007C64 jmp short loc_10007C6A
.text:10007C66 ; ---------------------------------------------------------------------------
.text:10007C66
.text:10007C66 loc_10007C66: ; CODE XREF: GameInfo__ESP+167j
.text:10007C66 fstp st(1)
.text:10007C68 fstp st
.text:10007C6A
.text:10007C6A loc_10007C6A: ; CODE XREF: GameInfo__ESP+75j
.text:10007C6A ; GameInfo__ESP+8Dj ...
.text:10007C6A mov eax, [ebp+var_4]
.text:10007C6D inc eax
.text:10007C6E add ebx, 1C0h
.text:10007C74 mov [ebp+var_4], eax
.text:10007C77 cmp eax, 10h
.text:10007C7A jl loc_10007AE0
.text:10007C80
.text:10007C80 loc_10007C80: ; CODE XREF: GameInfo__ESP+53j
.text:10007C80 pop edi
.text:10007C81 pop esi
.text:10007C82 pop ebx
.text:10007C83 mov esp, ebp
.text:10007C85 pop ebp
.text:10007C86 retn 10h
.text:10007C86 GameInfo__ESP endp
[/highlight]

