Function at 0x1404d6012
Capabilities:
Get geographical location

Disassembly:
push rbp
push rbx
push rsi
rol ax, 0xdc
sbb al, r12b
push rdi
test cl, bpl
and ax, 0x1df0
sar di, 0xb
push r12
push r14
sub al, 0xac
movzx rbp, r11w
push r15
cwde
shr r15b, 0xd5
bts edi, r9d
mov rbp, rsp
sub rsp, 0x40
bts di, bp
mov rax, qword [0x1400b7288]
cmove di, r15w
xor rax, rsp
bswap r15
mov qword [rbp - 0x10], rax
movsx r15d, sp
movsx r14, r8w
not r14b
mov rdi, r8
movzx r15d, r10w
movsx r15w, r9b
movsx r15d, r12w
mov r15, rdx
mov r14b, r15b
xchg r14b, r14b
jmp 0x1404d6088
mov r14, rcx
jmp 0x1404d6090
call fcn.1404c92d9
mov rsi, rax
sub eax, eax
jmp 0x1404d609f
mov qword [rbp - 0x20], rax
jmp 0x1404d60a8
mov dword [rbp - 0x18], eax
jmp 0x1404d60b0
call fcn.1404c92d9
lea rcx, [rbp - 0x20]
sub r12d, r12d
sal bh, cl
movsx ebx, r15w
lea rbx, [rsi + 0xa0]
cmp r15d, 0x62de3dd8
test r15b, dil
mov qword [rax + 0x3a0], rcx
lea rax, [r14 + 0x80]
mov qword [rsi + 0x98], r14
mov qword [rbx], rax
cmc
test rax, rax
je 0x1404d6132
cmp word [rax], r12w
jmp 0x1404d60fe
je 0x1404d6132
mov edx, dword [0x1400c6a60]
lea rcx, [0x1400c68f0]
movsxd r8, r15d
mov r8b, 0xb8
dec edx
cmovo r8d, ebp
xchg r8b, r8b
movsx r8w, r8b
mov r8, rbx
jmp 0x1404d612d
call fcn.1404d64d4
mov dword [rbp - 0x20], r12d
ror ah, 0x4a
jmp 0x1404d6142
mov rax, qword [rsi + 0x98]
stc
test rax, rax
je 0x1404d6222
cmp word [rax], r12w
jmp 0x1404d615c
je 0x1404d6222
mov rax, qword [rbx]
stc
test rax, rax
jmp 0x1404d616e
je 0x1404d6196
cmp word [rax], r12w
jmp 0x1404d617d
je 0x1404d6196
lea rcx, [rbp - 0x20]
jmp 0x1404d618c
call fcn.1404d65f7
jmp 0x1404d61a4
lea rcx, [rbp - 0x20]
jmp 0x1404d619f
call fcn.1404d6c7e
cmp dword [rbp - 0x20], r12d
jne 0x1404d62eb
mov edx, dword [0x1400c68e0]
mov cl, 0x88
xchg ch, cl
movzx cx, dl
lea r8, [rsi + 0x98]
setns ch
movsxd rcx, esp
movzx rcx, bp
dec edx
bswap cx
lea rcx, [0x1400c64d0]
jmp 0x1404d61de
call fcn.1404d64d4
test al, al
je 0x1404d62dc
mov rax, qword [rbx]
test rax, rax
je 0x1404d6214
cmp word [rax], r12w
je 0x1404d6214
lea rcx, [rbp - 0x20]
jmp 0x1404d620a
call fcn.1404d65f7
jmp 0x1404d62dc
lea rcx, [rbp - 0x20]
call fcn.1404d6c7e
jmp 0x1404d62dc
mov rax, qword [rbx]
test rax, rax
jmp 0x1404d622d
je 0x1404d62ba
cmp word [rax], r12w
jmp 0x1404d623c
je 0x1404d62ba
call fcn.1404c92d9
mov rdx, rax
stc
clc
test r10, r9
or rcx, 0xffffffffffffffff
jmp 0x1404d6258
mov rax, qword [rax + 0xa0]
inc rcx
cmp word [rax + rcx*2], r12w
jne 0x1404d625f
cmp rcx, 3
movsxd rcx, r11d
xchg cx, ax
mov eax, r12d
movzx ecx, sp
setg ch
lea rcx, [0x1400ac1c0]
sete al
jmp 0x1404d628e
mov dword [rdx + 0xb4], eax
movzx edx, ax
mov edx, 1
call qword [sym.imp.KERNEL32.dll_EnumSystemLocalesW]
test byte [rbp - 0x20], 4
jmp 0x1404d62ab
jne 0x1404d62dc
mov dword [rbp - 0x20], r12d
jmp 0x1404d62dc
mov dword [rbp - 0x20], 0x104
jmp 0x1404d62c6
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov dword [rbp - 0x18], eax
stc
cmp sil, 0
mov dword [rbp - 0x1c], eax
jmp 0x1404d62dc
cmp dword [rbp - 0x20], r12d
jmp 0x1404d62e5
je 0x1404d647f
lea rax, [r14 + 0x100]
shl dh, cl
or dh, 0x6f
neg r14
movsx edx, bp
lea rdx, [rbp - 0x20]
sbb rcx, rcx
and rcx, rax
jmp 0x1404d630c
call fcn.1404d71e6
mov ebx, eax
stc
jmp 0x1404d6319
test eax, eax
je 0x1404d647f
movzx ecx, bx
jmp 0x1404d6329
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
test eax, eax
jmp 0x1404d6336
je 0x1404d647f
mov ecx, dword [rbp - 0x1c]
not dh
jmp 0x1404d634b
mov edx, 1
jmp 0x1404d6355
call qword [sym.imp.KERNEL32.dll_IsValidLocale]
test eax, eax
jmp 0x1404d6362
je 0x1404d647f
test r15, r15
jmp 0x1404d6370
je 0x1404d6383
mov dword [r15], ebx
shld edx, r12d, 0x71
xchg dl, r8b
cwd
mov ecx, dword [rbp - 0x1c]
sar r8b, cl
xchg dx, dx
lea rdx, [rsi + 0x2f0]
rcr sil, cl
shl r8w, 0xea
sub r9d, r9d
movsx r8d, r9w
lea esi, [r9 + 0x55]
mov r8d, esi
jmp 0x1404d63ae
call fcn.1404cae53
test rdi, rdi
je 0x1404d6475
mov ecx, dword [rbp - 0x1c]
shr dl, cl
cmove r8, r14
lea rdx, [rdi + 0x120]
sar r8b, 0x96
xor r9d, r9d
movsx r8d, si
mov r8d, esi
jmp 0x1404d63df
call fcn.1404cae53
mov ecx, dword [rbp - 0x1c]
movsxd r8, ecx
mov esi, 0x40
mov r9d, esi
mov r8, rdi
mov edx, 0x1001
jmp 0x1404d63ff
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
jmp 0x1404d640c
je 0x1404d647f
mov ecx, dword [rbp - 0x18]
mov dx, 0x576
mov r8d, r9d
lea r8, [rdi + 0x80]
setns r9b
mov r9d, esi
bswap dx
mov edx, 0x1002
jmp 0x1404d6437
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
jmp 0x1404d6444
je 0x1404d647f
lea rdx, [rdi + 0x100]
not r8w
movzx ecx, r8w
mov ecx, ebx
lea r9d, [rsi - 0x36]
mov r8b, 0x77
movsx r8w, sil
lea r8d, [rsi - 0x30]
jmp 0x1404d6470
call fcn.1404e3c9c
mov eax, 1
jmp 0x1404d648d
sub eax, eax
rol ch, 0xe4
movzx ecx, r9w
jmp 0x1404d648d
mov rcx, qword [rbp - 0x10]
cmp edi, eax
xor rcx, rsp
jmp 0x1404d649b
call fcn.14049f715
add rsp, 0x40
movzx di, r15b
pop r15
movsx r12d, ax
pop r14
mov ebx, 0x15fc539d
pop r12
pop rdi
movsx rsi, r15w
mov sil, spl
setp bpl
pop rsi
movzx rbp, si
bswap rbx
pop rbx
pop rbp
jmp 0x1404d64d3
ret