Function at 0x423865
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
mov eax, dword [0x447d10]
push ebx
push esi
mov dword [ebp - 4], eax
xor eax, eax
push edi
mov edi, dword [ebp + 0x10]
lea esi, [ebp - 0x30]
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], 1
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x40], edi
mov cl, byte [edi]
cmp cl, 0x20
je 0x42368b
cmp cl, 9
je 0x42368b
cmp cl, 0xa
je 0x42368b
cmp cl, 0xd
jne 0x42368e
inc edi
jmp 0x423675
mov bl, byte [edi]
inc edi
cmp eax, 0xb
ja case.0x42369a.10
jmp dword [eax*4 + 0x423a3b]
cmp bl, 0x31
jl 0x4236b2
cmp bl, 0x39
jg 0x4236b2
push 3
jmp 0x4238cc
cmp bl, byte [0x4487f4]
jne 0x4236c1
push 5
jmp 0x423903
movsx eax, bl
sub eax, 0x2b
je 0x4236eb
dec eax
dec eax
je 0x4236df
sub eax, 3
je 0x423778
mov dword [ebp - 0x34], esi
dec edi
jmp 0x42388a
push 2
pop eax
mov dword [ebp - 0x50], 0x8000
jmp 0x42368e
and dword [ebp - 0x50], 0
push 2
pop eax
jmp 0x42368e
xor eax, eax
inc eax
cmp bl, 0x31
mov dword [ebp - 0x44], eax
jl 0x423704
cmp bl, 0x39
jle 0x4236ab
cmp bl, byte [0x4487f4]
jne 0x423713
push 4
jmp 0x423903
cmp bl, 0x2b
je 0x42374d
cmp bl, 0x2d
je 0x42374d
cmp bl, 0x30
je 0x42368e
cmp bl, 0x43
jle 0x423886
cmp bl, 0x45
jle 0x423746
cmp bl, 0x63
jle 0x423886
cmp bl, 0x65
jg 0x423886
push 6
jmp 0x423903
dec edi
push 0xb
jmp 0x423903
cmp bl, 0x31
jl 0x423763
cmp bl, 0x39
jle 0x4236ab
cmp bl, byte [0x4487f4]
je 0x4236ba
cmp bl, 0x30
jne 0x4238d8
xor eax, eax
inc eax
jmp 0x42368e
mov dword [ebp - 0x44], 1
jmp 0x4237a0
cmp dword [ebp - 0x38], 0x19
jae 0x42379a
inc dword [ebp - 0x38]
sub bl, 0x30
mov byte [esi], bl
inc esi
jmp 0x42379d
inc dword [ebp - 0x3c]
mov bl, byte [edi]
inc edi
movzx eax, bl
push eax
call fcn.0041f9a0
test eax, eax
pop ecx
jne 0x423789
cmp bl, byte [0x4487f4]
jne 0x4237fc
jmp 0x42370c
xor eax, eax
inc eax
cmp dword [ebp - 0x38], 0
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x58], eax
jne 0x4237ee
jmp 0x4237d2
dec dword [ebp - 0x3c]
mov bl, byte [edi]
inc edi
cmp bl, 0x30
je 0x4237cc
jmp 0x4237ee
cmp dword [ebp - 0x38], 0x19
jae 0x4237eb
inc dword [ebp - 0x38]
sub bl, 0x30
mov byte [esi], bl
inc esi
dec dword [ebp - 0x3c]
mov bl, byte [edi]
inc edi
movzx eax, bl
push eax
call fcn.0041f9a0
test eax, eax
pop ecx
jne 0x4237d9
cmp bl, 0x2b
je 0x42374d
cmp bl, 0x2d
je 0x42374d
jmp 0x423726
movzx eax, bl
push eax
mov dword [ebp - 0x58], 1
call fcn.0041f9a0
test eax, eax
pop ecx
je 0x4238d8
push 4
jmp 0x4238cc
cmp bl, 0x31
lea ecx, [edi - 2]
mov dword [ebp - 0x40], ecx
jl 0x423847
cmp bl, 0x39
jle 0x4238ca
movsx eax, bl
sub eax, 0x2b
je 0x423901
dec eax
dec eax
je 0x4238f5
sub eax, 3
jne 0x42391b
push 8
jmp 0x423903
mov dword [ebp - 0x5c], 1
jmp 0x423877
mov bl, byte [edi]
inc edi
cmp bl, 0x30
je 0x423874
cmp bl, 0x31
jl 0x423886
cmp bl, 0x39
jle 0x4238ca
dec edi
mov dword [ebp - 0x34], esi
cmp dword [ebp - 0x44], 0
mov eax, dword [ebp + 0xc]
mov dword [eax], edi
je 0x4239e9
push 0x18
pop eax
cmp dword [ebp - 0x38], eax
jbe 0x4238b1
cmp byte [ebp - 0x19], 5
jl 0x4238aa
inc byte [ebp - 0x19]
dec esi
inc dword [ebp - 0x3c]
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jbe 0x423a10
jmp 0x423985
cmp bl, 0x31
jl 0x4238d3
cmp bl, 0x39
jg 0x4238d3
push 9
pop eax
dec edi
jmp 0x42368e
cmp bl, 0x30
je 0x423864
mov edi, dword [ebp - 0x40]
jmp 0x423887
cmp dword [ebp + 0x20], 0
je 0x423909
movsx eax, bl
sub eax, 0x2b
lea ecx, [edi - 1]
mov dword [ebp - 0x40], ecx
je 0x423901
dec eax
dec eax
jne 0x42391b
or dword [ebp - 0x4c], 0xffffffff
push 7
pop eax
jmp 0x42368e
push 7
pop eax
jmp 0x42368e
push 0xa
pop eax
dec edi
cmp eax, 0xa
jne 0x42368e
jmp 0x423887
mov dword [ebp - 0x34], esi
mov edi, ecx
jmp 0x42388a
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x5c], 1
xor esi, esi
jmp 0x423948
movsx ecx, bl
lea eax, [esi + esi*4]
lea esi, [ecx + eax*2 - 0x30]
cmp esi, 0x1450
jg 0x423958
mov bl, byte [edi]
inc edi
movzx eax, bl
push eax
call fcn.0041f9a0
test eax, eax
pop ecx
jne 0x423933
jmp 0x42395d
mov esi, 0x1451
mov dword [ebp - 0x54], esi
movzx eax, bl
jmp 0x42396b
mov al, byte [edi]
inc edi
movzx eax, al
push eax
call fcn.0041f9a0
test eax, eax
pop ecx
jne 0x423965
mov esi, dword [ebp - 0x34]
dec edi
jmp 0x42388a
dec dword [ebp - 0x38]
inc dword [ebp - 0x3c]
dec esi
cmp byte [esi], 0
je 0x42397f
lea eax, [ebp - 0x14]
push eax
push dword [ebp - 0x38]
lea eax, [ebp - 0x30]
push eax
call fcn.00423559
mov eax, dword [ebp - 0x54]
xor ecx, ecx
add esp, 0xc
cmp dword [ebp - 0x4c], ecx
jge 0x4239aa
neg eax
add eax, dword [ebp - 0x3c]
cmp dword [ebp - 0x5c], ecx
jne 0x4239b5
add eax, dword [ebp + 0x18]
cmp dword [ebp - 0x58], ecx
jne 0x4239bd
sub eax, dword [ebp + 0x1c]
cmp eax, 0x1450
jg 0x4239f2
cmp eax, 0xffffebb0
jl 0x423a09
push dword [ebp + 0x14]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.004243ad
mov edx, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x12]
mov esi, dword [ebp - 0xe]
mov eax, dword [ebp - 0xa]
add esp, 0xc
jmp 0x423a18
mov dword [ebp - 0x48], 4
jmp 0x423a10
xor ebx, ebx
mov eax, 0x7fff
mov esi, SysReAllocStringLen
xor edx, edx
mov dword [ebp - 0x48], 2
jmp 0x423a18
mov dword [ebp - 0x48], 1
xor edx, edx
xor eax, eax
xor esi, esi
xor ebx, ebx
mov ecx, dword [ebp + 8]
or eax, dword [ebp - 0x50]
pop edi
mov dword [ecx + 6], esi
mov dword [ecx + 2], ebx
mov word [ecx + 0xa], ax
mov eax, dword [ebp - 0x48]
mov word [ecx], dx
mov ecx, dword [ebp - 4]
pop esi
pop ebx
call fcn.004164ae
leave
ret