Function at 0x1400ce010
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xc0
mov rax, qword [0x1419a1b80]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov rdi, r9
movsxd r12, r8d
mov rbx, rdx
mov r13, rcx
mov qword [rbp + 0x17], rdx
mov qword [rbp - 0x31], r9
xor r15d, r15d
mov dword [rbp - 0x59], r15d
movzx eax, byte [0x1419a4bed]
nop
cmp al, 0xfe
jg 0x1400ce066
mov esi, r15d
jmp 0x1400ce094
mov ecx, dword [0x1419a6f28]
mov rax, qword gs:[0x58]
mov edx, 0x58
mov rax, qword [rax + rcx*8]
mov ecx, dword [rdx + rax]
cmp dword [0x1419a4c98], ecx
jg 0x1400ce8d8
lea rsi, [0x1419a4c78]
cmp r12d, 0x2e
ja case.0x1400ce0b0.15
lea r14, [0x140000000]
mov ecx, dword [r14 + r12*4 + 0xce93c]
add rcx, r14
jmp rcx
mov r8d, 0xe
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd4e0
jmp 0x1400ce880
mov r8d, 0xf
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd4e0
jmp 0x1400ce880
mov r8d, 0x51
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd4e0
jmp 0x1400ce880
mov r8d, 0x50
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd4e0
jmp 0x1400ce880
xor r8d, r8d
mov rdx, rbx
mov rcx, rsi
call fcn.1400ccf10
jmp 0x1400ce880
mov r8d, 1
mov rdx, rbx
mov rcx, rsi
call fcn.1400ccf10
jmp 0x1400ce880
xor r8d, r8d
mov rdx, rbx
mov rcx, rsi
call fcn.1400cf030
jmp 0x1400ce880
mov r8d, 1
mov rdx, rbx
mov rcx, rsi
call fcn.1400cf030
jmp 0x1400ce880
xor r8d, r8d
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd100
jmp 0x1400ce880
mov r8d, 1
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd100
jmp 0x1400ce880
xor edx, edx
mov rcx, rdi
call fcn.1400a5de0
mov r8d, eax
xor r9d, r9d
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd280
jmp 0x1400ce880
xor edx, edx
mov rcx, rdi
call fcn.1400a5de0
lea ecx, [rax - 1]
cmp ecx, 6
ja 0x1400ce1ff
movsxd r8, eax
mov r8d, dword [r14 + r8*4 + 0x222b84]
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd4e0
jmp 0x1400ce880
xor edx, edx
mov rcx, rdi
call fcn.1400a5de0
lea ecx, [rax - 1]
cmp ecx, 6
ja 0x1400ce1ff
movsxd r8, eax
mov r8d, dword [r14 + r8*4 + 0x222bc4]
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd4e0
jmp 0x1400ce880
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x71], xmm0
mov qword [rbp - 0x61], r15
lea rdx, [rbp - 0x71]
mov rcx, rbx
call fcn.1400a3810
mov rax, qword [rbp - 0x71]
test rax, rax
je 0x1400ce880
mov rsi, 0xffffffffffffffff
lock xadd dword [rax], esi
cmp esi, 1
jne 0x1400ce880
mov edx, 2
mov r8d, 8
mov rcx, qword [rbp - 0x71]
call fcn.140030bb0
jmp 0x1400ce880
xor edx, edx
mov rcx, rdi
call fcn.1400a5de0
mov r8d, eax
xor r9d, r9d
mov rdx, rbx
mov rcx, rsi
call fcn.1400cdbf0
jmp 0x1400ce880
xor edx, edx
mov rcx, rdi
call fcn.1400a5de0
lea ecx, [rax - 1]
cmp ecx, 0xb
ja case.0x1400ce0b0.15
movsxd r8, eax
mov r8d, dword [r14 + r8*4 + 0x222c14]
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd4e0
jmp 0x1400ce880
xor edx, edx
mov rcx, rdi
call fcn.1400a5de0
mov r8d, eax
mov r9d, 1
mov rdx, rbx
mov rcx, rsi
call fcn.1400cdbf0
jmp 0x1400ce880
xor edx, edx
mov rcx, rdi
call fcn.1400a5de0
lea ecx, [rax - 1]
cmp ecx, 0xb
ja case.0x1400ce0b0.15
movsxd r8, eax
mov r8d, dword [r14 + r8*4 + 0x222be4]
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd4e0
jmp 0x1400ce880
lea rdx, [rbp + 0x17]
mov rcx, rdi
call fcn.1400a5c20
mov r9d, 1
mov r8, qword [rax]
mov rdx, rbx
mov rcx, rsi
call fcn.1400cfb40
jmp 0x1400ce880
lea rdx, [rbp + 0x17]
mov rcx, rdi
call fcn.1400a5c20
xor r9d, r9d
mov r8, qword [rax]
mov rdx, rbx
mov rcx, rsi
call fcn.1400cfb40
jmp 0x1400ce880
lea rdx, [rbp - 0x79]
mov rcx, rdi
call fcn.1400a66f0
mov r9d, 1
mov r8d, dword [rax]
mov rdx, rbx
mov rcx, rsi
call fcn.1400cfdf0
jmp 0x1400ce880
lea rdx, [rbp - 0x79]
mov rcx, rdi
call fcn.1400a66f0
xor r9d, r9d
mov r8d, dword [rax]
mov rdx, rbx
mov rcx, rsi
call fcn.1400cfdf0
jmp 0x1400ce880
lea rdx, [rbp + 0x17]
mov rcx, rdi
call fcn.1400a5ce0
nop
mov r9d, 1
mov r8, rax
mov rdx, rbx
mov rcx, rsi
call fcn.1400cf9c0
nop
lea rcx, [rbp + 0x17]
call fcn.140066ff0
jmp 0x1400ce880
lea rdx, [rbp + 0x17]
mov rcx, rdi
call fcn.1400a5ce0
nop
xor r9d, r9d
mov r8, rax
mov rdx, rbx
mov rcx, rsi
call fcn.1400cf9c0
nop
lea rcx, [rbp + 0x17]
call fcn.140066ff0
jmp 0x1400ce880
mov rdx, rbx
mov rcx, rsi
call fcn.1400d1e40
jmp 0x1400ce880
mov edx, 0x400
lea rcx, [rbp - 0x51]
call fcn.1400cd720
nop
mov rdx, rax
lea rcx, [rbp - 0x71]
call fcn.140059760
nop
mov rcx, qword [rax + 0x10]
mov rax, qword [rax + 8]
mov qword [rbp - 0x29], rcx
mov qword [rbp - 0x21], rax
movaps xmm0, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x29], xmm0
lea rdx, [rbp - 0x29]
lea rcx, [rbp + 0x17]
call fcn.14005ef10
mov ecx, dword [rax]
mov dword [rbp - 0x79], ecx
mov dword [rbp - 0x39], ecx
movzx r15d, word [rax + 4]
mov rsi, 0xffffffffffffffff
mov r14d, 2
mov rcx, qword [rbp - 0x71]
test rcx, rcx
je 0x1400ce474
mov eax, esi
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x1400ce474
mov r8d, 8
mov edx, r14d
mov rcx, qword [rbp - 0x71]
call fcn.140030bb0
nop
mov rax, qword [rbp - 0x51]
test rax, rax
je 0x1400ce49a
lock xadd dword [rax], esi
cmp esi, 1
jne 0x1400ce49a
mov edx, 1
mov r8d, 8
mov rcx, qword [rbp - 0x51]
call fcn.140030bb0
test r12d, r12d
jne 0x1400ce4b0
movzx edx, word [rbp - 0x79]
mov rcx, rbx
call fcn.1400a3890
jmp 0x1400ce880
cmp r12d, 0x24
jne 0x1400ce50e
movzx eax, word [rbp - 0x37]
test ax, ax
je 0x1400ce4c5
mov r14d, dword [rbp - 0x59]
jmp 0x1400ce4e7
mov rax, qword [r13]
lea rdx, [rbp + 0x17]
mov rcx, r13
mov rax, qword [rax + 0x10]
call qword [case.0x1400a0d2d.0]
nop
mov dword [rbp - 0x59], r14d
mov rcx, rax
call fcn.140060620
movzx edx, ax
mov rcx, rbx
call fcn.1400a3890
or r14d, 1
test r14b, 2
je 0x1400ce880
lea rcx, [rbp + 0x17]
call fcn.140059e10
jmp 0x1400ce880
test r15w, r15w
je 0x1400ce51a
mov r14d, dword [rbp - 0x59]
jmp 0x1400ce546
mov rax, qword [r13]
lea rdx, [rbp + 0x17]
mov rcx, r13
mov rax, qword [rax + 0x10]
call qword [case.0x1400a0d2d.0]
nop
mov r14d, 4
mov dword [rbp - 0x59], r14d
mov rcx, rax
call fcn.140060c70
movzx r15d, ax
movzx edx, r15w
mov rcx, rbx
call fcn.1400a3890
or r14d, 1
test r14b, 4
je 0x1400ce880
lea rcx, [rbp + 0x17]
call fcn.140059e10
jmp 0x1400ce880
mov r9d, 2
lea r8, [rbp - 0x79]
mov edx, 0xd
mov ecx, dword [rsi]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x1400ce59b
cmp word [rbp - 0x79], 0x31
jne 0x1400ce59b
cmp word [rbp - 0x77], 0
je 0x1400ce7b9
xor edx, edx
mov rcx, rbx
call fcn.1400a3890
jmp 0x1400ce880
mov r8d, 0x7b
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd4e0
jmp 0x1400ce880
mov r9d, 0xf
lea r8, [rbp - 0x29]
mov edx, 0x28
mov ecx, dword [rsi]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je case.0x1400ce0b0.15
mov rsi, 0xffffffffffffffff
mov r8, rsi
lea rdx, [rbp - 0x29]
lea rcx, [rbp - 0x51]
call fcn.140017720
nop
mov rcx, qword [rax]
mov qword [rbp - 0x71], rcx
mov rcx, qword [rax + 8]
mov qword [rbp - 0x69], rcx
mov rcx, qword [rax + 0x10]
mov qword [rbp - 0x61], rcx
mov qword [rax], r15
mov qword [rax + 8], r15
mov qword [rax + 0x10], r15
mov rcx, qword [rbp - 0x51]
test rcx, rcx
mov r14d, 2
je 0x1400ce645
mov eax, esi
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x1400ce645
mov r8d, 8
mov edx, r14d
mov rcx, qword [rbp - 0x51]
call fcn.140030bb0
lea rdx, [rbp - 0x71]
mov rcx, rbx
call fcn.1400a3810
mov rax, qword [rbp - 0x71]
test rax, rax
je 0x1400ce880
lock xadd dword [rax], esi
jmp 0x1400ce799
mov r9d, 0xf
lea r8, [rbp - 0x29]
mov edx, 0x29
mov ecx, dword [rsi]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je case.0x1400ce0b0.15
mov rsi, 0xffffffffffffffff
mov r8, rsi
lea rdx, [rbp - 0x29]
lea rcx, [rbp - 0x51]
call fcn.140017720
nop
mov rcx, qword [rax]
mov qword [rbp - 0x71], rcx
mov rcx, qword [rax + 8]
mov qword [rbp - 0x69], rcx
mov rcx, qword [rax + 0x10]
mov qword [rbp - 0x61], rcx
mov qword [rax], r15
mov qword [rax + 8], r15
mov qword [rax + 0x10], r15
jmp 0x1400ce619
mov r9d, 4
lea r8, [rbp + 0x17]
mov edx, 0x100c
mov ecx, dword [rsi]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x1400ce7b9
mov rsi, 0xffffffffffffffff
mov r8, rsi
lea rdx, [rbp + 0x17]
lea rcx, [rbp - 0x51]
call fcn.140017720
nop
mov r12, qword [rax]
mov qword [rbp - 0x71], r12
mov r13, qword [rax + 8]
mov qword [rbp - 0x69], r13
mov rcx, qword [rax + 0x10]
mov qword [rbp - 0x61], rcx
mov qword [rax], r15
mov qword [rax + 8], r15
mov qword [rax + 0x10], r15
mov r14d, 2
mov rcx, qword [rbp - 0x51]
test rcx, rcx
je 0x1400ce74e
mov eax, esi
lock xadd dword [rcx], eax
cmp eax, 1
jne 0x1400ce74a
mov r8d, 8
mov edx, r14d
mov rcx, qword [rbp - 0x51]
call fcn.140030bb0
mov r12, qword [rbp - 0x71]
mov rax, qword [rbp - 0x61]
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x21], r13
movaps xmm0, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x29], xmm0
xor edx, edx
mov r8d, 0xa
lea rcx, [rbp - 0x29]
call fcn.14001cce0
mov ecx, eax
cmp rcx, rax
cmove r15d, eax
lea edx, [r15 + 1]
mov rcx, rbx
call fcn.1400a38c0
nop
test r12, r12
je 0x1400ce880
lock xadd dword [r12], esi
cmp esi, 1
jne 0x1400ce880
mov r8d, 8
mov rdx, r14
mov rcx, qword [rbp - 0x71]
call fcn.140030bb0
jmp 0x1400ce880
mov edx, 1
mov rcx, rbx
call fcn.1400a3890
jmp 0x1400ce880
xor edx, edx
mov rcx, rdi
call fcn.1400a67a0
mov r8d, eax
mov rdx, rbx
mov rcx, rsi
call fcn.1400ccb60
jmp 0x1400ce880
mov rdx, rdi
lea rcx, [rbp - 0x29]
call fcn.1400cbfe0
nop
lea r8, [rbp - 0x29]
mov rdx, rbx
mov rcx, rsi
call fcn.1400cf220
nop
mov rax, qword [rbp - 9]
test rax, rax
je 0x1400ce832
mov rsi, 0xffffffffffffffff
lock xadd dword [rax], esi
cmp esi, 1
jne 0x1400ce832
mov edx, 2
mov r8d, 8
mov rcx, qword [rbp - 9]
call fcn.140030bb0
lea rcx, [rbp - 0x29]
call fcn.1400a3b80
jmp 0x1400ce880
mov rdx, rbx
mov rcx, rsi
call fcn.1400d0180
jmp 0x1400ce880
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov dword [rsi], eax
mov dword [rsi + 4], r15d
lea rcx, [rsi + 8]
xor edx, edx
call fcn.14001bf70
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
xor eax, eax
mov qword [rbx + 0x10], rax
mov rax, qword [rbx + 0x18]
and rax, 0xfffffffffffffffe
or rax, 2
and eax, 3
mov qword [rbx + 0x18], rax
mov rcx, rdi
call fcn.1400a3b80
mov rax, rbx
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.14016c210
mov rbx, qword [rsp + 0x110]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r8d, 4
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd4e0
jmp 0x1400ce880
mov r8d, 8
mov rdx, rbx
mov rcx, rsi
call fcn.1400cd4e0
jmp 0x1400ce880
lea rcx, [0x1419a4c98]
call fcn.14016c7fc
cmp dword [0x1419a4c98], 0xffffffff
jne 0x1400ce08d
mov dword [0x1419a4c7c], r15d
xorps xmm0, xmm0
movdqu xmmword [0x1419a4c80], xmm0
mov qword [0x1419a4c90], r15
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov dword [0x1419a4c78], eax
mov byte [0x1419a4bed], 0xff
lea rcx, [0x14019d5b0]
call fcn.14016c4c8
lea rcx, [0x1419a4c98]
call fcn.14016c790
jmp 0x1400ce08d