Function at 0x1401a8f70
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x47]
sub rsp, 0xd0
mov ebx, r8d
mov rdi, rdx
mov rsi, rcx
xor r14d, r14d
mov dword [rbp - 0x59], r14d
lea rax, [0x1404921a0]
mov qword [rbp + 0x67], rax
mov edx, 0x40
test r9d, r9d
cmovne edx, r9d
mov dword [rbp - 0x45], edx
cmp edx, 0x40
jle 0x1401a8fde
movsxd rcx, edx
add rcx, rcx
call fcn.14023c100
mov qword [rbp - 0x41], rax
test rax, rax
jne 0x1401a8fd6
call fcn.1400ab7c0
mov rax, qword [rbp - 0x41]
mov edx, dword [rbp - 0x45]
mov dword [rbp - 0x49], edx
jmp 0x1401a8fed
lea rax, [rbp - 0x39]
mov qword [rbp - 0x41], rax
mov dword [rbp - 0x49], 0x40
mov r9d, edx
mov r8, rax
mov edx, ebx
mov ecx, dword [rsi]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
jne 0x1401a90b2
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp ebx, 0x50
jne 0x1401a9055
test eax, eax
jne 0x1401a9055
lea rdx, [rbp + 0x67]
mov rcx, rdi
call fcn.1400f1430
nop
lea rax, [rbp - 0x39]
mov rcx, qword [rbp - 0x41]
cmp rcx, rax
je 0x1401a9034
call fcn.14023c0f0
nop
mov rax, qword [rbp + 0x67]
mov ecx, dword [rax]
test ecx, ecx
je 0x1401a9189
cmp ecx, 0xffffffff
je 0x1401a919d
mov ebx, 0xffffffff
jmp 0x1401a917c
cmp eax, 0x7a
je 0x1401a9072
mov eax, dword [rdi + 8]
and eax, 0xc0000000
btr eax, 0x1e
bts eax, 0x1f
mov dword [rdi + 8], eax
mov qword [rdi], r14
jmp 0x1401a9021
xor r9d, r9d
xor r8d, r8d
mov edx, ebx
mov ecx, dword [rsi]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
mov edx, eax
test eax, eax
je 0x1401a905a
mov r8d, eax
cmp eax, dword [rbp - 0x49]
cmovl r8d, dword [rbp - 0x49]
lea rcx, [rbp - 0x49]
call fcn.140191170
mov r9d, dword [rbp - 0x45]
mov r8, qword [rbp - 0x41]
mov edx, ebx
mov ecx, dword [rsi]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x1401a905a
mov rdx, qword [rbp - 0x41]
cmp ebx, 0x50
jne 0x1401a90c5
cmp word [rdx], 0
je 0x1401a9014
mov ebx, 0xffffffff
mov r8d, ebx
lea rcx, [rbp - 0x61]
call fcn.1400ba830
nop
mov rcx, qword [rax]
mov qword [rbp - 0x69], rcx
lea rcx, [0x140484d90]
mov qword [rax], rcx
mov rax, qword [rbp - 0x61]
mov ecx, dword [rax]
test ecx, ecx
je 0x1401a9105
cmp ecx, ebx
je 0x1401a911a
mov rax, qword [rbp - 0x61]
mov ecx, ebx
lock xadd dword [rax], ecx
cmp ecx, 1
jne 0x1401a911a
mov edx, 2
mov r8d, 8
mov rcx, qword [rbp - 0x61]
call fcn.1400affb0
nop
lea rdx, [rbp - 0x69]
mov rcx, rdi
call fcn.1400f1430
nop
mov rax, qword [rbp - 0x69]
mov ecx, dword [rax]
test ecx, ecx
je 0x1401a9145
cmp ecx, 0xffffffff
je 0x1401a915a
mov rax, qword [rbp - 0x69]
mov ecx, ebx
lock xadd dword [rax], ecx
cmp ecx, 1
jne 0x1401a915a
mov edx, 2
mov r8d, 8
mov rcx, qword [rbp - 0x69]
call fcn.1400affb0
nop
lea rax, [rbp - 0x39]
mov rcx, qword [rbp - 0x41]
cmp rcx, rax
je 0x1401a916d
call fcn.14023c0f0
nop
mov rax, qword [rbp + 0x67]
mov ecx, dword [rax]
test ecx, ecx
je 0x1401a9189
cmp ecx, 0xffffffff
je 0x1401a919d
mov rax, qword [rbp + 0x67]
lock xadd dword [rax], ebx
cmp ebx, 1
jne 0x1401a919d
mov r8d, 8
mov edx, 2
mov rcx, qword [rbp + 0x67]
call fcn.1400affb0
mov rax, rdi
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret