Function at 0x9f14e0
Capabilities:
Get geographical location

Disassembly:
mov al, byte [esp + 0xc]
sub esp, 0x14
test al, al
push esi
push edi
je 0x9f15f1
mov esi, dword [esp + 0x24]
mov eax, dword [esi + 4]
mov ecx, dword [esi]
test eax, eax
ja 0x9f15bd
jb 0x9f150c
cmp ecx, 0x400
jae 0x9f1535
push 0x9c79
call fcn.009f06f0
mov ecx, dword [esp + 0x24]
add esp, 4
push eax
mov eax, dword [esi]
push eax
push str._u__s
push ecx
call fcn.009f8dff
add esp, 0x10
pop edi
pop esi
add esp, 0x14
ret
test eax, eax
ja 0x9f15bd
jb 0x9f1547
cmp ecx, 0x100000
jae 0x9f157b
push 0x9c7a
call fcn.009f06f0
fild qword [esi]
add esp, 4
mov edx, dword [esp + 0x20]
fmul qword [0xa0a800]
push eax
sub esp, 8
fstp qword [esp]
push 0xa0ec30
push edx
call fcn.009f8dff
add esp, 0x14
pop edi
pop esi
add esp, 0x14
ret
test eax, eax
ja 0x9f15bd
jb 0x9f1589
cmp ecx, 0x40000000
jae 0x9f15bd
push 0x9c7b
call fcn.009f06f0
fild qword [esi]
add esp, 4
fmul qword [0xa0a7f8]
push eax
mov eax, dword [esp + 0x24]
sub esp, 8
fstp qword [esp]
push 0xa0ec30
push eax
call fcn.009f8dff
add esp, 0x14
pop edi
pop esi
add esp, 0x14
ret
push 0x9c7c
call fcn.009f06f0
fild qword [esi]
add esp, 4
mov ecx, dword [esp + 0x20]
fmul qword [0xa0a7f0]
push eax
sub esp, 8
fstp qword [esp]
push 0xa0ec30
push ecx
call fcn.009f8dff
add esp, 0x14
pop edi
pop esi
add esp, 0x14
ret
mov edx, dword [0xa0ec2c]
xor eax, eax
mov dword [esp + 0xc], eax
lea ecx, [esp + 8]
mov dword [esp + 0x10], eax
push 0xa
push ecx
mov dword [esp + 0x1c], eax
push 0xf
push 0x400
mov dword [esp + 0x18], edx
mov dword [esp + 0x28], eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
mov eax, dword [esp + 0x24]
mov esi, dword [eax + 4]
mov edi, dword [eax]
test esi, esi
ja 0x9f1713
jb 0x9f163c
cmp edi, 0x3e8
jae 0x9f1656
mov edx, dword [esp + 0x20]
push esi
push edi
push str._I64u
push edx
call fcn.009f8dff
add esp, 0x10
pop edi
pop esi
add esp, 0x14
ret
test esi, esi
ja 0x9f1713
jb 0x9f1668
cmp edi, 0xf4240
jae 0x9f16a5
push 0
push 0x3e8
push esi
push edi
call fcn.009fa7d0
push edx
push eax
lea eax, [esp + 0x10]
push eax
push 0
push 0x3e8
push esi
push edi
call fcn.009f9e60
mov ecx, dword [esp + 0x2c]
push edx
push eax
push str._I64u_s_03I64u
push ecx
call fcn.009f8dff
add esp, 0x1c
pop edi
pop esi
add esp, 0x14
ret
test esi, esi
ja 0x9f1713
jb 0x9f16b3
cmp edi, 0x3b9aca00
jae 0x9f1713
push 0
push 0x3e8
push esi
push edi
call fcn.009fa7d0
push edx
lea edx, [esp + 0xc]
push eax
push edx
push 0
push 0x3e8
push esi
push edi
call fcn.009f9e60
push 0
push 0x3e8
push edx
push eax
call fcn.009fa7d0
push edx
push eax
lea eax, [esp + 0x1c]
push eax
push 0
push 0xf4240
push esi
push edi
call fcn.009f9e60
mov ecx, dword [esp + 0x38]
push edx
push eax
push str._uI64_s_03I64u_s_03I64u
push ecx
call fcn.009f8dff
add esp, 0x28
pop edi
pop esi
add esp, 0x14
ret
push 0
push 0x3e8
push esi
push edi
call fcn.009fa7d0
push edx
lea edx, [esp + 0xc]
push eax
push edx
push 0
push 0x3e8
push esi
push edi
call fcn.009f9e60
push 0
push 0x3e8
push edx
push eax
call fcn.009fa7d0
push edx
push eax
lea eax, [esp + 0x1c]
push eax
push 0
push 0xf4240
push esi
push edi
call fcn.009f9e60
push 0
push 0x3e8
push edx
push eax
call fcn.009fa7d0
push edx
lea ecx, [esp + 0x24]
push eax
push ecx
push 0
push 0x3b9aca00
push esi
push edi
call fcn.009f9e60
push edx
mov edx, dword [esp + 0x48]
push eax
push str._I64u_s_03I64u_s_03I64u_s_03I64u
push edx
call fcn.009f8dff
add esp, 0x34
pop edi
pop esi
add esp, 0x14
ret