Function at 0x1401a91c0
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0x100
mov rax, qword [0x140492fc0]
xor rax, rsp
mov qword [rbp + 0x47], rax
mov rdi, rdx
mov rbx, rcx
mov qword [rsp + 0x28], rdx
mov dword [rbp - 0x75], 0
test r8d, r8d
je 0x1401a9446
sub r8d, 1
je 0x1401a9395
cmp r8d, 1
jne 0x1401a9262
mov dword [rbp - 0x65], 0x40
lea rax, [rbp - 0x59]
mov qword [rbp - 0x61], rax
mov dword [rbp - 0x69], 0x40
mov r9d, 0x40
lea r8, [rbp - 0x59]
mov edx, 0x1008
mov ecx, dword [rcx]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
jne 0x1401a92da
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
je 0x1401a92a0
lea rax, [rbp - 0x59]
mov rcx, qword [rbp - 0x61]
cmp rcx, rax
je 0x1401a9262
call fcn.14023c0f0
mov eax, dword [rdi + 8]
and eax, 0xc0000000
btr eax, 0x1e
bts eax, 0x1f
mov dword [rdi + 8], eax
mov qword [rdi], 0
mov rax, rdi
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.140229fa0
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
mov r8d, 0xff
cmp dword [rbp - 0x69], r8d
cmovg r8d, dword [rbp - 0x69]
mov edx, 0xff
lea rcx, [rbp - 0x69]
call fcn.140191170
mov r9d, dword [rbp - 0x65]
mov r8, qword [rbp - 0x61]
mov edx, 0x1008
mov ecx, dword [rbx]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x1401a9250
mov ebx, 0xffffffff
mov r8d, ebx
mov rdx, qword [rbp - 0x61]
lea rcx, [rsp + 0x28]
call fcn.1400ba830
nop
mov rcx, qword [rax]
mov qword [rsp + 0x20], rcx
lea rcx, [0x140484d90]
mov qword [rax], rcx
mov rax, qword [rsp + 0x28]
mov ecx, dword [rax]
test ecx, ecx
je 0x1401a9322
cmp ecx, ebx
je 0x1401a9338
mov rax, qword [rsp + 0x28]
mov ecx, ebx
lock xadd dword [rax], ecx
cmp ecx, 1
jne 0x1401a9338
mov edx, 2
mov r8d, 8
mov rcx, qword [rsp + 0x28]
call fcn.1400affb0
nop
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.1400f1430
nop
mov rax, qword [rsp + 0x20]
mov ecx, dword [rax]
test ecx, ecx
je 0x1401a9364
cmp ecx, 0xffffffff
je 0x1401a937a
mov rax, qword [rsp + 0x20]
lock xadd dword [rax], ebx
cmp ebx, 1
jne 0x1401a937a
mov edx, 2
mov r8d, 8
mov rcx, qword [rsp + 0x20]
call fcn.1400affb0
nop
lea rax, [rbp - 0x59]
mov rcx, qword [rbp - 0x61]
cmp rcx, rax
je 0x1401a927c
call fcn.14023c0f0
jmp 0x1401a927c
mov r9d, reloc.WS2_32.dll_listen
lea r8, [rbp + 0x27]
mov edx, setsockopt
mov ecx, dword [rcx]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x1401a9262
mov ebx, 0xffffffff
mov r8d, ebx
lea rdx, [rbp + 0x27]
lea rcx, [rsp + 0x28]
call fcn.1400ba830
nop
mov rcx, qword [rax]
mov qword [rsp + 0x20], rcx
lea rcx, [0x140484d90]
mov qword [rax], rcx
mov rax, qword [rsp + 0x28]
mov ecx, dword [rax]
test ecx, ecx
je 0x1401a93fc
cmp ecx, ebx
je 0x1401a9412
mov rax, qword [rsp + 0x28]
mov ecx, ebx
lock xadd dword [rax], ecx
cmp ecx, 1
jne 0x1401a9412
mov edx, 2
mov r8d, 8
mov rcx, qword [rsp + 0x28]
call fcn.1400affb0
nop
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.1400f1430
nop
mov rax, qword [rsp + 0x20]
mov ecx, dword [rax]
test ecx, ecx
je 0x1401a94f7
cmp ecx, 0xffffffff
je 0x1401a927c
mov rax, qword [rsp + 0x20]
lock xadd dword [rax], ebx
jmp 0x1401a94ee
mov r9d, 9
lea r8, [rbp + 0x27]
mov edx, reloc.WS2_32.dll_setsockopt
mov ecx, dword [rcx]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x1401a9262
mov ebx, 0xffffffff
mov r8d, ebx
lea rdx, [rbp + 0x27]
lea rcx, [rsp + 0x28]
call fcn.1400ba830
nop
mov rcx, qword [rax]
mov qword [rsp + 0x20], rcx
lea rcx, [0x140484d90]
mov qword [rax], rcx
mov rax, qword [rsp + 0x28]
mov ecx, dword [rax]
test ecx, ecx
je 0x1401a94ad
cmp ecx, ebx
je 0x1401a94c3
mov rax, qword [rsp + 0x28]
mov ecx, ebx
lock xadd dword [rax], ecx
cmp ecx, 1
jne 0x1401a94c3
mov edx, 2
mov r8d, 8
mov rcx, qword [rsp + 0x28]
call fcn.1400affb0
nop
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.1400f1430
nop
mov rax, qword [rsp + 0x20]
mov ecx, dword [rax]
test ecx, ecx
je 0x1401a94f7
cmp ecx, 0xffffffff
je 0x1401a927c
mov rcx, qword [rsp + 0x20]
lock xadd dword [rcx], ebx
cmp ebx, 1
jne 0x1401a927c
mov r8d, 8
mov edx, 2
mov rcx, qword [rsp + 0x20]
call fcn.1400affb0
jmp 0x1401a927c