Function at 0x14000ac38
Capabilities:
Get geographical location
Identify system language via api

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2d0]
sub rsp, 0x3d0
mov rax, qword [0x14021ca50]
xor rax, rsp
mov qword [rbp + 0x2c0], rax
mov r13, rcx
lea rcx, str.KERNEL32.DLL
xor r15d, r15d
mov r14, rdx
mov esi, r15d
call fcn.14000ab48
test rax, rax
je 0x14000ad2e
lea rdx, str.GetThreadPreferredUILanguages
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
je 0x14000ad2e
lea rcx, [rbp - 0x3e]
xor edx, edx
mov r8d, 0xc8
mov dword [rbp - 0x50], r15d
mov word [rbp - 0x40], r15w
call fcn.140163930
lea r9, [rsp + 0x30]
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x50]
lea ecx, [r15 + 0x34]
mov dword [rsp + 0x30], 0x65
call rbx
test eax, eax
je 0x14000ad2e
lea rbx, [rbp - 0x40]
mov edi, r15d
cmp word [rbp - 0x40], r15w
je 0x14000ad2e
cmp rdi, 0x14
jge 0x14000ad2e
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 0x10]
call fcn.140163908
mov r12d, eax
test eax, eax
je 0x14000ad1b
call fcn.140162678
cmp dword [rax], 0x22
je 0x14000ad1b
mov dword [rsp + rdi*4 + 0x40], r12d
inc esi
inc rdi
mov rcx, rbx
call fcn.1401634fc
lea rbx, [rbx + rax*2 + 2]
cmp word [rbx], r15w
jne 0x14000acec
call qword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
mov r15d, 0x3ff
mov r12d, 0xfc00
movzx ecx, ax
movsxd rbx, esi
mov eax, ecx
and ecx, r12d
and eax, r15d
movzx edi, ax
or ecx, edi
call qword [sym.imp.KERNEL32.dll_ConvertDefaultLocale]
inc esi
mov ecx, edi
mov dword [rsp + rbx*4 + 0x40], eax
movsxd rbx, esi
call qword [sym.imp.KERNEL32.dll_ConvertDefaultLocale]
mov dword [rsp + rbx*4 + 0x40], eax
inc esi
call qword [sym.imp.KERNEL32.dll_GetSystemDefaultUILanguage]
movzx ecx, ax
movsxd rbx, esi
mov eax, ecx
and ecx, r12d
and eax, r15d
movzx edi, ax
or ecx, edi
call qword [sym.imp.KERNEL32.dll_ConvertDefaultLocale]
inc esi
mov ecx, edi
mov dword [rsp + rbx*4 + 0x40], eax
movsxd rbx, esi
call qword [sym.imp.KERNEL32.dll_ConvertDefaultLocale]
xor r15d, r15d
inc esi
mov dword [rsp + rbx*4 + 0x40], eax
cmp dword [0x14021e8b8], r15d
jne 0x14000adbf
movsxd rax, esi
inc esi
mov dword [rsp + rax*4 + 0x40], 0x800
movsxd rsi, esi
mov rbx, r15
test rsi, rsi
jle 0x14000aee9
mov ecx, dword [rsp + rbx*4 + 0x40]
cmp ecx, 0x800
jne 0x14000ae19
lea r8, [0x14018ac90]
lea rcx, [rbp - 0x50]
mov edx, 4
call fcn.1401624f8
test eax, eax
je 0x14000ae35
cmp eax, 0xc
je 0x14000af1b
cmp eax, 0x16
je 0x14000af15
cmp eax, 0x22
je 0x14000af15
cmp eax, 0x50
je 0x14000ae35
call fcn.140013a3c
int3
mov r9d, 4
lea r8, [rbp - 0x50]
lea edx, [r9 - 1]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x14000aedd
call fcn.140162678
mov r12d, dword [rax]
call fcn.140162678
mov edx, 0x112
mov dword [rax], r15d
lea rax, [rbp - 0x50]
lea r8d, [rdx - 1]
mov qword [rsp + 0x28], rax
lea rcx, [rbp + 0x90]
mov r9, r13
mov qword [rsp + 0x20], r14
call fcn.14016260c
mov edi, eax
call fcn.140162678
cmp dword [rax], r15d
je 0x14000aeac
call fcn.140162678
cmp dword [rax], r15d
je 0x14000aeb4
cmp dword [rax], 0xc
je 0x14000af2c
cmp dword [rax], 0x16
je 0x14000af21
cmp dword [rax], 0x22
je 0x14000af21
cmp dword [rax], 0x50
je 0x14000aeb4
mov ecx, 0x80004005
call fcn.14000a340
int3
call fcn.140162678
mov dword [rax], r12d
cmp edi, 0xffffffff
je 0x14000aed5
cmp edi, 0x112
jae 0x14000aed5
lea rcx, [rbp + 0x90]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
jmp 0x14000aed8
mov rax, r15
test rax, rax
jne 0x14000aeeb
inc rbx
cmp rbx, rsi
jl 0x14000adce
xor eax, eax
mov rcx, qword [rbp + 0x2c0]
xor rcx, rsp
call fcn.140161940
mov rbx, qword [rsp + 0x420]
add rsp, 0x3d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140013a3c
int3
call fcn.1400139f4
int3
mov ecx, 0x80070057
call fcn.14000a340
int3
mov ecx, 0x8007000e
call fcn.14000a340
int3