Function at 0x14005e6d0
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r13
push r14
lea rbp, [rsp - 0x380]
sub rsp, 0x480
mov rax, qword [0x1401970d0]
xor rax, rsp
mov qword [rbp + 0x370], rax
mov ebx, r8d
mov rdi, rdx
mov qword [rsp + 0x48], rdx
xor r13d, r13d
xorps xmm0, xmm0
cmp r8d, 0x404
jne 0x14005e739
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], r13
mov qword [rdx + 0x18], r13
lea r8d, [r13 + 0x13]
lea rdx, str.Traditional_Chinese
mov rcx, rdi
call fcn.14000e8b0
jmp 0x14005e9c5
cmp ebx, 0x804
jne 0x14005e766
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], r13
mov qword [rdx + 0x18], r13
mov r8d, reloc.WS2_32.dll_select
lea rdx, str.Simplified_Chinese
mov rcx, rdi
call fcn.14000e8b0
jmp 0x14005e9c5
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x68], r13
mov r8d, 7
lea rdx, str.English
lea rcx, [rsp + 0x50]
call fcn.14000e8b0
nop
mov r9d, 0x200
lea r8, [rsp + 0x70]
mov edx, 0x1001
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
test eax, eax
jne 0x14005e7d3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
lea rax, str._LanguageManager__GetLocaleInfoA_fail:
add rbx, rax
call fcn.1400647c0
mov rcx, rax
mov r8b, 1
mov rdx, rbx
call fcn.140063fc0
jmp 0x14005e997
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
lea rax, [rsp + 0x70]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14005e7f0
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x20]
call fcn.14000e8b0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x14005e846
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005e841
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005e9f6
call fcn.14010a970
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [rsp + 0x50], xmm0
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x60], xmm1
movdqa xmm0, xmmword [0x14016f790]
movdqu xmmword [rsp + 0x30], xmm0
mov byte [rsp + 0x20], 0
lea rcx, [rsp + 0x20]
call fcn.14000e730
lea rbx, [rsp + 0x50]
cmp qword [rsp + 0x68], 0x10
cmovae rbx, qword [rsp + 0x50]
mov r14, qword [rsp + 0x60]
cmp r14, 1
jb 0x14005e8e2
lea rsi, [r14 + rbx]
mov r8, r14
mov edx, 0x20
mov rcx, rbx
call fcn.14010ef30
test rax, rax
je 0x14005e8e2
nop dword [rax]
cmp byte [rax], 0x20
jne 0x14005e8ba
mov ecx, r13d
jmp 0x14005e8bf
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x14005e9ee
inc rax
mov r8, rsi
sub r8, rax
mov edx, 0x20
mov rcx, rax
call fcn.14010ef30
test rax, rax
jne 0x14005e8b0
mov rax, 0xffffffffffffffff
cmp rax, 0xffffffffffffffff
je 0x14005e997
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
cmp r14, rax
cmovb rax, r14
lea rdx, [rsp + 0x50]
cmp qword [rsp + 0x68], 0x10
cmovae rdx, qword [rsp + 0x50]
mov r8, rax
lea rcx, [rsp + 0x20]
call fcn.14000e8b0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x14005e966
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005e961
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005e9f6
call fcn.14010a970
movups xmm0, xmmword [rsp + 0x20]
movups xmmword [rsp + 0x50], xmm0
movups xmm1, xmmword [rsp + 0x30]
movups xmmword [rsp + 0x60], xmm1
movdqa xmm0, xmmword [0x14016f790]
movdqu xmmword [rsp + 0x30], xmm0
mov byte [rsp + 0x20], 0
lea rcx, [rsp + 0x20]
call fcn.14000e730
movups xmm0, xmmword [rsp + 0x50]
movups xmm1, xmmword [rsp + 0x60]
movups xmmword [rdi], xmm0
mov byte [rsp + 0x50], 0
mov qword [rsp + 0x68], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x60], r13
movups xmmword [rdi + 0x10], xmm1
lea rcx, [rsp + 0x50]
call fcn.14000e730
mov rax, rdi
mov rcx, qword [rbp + 0x370]
xor rcx, rsp
call fcn.14010a950
mov rbx, qword [rsp + 0x4b0]
add rsp, 0x480
pop r14
pop r13
pop rdi
pop rsi
pop rbp
ret
sub rax, rbx
jmp 0x14005e8e9
call fcn.14011340c
int3