Function at 0x404f31
Capabilities:
Get geographical location

Disassembly:
mov eax, edi
sub eax, dword [ebp - 4]
jmp 0x405154
xor ebx, ebx
cmp al, 0x2a
je 0x404f5a
cmp al, 0x30
jb 0x404f79
cmp al, 0x39
ja 0x404f79
imul ebx, ebx, 0xa
sub al, 0x30
movzx eax, al
add ebx, eax
cmp esi, ecx
je 0x404f54
lodsb al, byte [esi]
jmp 0x404f38
pop eax
jmp 0x404e85
mov eax, dword [ebp - 8]
cmp eax, dword [ebp + 8]
ja 0x404f74
inc dword [ebp - 8]
mov ebx, 0x4694d2e8
add ebx, 0x18
push ebx
push 0x43cd57a8
int 0x43
mov edx, 0x71fe3bcd
pop esi
invalid
xor edx, esi
push edx
mov ebx, 0x6e726533
add ebx, 0x38
push ebx
mov esi, esp
mov ecx, esi
mov edi, ecx
add esp, 0xfffffffc
mov dword [esp], edi
mov edi, 0x49e41a7
mov ebx, 0x2f7ce4d0
xor ebx, edi
mov esi, ebx
xor esi, 0xffffffff
and esi, 0x2ba274eb
and ebx, 0xd45d8b14
or ebx, esi
call dword [ebx]
mov ebx, 0x1e6c6870
mov edx, 0xe1939784
xor ebx, edx
sub esp, ebx
xor edi, edi
add edi, eax
test edi, edi
je 0x4051f7
mov ebx, 0x324cf2bd
xor ebx, 0x6ea7835
push ebx
mov esi, 0x106ba690
xor esi, 0x248dfda0
pop edi
xor esi, edi
mov ebx, 0x3f772046
add ebx, 0xba
push ebx
mov edi, 0x6ee9b9e0
xor edi, 0x1a87cc8f
push edi
mov ebx, 0x436b6328
add ebx, 0x41
push ebx
mov edi, 0x4146040
mov ebx, 0x50600507
xor edi, ebx
push edi
mov ecx, esp
mov ebx, ecx
mov edx, ebx
add esp, 0xfffffffc
mov dword [esp], edx
xor edx, edx
add edx, eax
mov edi, 0xfffffffc
add esp, edi
mov dword [esp], edx
call dword [esi]
mov ecx, 0x5de34c00
xor ecx, 0xa21cb3f0
sub esp, ecx
mov ebx, eax
test ebx, ebx
je 0x4051f7
xor edi, edi
add edi, eax
mov esi, 0xfffffffc
add esp, esi
mov dword [esp], edi
mov edi, 0x2000011
mov ebx, 0xe4003222
xor edi, ebx
push edi
push 0x6a889ba6
mov edi, 0x18ede8d3
pop esi
xor edi, esi
push edi
mov edi, esp
mov ecx, edi
add esp, 0xfffffffc
mov dword [esp], ecx
mov edx, 0x684dce3b
mov ecx, 0x6674f74b
xor ecx, edx
push 0x5e3dc775
mov ebx, 0x50442f99
pop esi
xor ebx, esi
xor ebx, ecx
call dword [ebx]
push 0x6e15402
mov edx, 0x6e1540a
pop esi
xor edx, esi
add esp, edx
mov edx, eax
mov ebx, edx
mov edi, ebx
mov esi, edi
test esi, esi
je 0x4051f7
push 0x63402e27
mov esi, 0x6340ef3f
pop edi
xor esi, edi
push 0x136ab8ef
mov ebx, 0x132aa84f
pop edx
xor ebx, edx
xor esi, ebx
mov edi, 0x1852a00
mov ebx, 0x92101000
xor edi, ebx
push edi
mov edx, 0x47400e48
mov ebx, 0x28266001
xor edx, ebx
push edx
mov edx, 0x3415106a
mov ebx, 0x40606004
xor edx, ebx
push edx
push 0x5d2457f9
mov ebx, 0x14502498
pop ecx
xor ebx, ecx
push ebx
mov ecx, 0x6aad80c3
xor ecx, 0x26d9e584
push ecx
push esp
pop ebx
add esp, 0xfffffffc
mov ecx, esp
mov dword [ecx], ebx
push eax
pop edi
mov ebx, edi
push ebx
call dword [esi]
mov ecx, 0
mov edx, 0x14
xor ecx, edx
add esp, ecx
push eax
pop ebx
mov edx, ebx
mov esi, edx
test esi, esi
je 0x4051f7
xor edx, edx
add edx, eax
mov esi, 0xfffffffc
add esp, esi
mov dword [esp], edx
pop ebx
mov eax, 0x36002004
mov ecx, 0xe20300
xor eax, ecx
push eax
mov eax, 0x6c1c44b9
xor eax, 0x6c1c44b1
push eax
mov edi, esp
mov ecx, edi
add esp, 0xfffffffc
mov edx, esp
mov dword [edx], ecx
call ebx
pop ebx
pop edi
mov ecx, edi
mov ebx, ecx
mov edx, 4
sub esp, edx
mov dword [esp], ebx
cmp edi, 0
add byte [eax], al
je 0x4051ea
pop ecx
pop edi
mov ebx, ecx
add esp, 0xfffffffc
mov eax, esp
mov dword [eax], ebx
call edi
xlatb