Function at 0x1400071d0
Capabilities:
Get geographical location
Get keyboard layout
Identify system language via api

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
lea rbp, [rax - 0x228]
sub rsp, 0x310
mov qword [rbp - 0x78], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1400354c0]
xor rax, rsp
mov qword [rbp + 0x200], rax
mov rsi, rdx
mov r14, rcx
call fcn.1400096b0
mov rdx, rax
mov r8, rsi
mov rcx, r14
call fcn.140009b10
mov ebx, eax
cmp eax, 0xffffffff
jne 0x140007897
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetKeyboardLayout]
mov rdx, rax
mov r8, rsi
mov rcx, r14
call fcn.140009b10
mov ebx, eax
cmp eax, 0xffffffff
jne 0x140007897
xor r15d, r15d
mov qword [rbp - 0x68], r15
lea rax, [rbp - 0x70]
mov qword [rsp + 0x20], rax
lea r9, [0x140021c90]
xor edx, edx
lea r8d, [rbx + 0x18]
lea rcx, [0x140021810]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x1400072b2
mov rcx, qword [rbp - 0x70]
call qword [sym.imp.ole32.dll_OleRun]
mov ebx, eax
test eax, eax
js 0x1400072a4
mov rcx, qword [rbp - 0x70]
mov rax, qword [rcx]
lea r8, [rbp - 0x68]
lea rdx, [0x1400217e0]
call qword [rax]
mov ebx, eax
mov rcx, qword [rbp - 0x70]
mov rax, qword [rcx]
call qword [rax + 0x10]
test ebx, ebx
jns 0x1400072b6
mov qword [rbp - 0x68], r15
mov rbx, r15
mov qword [rsp + 0x30], rbx
lea rax, [rsp + 0x50]
mov qword [rsp + 0x38], rax
mov ecx, 0x18
call fcn.1400126cc
mov rdi, rax
mov qword [rsp + 0x70], rax
test rax, rax
je 0x140007304
xor eax, eax
mov qword [rdi], rax
mov qword [rdi + 0x10], rax
mov qword [rdi + 8], r15
mov dword [rdi + 0x10], 1
lea rcx, str.HotkeyActionRotateZeroDefault
call fcn.140010a60
mov qword [rdi], rax
jmp 0x140007307
mov rdi, r15
mov qword [rsp + 0x50], rdi
test rdi, rdi
jne 0x14000731c
mov ecx, 0x8007000e
call fcn.1400109b0
nop
mov rcx, qword [rbp - 0x68]
test rcx, rcx
jne 0x140007330
mov ecx, 0x80004003
call fcn.1400109b0
nop
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x78]
call fcn.14000a6c0
lea rcx, [rsp + 0x30]
cmp rcx, rax
je 0x14000735f
mov rbx, qword [rax]
mov qword [rsp + 0x30], rbx
test rbx, rbx
je 0x14000735f
lock inc dword [rbx + 0x10]
mov rbx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x14000736e
call fcn.14000c760
test rbx, rbx
je 0x14000788c
mov rcx, qword [rbx]
test rcx, rcx
je 0x14000739d
call qword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x14000739d
mov r8, qword [rbx]
mov edx, 0x40
lea rcx, [rbp + 0x100]
call fcn.140012dc0
cmp dword [rbx + 0x10], 1
jne 0x14000788c
mov qword [rbx], r15
mov rcx, rbx
call fcn.14000c760
mov rbx, r15
mov qword [rsp + 0x30], rbx
lea rax, [rsp + 0x60]
mov qword [rsp + 0x58], rax
mov ecx, 0x18
call fcn.1400126cc
mov rdi, rax
mov qword [rsp + 0x48], rax
test rax, rax
je 0x140007400
xor eax, eax
mov qword [rdi], rax
mov qword [rdi + 0x10], rax
mov qword [rdi + 8], r15
mov dword [rdi + 0x10], 1
lea rcx, str.HotkeyActionRotate90Default
call fcn.140010a60
mov qword [rdi], rax
jmp 0x140007403
mov rdi, r15
mov qword [rsp + 0x60], rdi
test rdi, rdi
jne 0x140007418
mov ecx, 0x8007000e
call fcn.1400109b0
nop
mov rcx, qword [rbp - 0x68]
test rcx, rcx
jne 0x14000742c
mov ecx, 0x80004003
call fcn.1400109b0
nop
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x80]
call fcn.14000a6c0
lea rcx, [rsp + 0x30]
cmp rcx, rax
je 0x14000745a
mov rbx, qword [rax]
mov qword [rsp + 0x30], rbx
test rbx, rbx
je 0x14000745a
lock inc dword [rbx + 0x10]
mov rbx, qword [rsp + 0x30]
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x140007468
call fcn.14000c760
test rbx, rbx
je 0x140007881
mov rcx, qword [rbx]
test rcx, rcx
je 0x140007494
call qword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x140007494
mov r8, qword [rbx]
mov edx, 0x40
lea rcx, [rbp]
call fcn.140012dc0
cmp dword [rbx + 0x10], 1
jne 0x140007881
mov qword [rbx], r15
mov rcx, rbx
call fcn.14000c760
mov rbx, r15
mov qword [rsp + 0x30], rbx
lea rax, [rsp + 0x68]
mov qword [rsp + 0x48], rax
mov ecx, 0x18
call fcn.1400126cc
mov rdi, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1400074f7
xor eax, eax
mov qword [rdi], rax
mov qword [rdi + 0x10], rax
mov qword [rdi + 8], r15
mov dword [rdi + 0x10], 1
lea rcx, str.HotkeyActionRotate270Default
call fcn.140010a60
mov qword [rdi], rax
jmp 0x1400074fa
mov rdi, r15
mov qword [rsp + 0x68], rdi
test rdi, rdi
jne 0x14000750f
mov ecx, 0x8007000e
call fcn.1400109b0
nop
mov rcx, qword [rbp - 0x68]
test rcx, rcx
jne 0x140007523
mov ecx, 0x80004003
call fcn.1400109b0
nop
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x70]
call fcn.14000a6c0
lea rcx, [rsp + 0x30]
cmp rcx, rax
je 0x140007552
mov rbx, qword [rax]
mov qword [rsp + 0x30], rbx
test rbx, rbx
je 0x140007552
lock inc dword [rbx + 0x10]
mov rbx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140007561
call fcn.14000c760
test rbx, rbx
je 0x140007876
mov rcx, qword [rbx]
test rcx, rcx
je 0x140007590
call qword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x140007590
mov r8, qword [rbx]
mov edx, 0x40
lea rcx, [rbp + 0x80]
call fcn.140012dc0
cmp dword [rbx + 0x10], 1
jne 0x140007876
mov qword [rbx], r15
mov rcx, rbx
call fcn.14000c760
mov rbx, r15
mov qword [rsp + 0x30], rbx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x48], rax
mov ecx, 0x18
call fcn.1400126cc
mov rdi, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1400075f3
xor eax, eax
mov qword [rdi], rax
mov qword [rdi + 0x10], rax
mov qword [rdi + 8], r15
mov dword [rdi + 0x10], 1
lea rcx, str.HotkeyActionRotate180Default
call fcn.140010a60
mov qword [rdi], rax
jmp 0x1400075f6
mov rdi, r15
mov qword [rsp + 0x40], rdi
test rdi, rdi
jne 0x14000760b
mov ecx, 0x8007000e
call fcn.1400109b0
nop
mov rcx, qword [rbp - 0x68]
test rcx, rcx
jne 0x14000761f
mov ecx, 0x80004003
call fcn.1400109b0
nop
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x38]
call fcn.14000a6c0
lea rcx, [rsp + 0x30]
cmp rcx, rax
je 0x14000764e
mov rbx, qword [rax]
mov qword [rsp + 0x30], rbx
test rbx, rbx
je 0x14000764e
lock inc dword [rbx + 0x10]
mov rbx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x14000765d
call fcn.14000c760
test rbx, rbx
je 0x14000786b
mov rcx, qword [rbx]
test rcx, rcx
je 0x14000768c
call qword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
je 0x14000768c
mov r8, qword [rbx]
mov edx, 0x40
lea rcx, [rbp + 0x180]
call fcn.140012dc0
cmp dword [rbx + 0x10], 1
jne 0x14000786b
mov qword [rbx], r15
mov rcx, rbx
call fcn.14000c760
mov rdx, rsi
lea rcx, [rbp + 0x100]
call qword [sym.imp.SHLWAPI.dll_StrStrW]
test rax, rax
je 0x1400076bf
lea rdx, [0x140023958]
jmp 0x140007714
mov rdx, rsi
lea rcx, [rbp]
call qword [sym.imp.SHLWAPI.dll_StrStrW]
test rax, rax
je 0x1400076da
lea rdx, str.Left
jmp 0x140007714
mov rdx, rsi
lea rcx, [rbp + 0x80]
call qword [sym.imp.SHLWAPI.dll_StrStrW]
test rax, rax
je 0x1400076f8
lea rdx, str.Right
jmp 0x140007714
mov rdx, rsi
lea rcx, [rbp + 0x180]
call qword [sym.imp.SHLWAPI.dll_StrStrW]
test rax, rax
je 0x14000771d
lea rdx, str.Down
mov rcx, rsi
call qword [sym.imp.SHLWAPI.dll_StrCpyW]
call fcn.1400096b0
mov rdx, rax
mov r8, rsi
mov rcx, r14
call fcn.140009b10
mov ebx, eax
mov rcx, qword [rbp - 0x68]
test rcx, rcx
je 0x140007741
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp ebx, 0xffffffff
jne 0x140007897
xor eax, eax
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rax
mov word [rbp - 0x50], ax
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
mov word [rbp - 0x20], ax
xor r9d, r9d
lea r8, str._04x
lea edx, [rbx + 0xa]
lea rcx, [rbp - 0x60]
call fcn.140013108
call qword [sym.imp.KERNEL32.dll_GetSystemDefaultLangID]
movzx ecx, ax
and ecx, 0x3ff
lea r9d, [rbx + 0xa]
lea r8, [rbp - 0x30]
lea edx, [rbx + 2]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x1400077d9
lea r8, [rbp - 0x30]
lea edx, [rbx + 0xa]
lea rcx, [rbp - 0x60]
call fcn.140012d38
lea edx, [rbx + 2]
lea rcx, [rbp - 0x60]
call qword [sym.imp.USER32.dll_LoadKeyboardLayoutW]
test rax, rax
je 0x1400077d9
mov r8, rsi
mov rdx, rax
mov rcx, r14
call fcn.140009b10
mov ebx, eax
cmp eax, 0xffffffff
jne 0x140007897
xor eax, eax
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], rax
mov word [rbp - 0x38], ax
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], rax
mov word [rbp - 8], ax
mov r9d, 9
lea r8, str._04x
mov edx, r9d
lea rcx, [rbp - 0x48]
call fcn.140013108
call qword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
movzx ecx, ax
and ecx, 0x3ff
mov r9d, 9
lea r8, [rbp - 0x18]
lea edx, [r9 - 8]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x140007897
lea r8, [rbp - 0x18]
mov edx, 9
lea rcx, [rbp - 0x48]
call fcn.140012d38
mov edx, 1
lea rcx, [rbp - 0x48]
call qword [sym.imp.USER32.dll_LoadKeyboardLayoutW]
test rax, rax
je 0x140007897
mov r8, rsi
mov rdx, rax
mov rcx, r14
call fcn.140009b10
mov ebx, eax
jmp 0x140007897
mov ecx, 0x80004003
call fcn.1400109b0
int3
mov ecx, 0x80004003
call fcn.1400109b0
int3
mov ecx, 0x80004003
call fcn.1400109b0
int3
mov ecx, 0x80004003
call fcn.1400109b0
nop
mov eax, ebx
mov rcx, qword [rbp + 0x200]
xor rcx, rsp
call fcn.140012300
lea r11, [rsp + 0x310]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret