Function at 0x1404d51e0
Capabilities:
Get geographical location

Disassembly:
push rbp
movsx bp, r13b
cmp r15w, 0xce0
push rbx
bts ax, r15w
bsr ax, cx
push rsi
push rdi
rcl eax, 0x58
push r12
shr ax, cl
btr ax, si
movsx rbp, bp
push r14
push r15
mov rbp, rsp
shr dil, cl
sal r14b, 0xfd
add al, 0xb5
sub rsp, 0x40
movzx r14, bx
mov rax, qword [0x1400b7288]
xor rax, rsp
movzx r15d, r13w
setb dil
bswap r15w
mov qword [rbp - 0x10], rax
movsx edi, r10w
mov rdi, r8
movsxd r15, esi
mov r15, rdx
mov r14, rcx
jmp 0x1404d5250
call fcn.1404c852c
mov rsi, rax
cmc
test r11w, r10w
sub eax, eax
jmp 0x1404d5264
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x18], eax
jmp 0x1404d5270
call fcn.1404c852c
lea rcx, [rbp - 0x20]
sub r12d, r12d
sar ebx, 0x4f
lea rbx, [rsi + 0xa0]
cmc
test r10w, 0x649a
mov qword [rax + 0x3a0], rcx
or al, 0xcc
add rax, rax
lea rax, [r14 + 0x80]
cmc
mov qword [rsi + 0x98], r14
test di, si
mov qword [rbx], rax
clc
test rax, rax
je 0x1404d52f6
cmp word [rax], r12w
jmp 0x1404d52c1
je 0x1404d52f6
mov edx, dword [0x1400c6a60]
movsxd rcx, r13d
movzx ecx, bp
lea rcx, [0x1400c68f0]
movsx r8w, r15b
movzx r8w, r8b
bswap r8
dec edx
jmp 0x1404d52ee
mov r8, rbx
call fcn.1404d5684
mov dword [rbp - 0x20], r12d
mov rax, qword [rsi + 0x98]
test rax, rax
je 0x1404d53df
cmp word [rax], r12w
jmp 0x1404d5313
je 0x1404d53df
mov rax, qword [rbx]
test eax, esp
cmp r15b, cl
test rax, rax
je 0x1404d5347
cmp word [rax], r12w
jmp 0x1404d5333
je 0x1404d5347
lea rcx, [rbp - 0x20]
call fcn.1404d57bc
jmp 0x1404d5350
lea rcx, [rbp - 0x20]
call fcn.1404d5e3e
cmp dword [rbp - 0x20], r12d
jmp 0x1404d5359
jne 0x1404d54c2
mov edx, dword [0x1400c68e0]
lea r8, [rsi + 0x98]
jmp 0x1404d5378
dec edx
setge cl
mov cl, dil
movsx cx, r13b
lea rcx, [0x1400c64d0]
jmp 0x1404d5391
call fcn.1404d5684
test al, al
je 0x1404d54b3
mov rax, qword [rbx]
test rax, rax
je 0x1404d53cc
cmp word [rax], r12w
jmp 0x1404d53b3
je 0x1404d53cc
lea rcx, [rbp - 0x20]
jmp 0x1404d53c2
call fcn.1404d57bc
jmp 0x1404d54b3
lea rcx, [rbp - 0x20]
jmp 0x1404d53d5
call fcn.1404d5e3e
jmp 0x1404d54b3
mov rax, qword [rbx]
test sil, r14b
cmc
test rax, rax
jmp 0x1404d53ee
je 0x1404d5496
cmp word [rax], r12w
jmp 0x1404d53fd
je 0x1404d5496
call fcn.1404c852c
mov rdx, rax
or rcx, 0xffffffffffffffff
jmp 0x1404d5414
mov rax, qword [rax + 0xa0]
jmp 0x1404d5420
inc rcx
cmp word [rax + rcx*2], r12w
jmp 0x1404d542d
jne 0x1404d5420
cmp rcx, 3
not ax
movzx ecx, r13w
mov eax, r12d
mov al, r13b
jmp 0x1404d544d
lea rcx, [0x1400ac1c0]
sete al
jmp 0x1404d545c
mov dword [rdx + 0xb4], eax
bswap edx
movsxd rdx, r11d
cwd
mov edx, 1
jmp 0x1404d5473
call qword [sym.imp.KERNEL32.dll_EnumSystemLocalesW]
test byte [rbp - 0x20], 4
jmp 0x1404d5482
jne 0x1404d54b3
mov dword [rbp - 0x20], r12d
jmp 0x1404d5491
jmp 0x1404d54b3
mov dword [rbp - 0x20], 0x104
jmp 0x1404d54a2
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov dword [rbp - 0x18], eax
cmp si, 0x7b9d
mov dword [rbp - 0x1c], eax
cmp dword [rbp - 0x20], r12d
jmp 0x1404d54bc
je 0x1404d563f
lea rax, [r14 + 0x100]
mov dl, bpl
neg r14
lea rdx, [rbp - 0x20]
jmp 0x1404d54d8
sbb rcx, rcx
and rcx, rax
call fcn.1404d63b6
mov ebx, eax
test eax, eax
jmp 0x1404d54ec
je 0x1404d563f
movzx ecx, bx
jmp 0x1404d54fa
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
test eax, eax
jmp 0x1404d5507
je 0x1404d563f
mov ecx, dword [rbp - 0x1c]
movsxd rdx, r10d
movsx rdx, sp
mov edx, 1
jmp 0x1404d5521
call qword [sym.imp.KERNEL32.dll_IsValidLocale]
test eax, eax
jmp 0x1404d552e
je 0x1404d563f
test r15, r15
jmp 0x1404d553c
je 0x1404d5545
mov dword [r15], ebx
mov ecx, dword [rbp - 0x1c]
lea rdx, [rsi + 0x2f0]
sub r9d, r9d
jmp 0x1404d5559
lea esi, [r9 + 0x55]
mov r8d, esi
jmp 0x1404d5565
call fcn.1404ca09b
test rdi, rdi
jmp 0x1404d5572
je 0x1404d5630
mov ecx, dword [rbp - 0x1c]
shr edx, cl
sal r8, cl
lea rdx, [rdi + 0x120]
btr r8w, r12w
xchg r8b, r8b
xor r9d, r9d
setg r8b
mov r8d, esi
jmp 0x1404d559e
call fcn.1404ca09b
mov ecx, dword [rbp - 0x1c]
cmovae esi, r10d
movsx r9d, di
setge dl
mov esi, 0x40
mov r9d, esi
cmovg edx, r8d
cqo
mov r8, rdi
cwd
mov edx, 0x1001
jmp 0x1404d55ce
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x1404d563f
mov ecx, dword [rbp - 0x18]
setne dh
mov r9w, r11w
lea r8, [rdi + 0x80]
xchg r9d, edx
mov r9d, esi
mov edx, 0x1002
jmp 0x1404d55fd
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x1404d563f
lea rdx, [rdi + 0x100]
movzx r8d, cx
mov ecx, ebx
lea r9d, [rsi - 0x36]
mov r8b, r8b
not r8
lea r8d, [rsi - 0x30]
jmp 0x1404d562b
call fcn.1404e2f08
mov eax, 1
jmp 0x1404d563a
jmp 0x1404d5643
sub eax, eax
rcl cl, cl
mov rcx, qword [rbp - 0x10]
cmc
stc
xor rcx, rsp
call fcn.14049e949
add rsp, 0x40
movzx r12w, r14b
pop r15
movzx r12, r13w
pop r14
movzx rbp, r8w
pop r12
pop rdi
movsx rsi, r15w
movsx bx, r13b
movsx ebx, r14w
pop rsi
pop rbx
jmp 0x1404d567d
pop rbp
jmp 0x1404d5683
ret