Function at 0x1404d7256
Capabilities:
Get geographical location

Disassembly:
push rbp
push rbx
bts ax, si
push rsi
ror bpl, cl
rcl al, cl
xor bp, 0x3454
push rdi
push r12
rcr rbp, cl
sub al, sil
shld rdi, rcx, 0x14
push r14
push r15
movzx di, cl
mov rbp, rsp
movsxd r14, ebx
bt r15w, 0xe2
sbb dil, r14b
sub rsp, 0x40
sar ax, cl
or r14b, r8b
add dil, r9b
mov rax, qword [0x1400b7288]
shld di, cx, 0x39
jmp 0x1404d72ab
xor rax, rsp
cmovl r15w, r10w
mov r14b, r9b
movsx rdi, bp
mov qword [rbp - 0x10], rax
movsx r15w, al
mov rdi, r8
mov r15, rdx
movsx r14, cx
mov r14, rcx
call fcn.1404ca4a3
mov rsi, rax
sub eax, eax
jmp 0x1404d72df
mov qword [rbp - 0x20], rax
jmp 0x1404d72e8
mov dword [rbp - 0x18], eax
jmp 0x1404d72f0
call fcn.1404ca4a3
lea rcx, [rbp - 0x20]
movsx bx, r12b
dec bx
xor r12d, r12d
and bl, bpl
cmp dil, cl
adc bx, 0x2929
lea rbx, [rsi + 0xa0]
mov qword [rax + 0x3a0], rcx
bts ax, r14w
mov al, 0x4f
movzx rax, ax
lea rax, [r14 + 0x80]
test bh, bl
cmp r8w, r12w
mov qword [rsi + 0x98], r14
mov qword [rbx], rax
cmp r8b, r9b
test rax, rax
je 0x1404d738e
cmp word [rax], r12w
jmp 0x1404d7354
je 0x1404d738e
mov edx, dword [0x1400c6a60]
cmovae r8d, esi
inc r8b
movzx r8, di
lea rcx, [0x1400c68f0]
mov r8, r8
dec edx
movsxd r8, r14d
mov r8b, 0x50
setae r8b
mov r8, rbx
jmp 0x1404d7389
call fcn.1404d7754
mov dword [rbp - 0x20], r12d
mov rax, qword [rsi + 0x98]
cmp bpl, 0x21
cmp dil, cl
test rax, rax
jmp 0x1404d73a8
je 0x1404d748d
cmp word [rax], r12w
jmp 0x1404d73b7
je 0x1404d748d
mov rax, qword [rbx]
test rax, rax
je 0x1404d73eb
cmp word [rax], r12w
jmp 0x1404d73d2
je 0x1404d73eb
lea rcx, [rbp - 0x20]
jmp 0x1404d73e1
call fcn.1404d7890
jmp 0x1404d73f9
lea rcx, [rbp - 0x20]
jmp 0x1404d73f4
call fcn.1404d7eee
cmp dword [rbp - 0x20], r12d
jmp 0x1404d7402
jne 0x1404d7551
mov edx, dword [0x1400c68e0]
mov r8w, 0x2be7
lea r8, [rsi + 0x98]
xchg cx, cx
not rcx
dec edx
movsxd rcx, r8d
setae ch
lea rcx, [0x1400c64d0]
jmp 0x1404d7434
call fcn.1404d7754
test al, al
jmp 0x1404d7440
je 0x1404d7547
mov rax, qword [rbx]
stc
test rax, rax
jmp 0x1404d7452
je 0x1404d747a
cmp word [rax], r12w
jmp 0x1404d7461
je 0x1404d747a
lea rcx, [rbp - 0x20]
jmp 0x1404d7470
call fcn.1404d7890
jmp 0x1404d7547
lea rcx, [rbp - 0x20]
jmp 0x1404d7483
call fcn.1404d7eee
jmp 0x1404d7547
mov rax, qword [rbx]
cmc
jmp 0x1404d7496
test rax, rax
jmp 0x1404d749e
je 0x1404d7533
cmp word [rax], r12w
jmp 0x1404d74ad
je 0x1404d7533
call fcn.1404ca4a3
mov rdx, rax
or rcx, 0xffffffffffffffff
jmp 0x1404d74c4
mov rax, qword [rax + 0xa0]
jmp 0x1404d74d0
inc rcx
cmp dl, cl
cmp word [rax + rcx*2], r12w
jmp 0x1404d74df
jne 0x1404d74d0
cmp rcx, 3
cmovo rcx, rsi
movzx ecx, bp
mov eax, r12d
lea rcx, [0x1400ac1c0]
sete al
jmp 0x1404d7502
mov dword [rdx + 0xb4], eax
bswap edx
movzx edx, ax
setp dh
mov edx, 1
call qword [sym.imp.KERNEL32.dll_EnumSystemLocalesW]
test byte [rbp - 0x20], 4
jne 0x1404d7547
mov dword [rbp - 0x20], r12d
jmp 0x1404d752e
jmp 0x1404d7547
mov dword [rbp - 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov dword [rbp - 0x18], eax
mov dword [rbp - 0x1c], eax
cmc
cmp dword [rbp - 0x20], r12d
je 0x1404d76f4
lea rax, [r14 + 0x100]
mov dh, 0x9a
neg r14
movzx edx, r11w
lea rdx, [rbp - 0x20]
sbb rcx, rcx
cmc
and rcx, rax
call fcn.1404d841c
mov ebx, eax
test eax, eax
jmp 0x1404d757b
je 0x1404d76f4
movzx ecx, bx
jmp 0x1404d7589
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
test eax, eax
jmp 0x1404d7596
je 0x1404d76f4
mov ecx, dword [rbp - 0x1c]
mov dl, bpl
movsx rdx, r14w
mov edx, 1
call qword [sym.imp.KERNEL32.dll_IsValidLocale]
test eax, eax
jmp 0x1404d75b8
je 0x1404d76f4
test r15, r15
jmp 0x1404d75c6
je 0x1404d75d6
mov dword [r15], ebx
movsx dx, bh
bswap dx
mov ecx, dword [rbp - 0x1c]
shl rdx, 0x5b
btr r8, r14
mov dh, bh
lea rdx, [rsi + 0x2f0]
btr r8d, 0x56
sub r9d, r9d
lea esi, [r9 + 0x55]
movsxd r8, ebx
movzx r8, r8w
mov r8d, esi
jmp 0x1404d7605
call fcn.1404cc0bc
test rdi, rdi
jmp 0x1404d7612
je 0x1404d76e5
mov ecx, dword [rbp - 0x1c]
lea rdx, [rdi + 0x120]
xor r9d, r9d
cmovbe r8w, r12w
movzx r8, ax
jmp 0x1404d7633
mov r8d, esi
call fcn.1404cc0bc
mov ecx, dword [rbp - 0x1c]
mov sil, 0xa3
xchg r9b, sil
mov esi, 0x40
cwd
cqo
movsx r9, r8w
mov r9d, esi
jmp 0x1404d765b
mov r8, rdi
cmovp rdx, rbp
cwd
mov edx, 0x1001
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
jmp 0x1404d7676
je 0x1404d76f4
mov ecx, dword [rbp - 0x18]
movsx r8w, dil
cqo
cwd
lea r8, [rdi + 0x80]
mov r9d, esi
movzx edx, dx
movsxd rdx, edi
movsx rdx, cx
mov edx, 0x1002
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
jmp 0x1404d76ae
je 0x1404d76f4
lea rdx, [rdi + 0x100]
xchg r8, r8
jmp 0x1404d76c6
mov ecx, ebx
movsxd r8, edx
lea r9d, [rsi - 0x36]
movzx r8d, cx
cmovg r8, r15
lea r8d, [rsi - 0x30]
jmp 0x1404d76e0
call fcn.1404e4f21
mov eax, 1
jmp 0x1404d76ef
jmp 0x1404d76f6
sub eax, eax
mov rcx, qword [rbp - 0x10]
jmp 0x1404d7705
xor rcx, rsp
jmp 0x1404d770d
call fcn.1404a07bb
add rsp, 0x40
movsx r12, si
pop r15
mov dil, r14b
movzx r12d, r15w
pop r14
jmp 0x1404d772a
pop r12
not sil
cmove bx, r8w
pop rdi
movsx bx, r11b
bswap bp
movsx esi, r14w
pop rsi
pop rbx
not bpl
movsx bp, dl
mov bpl, 0x6f
pop rbp
jmp 0x1404d7753
ret