Function at 0x492ac0
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x604
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov esi, ecx
mov ecx, edi
mov byte [ebp - 1], 0
call fcn.0044b980
mov ecx, edi
mov dword [ebp - 8], eax
call fcn.0044b980
mov ecx, edi
mov dword [ebp - 0xc], eax
call fcn.0044b980
mov ecx, edi
mov dword [ebp - 0x10], eax
call fcn.0044b980
mov ecx, edi
mov ebx, eax
call fcn.0044b9a0
mov ecx, edi
mov dword [ebp - 0x20], eax
call fcn.0044b9a0
mov ecx, edi
mov dword [ebp - 0x1c], eax
call fcn.0044b9a0
mov dword [ebp - 0x18], eax
push 0x20
lea eax, [ebp - 0x44]
push eax
mov ecx, edi
call fcn.0044bc10
push 0x100
lea ecx, [ebp - 0x304]
push ecx
mov ecx, edi
call fcn.0044bc10
push 0x40
lea edx, [ebp - 0xc4]
push edx
mov ecx, edi
call fcn.0044bc10
mov ecx, edi
call sym.GameRanger.exe_public:_unsigned_short_int___thiscall_CRecord::Read_uword_void_
mov ecx, edi
mov word [esi + 0x1cc], ax
call fcn.0044b980
mov ecx, edi
mov dword [esi + 0x1d0], eax
call sym.GameRanger.exe_public:_unsigned_short_int___thiscall_CRecord::Read_uword_void_
mov ecx, edi
mov word [esi + 0x1d4], ax
call fcn.0044b980
mov ecx, edi
mov dword [esi + 0x1d8], eax
call fcn.0044b980
push 0
mov dword [esi + 0x1dc], eax
lea eax, [ebp - 0x44]
push 0
push eax
call fcn.0045d380
movzx ecx, byte [esi + 0x1f0]
push ecx
lea edx, [ebp - 0x304]
push 1
push edx
call fcn.0045d380
push 0
lea eax, [ebp - 0xc4]
push 0
push eax
call fcn.0045d380
lea ecx, [ebp - 0x44]
push ecx
call fcn.0045cc80
add esp, 0x28
cmp byte [esi + 0x1f0], 0
mov byte [esi + 0x1f2], 0
je 0x492c74
push 0x10
lea edx, [esi + 0x1b4]
push edx
mov ecx, edi
call fcn.0044bc10
mov ecx, edi
call fcn.0044b980
mov dword [ebp - 0x14], eax
push 0x40
lea eax, [ebp - 0x104]
push eax
mov ecx, edi
call fcn.0044bc10
push 0x200
lea ecx, [ebp - 0x604]
push ecx
mov ecx, edi
call fcn.0044bc10
mov ecx, edi
call sym.GameRanger.exe_public:_unsigned_short_int___thiscall_CRecord::Read_uword_void_
movzx edx, ax
mov ecx, edi
mov dword [ebp - 0x24], edx
call fcn.0044b980
mov ecx, edi
mov dword [esi + 0x1c8], eax
call fcn.0044b980
mov dword [ebp + 8], eax
test eax, eax
jne 0x492c4f
mov eax, dword [ebp - 0x14]
mov dword [ebp + 8], eax
mov byte [ebp - 1], 1
push 0
lea ecx, [ebp - 0x104]
push 0
push ecx
call fcn.0045d380
push 1
lea edx, [ebp - 0x604]
push 1
push edx
call fcn.0045d380
add esp, 0x18
jmp 0x492c8e
cmp dword [esi + 0x1dc], 0xffffffff
jne 0x492c8e
mov dword [esi + 0x1dc], 0
mov byte [esi + 0x1f2], 1
mov ecx, dword [esi + 0x190]
lea eax, [ebp - 0x44]
push eax
push ecx
mov ecx, dword [0x6e7474]
call fcn.00477900
mov edx, dword [esi + 0x190]
push ebx
mov dword [esi + 0x1c4], ebx
mov ecx, dword [0x6e7474]
push edx
call fcn.00477590
mov eax, dword [esi + 0x1c4]
mov ecx, dword [0x6a3100]
push eax
push esi
call fcn.00443490
test al, al
jne 0x492ce6
mov ecx, dword [esi + 0x1c4]
push ecx
mov ecx, dword [0x6e7474]
call fcn.004776d0
lea edx, [ebp - 0x44]
push edx
mov ecx, esi
call sub.MFC42.dll_CWnd::SetWindowTextA
cmp byte [esi + 0x1f0], 0
jne 0x492d19
cmp byte [esi + 0x1f2], 0
mov eax, str.Removed_by_Request
jne 0x492d0d
mov eax, 0x60f98c
mov ecx, dword [esi + 0x138]
push eax
call sub.MFC42.dll_CWnd::SetWindowTextA
mov ecx, esi
call fcn.004910b0
mov ecx, dword [esi + 0x140]
lea eax, [ebp - 0x304]
push eax
call fcn.004d9300
cmp byte [ebp - 0xc4], 0
je 0x492d56
lea ecx, [ebp - 0xc4]
push ecx
mov ecx, dword [esi + 0x144]
call fcn.004d9ce0
lea edx, [ebp - 0xc4]
push edx
jmp 0x492d6b
mov ecx, dword [esi + 0x144]
push 0x5f708c
call fcn.004d9ce0
push str._Withheld_
mov ecx, dword [esi + 0x144]
call fcn.004d9d10
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x492d9e
push ebx
call fcn.00457790
push 1
lea ecx, [ebp - 0x204]
push ecx
push eax
call fcn.00457970
add esp, 0x10
lea edx, [ebp - 0x204]
push edx
jmp 0x492da3
push str.Never_logged_in.
mov ecx, dword [esi + 0x148]
call sub.MFC42.dll_CWnd::SetWindowTextA
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x492dd7
push eax
call fcn.00457790
mov ecx, dword [esi + 0x120]
add esp, 4
push str.Last_login:
mov edi, eax
call sub.MFC42.dll_CWnd::SetWindowTextA
push str.Last_logout:
jmp 0x492dee
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x492e25
push eax
call fcn.00457790
add esp, 4
mov edi, eax
push str.Idle_since:
mov ecx, dword [esi + 0x124]
call sub.MFC42.dll_CWnd::SetWindowTextA
test edi, edi
je 0x492e25
push 1
lea eax, [ebp - 0x204]
push eax
push edi
call fcn.00457970
add esp, 0xc
lea ecx, [ebp - 0x204]
push ecx
mov ecx, dword [esi + 0x14c]
call sub.MFC42.dll_CWnd::SetWindowTextA
push 5
jmp 0x492e37
mov ecx, dword [esi + 0x14c]
push 0x5f708c
call sub.MFC42.dll_CWnd::SetWindowTextA
push 0
mov ecx, dword [esi + 0x124]
call sub.MFC42.dll_CWnd::ShowWindow
test ebx, ebx
je 0x492f58
cmp dword [ebp - 0x20], 0
jne 0x492e5a
cmp dword [ebp - 0x1c], 0
je 0x492f58
fild dword [ebp - 0x20]
mov ecx, dword [esi + 0x150]
fld qword [0x6075a0]
sub esp, 8
fdiv st(1), st(0)
fxch st(1)
fstp dword [ebp - 8]
fidivr dword [ebp - 0x1c]
fstp dword [ebp - 0xc]
fld dword [ebp - 0xc]
fstp dword [esp + 4]
fld dword [ebp - 8]
fstp dword [esp]
call fcn.004d7190
call fcn.004576e0
fldz
fucompp
fnstsw ax
test ah, 0x44
jnp 0x492f63
call fcn.00457700
fldz
fucompp
fnstsw ax
test ah, 0x44
jnp 0x492f63
push 2
lea edx, [ebp - 0x84]
push edx
push 0xd
xor bl, bl
push 0x400
mov byte [ebp - 0x10], bl
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
test eax, eax
je 0x492ee9
lea eax, [ebp - 0x84]
push eax
call sym.GameRanger.exe_unsigned_int___cdecl_str_u_char_const__
add esp, 4
test eax, eax
sete bl
mov byte [ebp - 0x10], bl
mov ecx, dword [ebp - 0x10]
fld dword [ebp - 0xc]
push ecx
sub esp, 0x10
fstp qword [esp + 8]
fld dword [ebp - 8]
fstp qword [esp]
call fcn.00458220
lea ecx, [eax + 5]
mov eax, 0xcccccccd
mul ecx
shr edx, 3
lea eax, [edx + edx*4]
add esp, 0x14
add eax, eax
push eax
test bl, bl
je 0x492f3a
lea edx, [ebp - 0x84]
push str._u_km
push edx
call dword [sym.imp.msvcrt.dll_sprintf]
add esp, 0xc
lea ecx, [ebp - 0x84]
push ecx
jmp 0x492f68
lea eax, [ebp - 0x84]
push str._u_mi
push eax
call dword [sym.imp.msvcrt.dll_sprintf]
add esp, 0xc
lea ecx, [ebp - 0x84]
push ecx
jmp 0x492f68
mov ecx, dword [esi + 0x150]
call fcn.004d6d70
push 0x5f708c
mov ecx, dword [esi + 0x154]
call sub.MFC42.dll_CWnd::SetWindowTextA
mov eax, dword [esi + 0x1dc]
mov edx, dword [ebp - 0x18]
mov dword [esi + 0x1e4], edx
test eax, eax
je 0x492faa
push eax
call fcn.0048d650
add esp, 4
test eax, eax
je 0x492faa
mov ecx, eax
call fcn.0048d050
mov ecx, dword [esi + 0x15c]
push eax
call sub.MFC42.dll_CWnd::SetWindowTextA
push 5
jmp 0x492fbc
mov ecx, dword [esi + 0x15c]
push 0x5f708c
call sub.MFC42.dll_CWnd::SetWindowTextA
push 0
mov ecx, dword [esi + 0x130]
call sub.MFC42.dll_CWnd::ShowWindow
movzx eax, word [esi + 0x1cc]
test ax, ax
je 0x492fec
push eax
call fcn.0048a420
mov ecx, dword [esi + 0x160]
add esp, 4
push eax
call sub.MFC42.dll_CWnd::SetWindowTextA
push 5
jmp 0x492ffe
mov ecx, dword [esi + 0x160]
push 0x5f708c
call sub.MFC42.dll_CWnd::SetWindowTextA
push 0
mov ecx, dword [esi + 0x134]
call sub.MFC42.dll_CWnd::ShowWindow
cmp byte [esi + 0x1f0], 0
je 0x4930a9
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x493047
push eax
call fcn.00457790
push 0
lea ecx, [ebp - 0x204]
push ecx
push eax
call fcn.00457880
mov ecx, dword [esi + 0x17c]
add esp, 0x10
lea edx, [ebp - 0x204]
push edx
call sub.MFC42.dll_CWnd::SetWindowTextA
cmp dword [ebp + 8], 0
je 0x4930a9
call fcn.004574a0
mov edi, eax
mov eax, dword [ebp + 8]
push eax
call fcn.00457790
add esp, 4
cmp byte [ebp - 1], 0
mov ecx, eax
je 0x493085
cmp ecx, edi
ja 0x493085
sub edi, ecx
mov eax, 0x4418a47b
mul edi
shr edx, 0x17
imul edx, edx, 0x1e13380
lea ecx, [ecx + edx + 0x1e13380]
push 0
lea edx, [ebp - 0x204]
push edx
push ecx
call fcn.00457880
mov ecx, dword [esi + 0x180]
add esp, 0xc
lea eax, [ebp - 0x204]
push eax
call sub.MFC42.dll_CWnd::SetWindowTextA
cmp byte [esi + 0x1f1], 0
je 0x493174
lea ecx, [ebp - 0x104]
push ecx
mov ecx, dword [esi + 0x184]
call fcn.004d9d10
mov ecx, dword [esi + 0x184]
lea edx, [ebp - 0x104]
push edx
call fcn.004d9ce0
mov ecx, dword [esi + 0x18c]
lea eax, [ebp - 0x604]
push eax
call fcn.004d9300
mov edi, dword [ebp - 0x24]
test di, di
je 0x49312b
movzx ecx, di
push ecx
lea edx, [ebp - 0x404]
push str.https:__www.GameRanger.com_games__u_
push edx
call dword [sym.imp.msvcrt.dll_sprintf]
mov ecx, dword [esi + 0x188]
add esp, 0xc
lea eax, [ebp - 0x404]
push eax
call fcn.004d9ce0
push edi
call fcn.0048a420
add esp, 4
push eax
jmp 0x493140
mov ecx, dword [esi + 0x188]
push 0x5f708c
call fcn.004d9ce0
push str.None
mov ecx, dword [esi + 0x188]
call fcn.004d9d10
mov ecx, dword [esi + 0x1c8]
push ecx
mov ecx, dword [esi + 0x164]
call fcn.004d3d70
call fcn.0048fc50
cmp dword [esi + 0x190], eax
jne 0x493174
mov edx, dword [esi + 0x164]
mov byte [edx + 0x7c], 1
mov eax, dword [esi + 0x20]
push 0x77
push eax
call dword [sym.imp.USER32.dll_KillTimer]
mov ecx, dword [esi + 0x20]
push 0
push 0x7530
push 0x77
push ecx
call dword [sym.imp.USER32.dll_SetTimer]
push 0x77
mov ecx, esi
call fcn.00490fb0
mov edx, dword [esi + 0x20]
push edx
call dword [sym.imp.USER32.dll_BringWindowToTop]
push 9
mov ecx, esi
call sub.MFC42.dll_CWnd::ShowWindow
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4