Function at 0x1404d0280
Capabilities:
Get geographical location

Disassembly:
push rbp
xor ax, dx
or bpl, 0x2a
bt rax, 0x2f
push rbx
xor ax, r10w
bsr rax, rbx
push rsi
movsx rbp, sp
rcr al, 0xe3
cmove bp, r11w
push rdi
push r12
btc di, r12w
cbw
cmp r14, 0x1e891c01
push r14
and dil, r14b
jmp 0x1404d02c2
push r15
ror r15w, 0xe5
mov rbp, rsp
not eax
stc
sub rsp, 0x40
seto ah
mov rax, qword [0x1400b7288]
xor rax, rsp
xchg r14b, r15b
not r14d
movzx r15d, r9w
mov qword [rbp - 0x10], rax
bswap r15w
movsx r14, r8w
mov rdi, r8
movzx r15w, r11b
movsx r15, dx
mov r15, rdx
mov r14, rcx
jmp 0x1404d030d
call fcn.1404c3385
mov rsi, rax
test cx, 0x7da1
xor eax, eax
jmp 0x1404d0321
mov qword [rbp - 0x20], rax
jmp 0x1404d032a
mov dword [rbp - 0x18], eax
call fcn.1404c3385
lea rcx, [rbp - 0x20]
xchg bl, bh
sub r12d, r12d
shrd rbx, r14, 0x1b
adc bl, 0xa
lea rbx, [rsi + 0xa0]
test rbx, 0x2bf32f30
cmc
mov qword [rax + 0x3a0], rcx
test ch, 0x88
lea rax, [r14 + 0x80]
cmp r9b, 0x92
mov qword [rsi + 0x98], r14
mov qword [rbx], rax
jmp 0x1404d0376
test rax, rax
jmp 0x1404d037e
je 0x1404d03b3
cmp word [rax], r12w
je 0x1404d03b3
mov edx, dword [0x1400c6a60]
movsxd r8, eax
lea rcx, [0x1400c68f0]
dec edx
mov r8b, r12b
not r8b
jmp 0x1404d03ab
mov r8, rbx
call fcn.1404d077f
mov dword [rbp - 0x20], r12d
btc ax, r8w
sal ah, cl
sar ax, 0x60
mov rax, qword [rsi + 0x98]
jmp 0x1404d03cf
test rax, rax
jmp 0x1404d03d7
je 0x1404d04b0
cmp word [rax], r12w
jmp 0x1404d03e6
je 0x1404d04b0
mov rax, qword [rbx]
clc
test rax, rax
jmp 0x1404d03f8
je 0x1404d0420
cmp word [rax], r12w
jmp 0x1404d0407
je 0x1404d0420
lea rcx, [rbp - 0x20]
jmp 0x1404d0416
call fcn.1404d08d1
jmp 0x1404d042e
lea rcx, [rbp - 0x20]
jmp 0x1404d0429
call fcn.1404d0f23
cmp dword [rbp - 0x20], r12d
jmp 0x1404d0437
jne 0x1404d0574
mov edx, dword [0x1400c68e0]
bswap r8w
movzx r8d, cx
lea r8, [rsi + 0x98]
bswap rcx
setle ch
dec edx
lea rcx, [0x1400c64d0]
jmp 0x1404d0466
call fcn.1404d077f
test al, al
jmp 0x1404d0472
je 0x1404d056a
mov rax, qword [rbx]
cmc
test rax, rax
jmp 0x1404d0484
je 0x1404d04a2
cmp word [rax], r12w
je 0x1404d04a2
lea rcx, [rbp - 0x20]
call fcn.1404d08d1
jmp 0x1404d056a
lea rcx, [rbp - 0x20]
call fcn.1404d0f23
jmp 0x1404d056a
mov rax, qword [rbx]
clc
stc
test rax, rax
jmp 0x1404d04bd
je 0x1404d0551
cmp word [rax], r12w
jmp 0x1404d04cc
je 0x1404d0551
call fcn.1404c3385
mov rdx, rax
or rcx, 0xffffffffffffffff
mov rax, qword [rax + 0xa0]
jmp 0x1404d04ea
inc rcx
clc
stc
cmp word [rax + rcx*2], r12w
jmp 0x1404d04f9
jne 0x1404d04ea
cmp rcx, 3
movsx ecx, r15w
bswap cx
mov eax, r12d
lea rcx, [0x1400ac1c0]
sete al
jmp 0x1404d051c
mov dword [rdx + 0xb4], eax
not dl
mov edx, 1
jmp 0x1404d052e
call qword [sym.imp.KERNEL32.dll_EnumSystemLocalesW]
test byte [rbp - 0x20], 4
jmp 0x1404d053d
jne 0x1404d056a
mov dword [rbp - 0x20], r12d
jmp 0x1404d054c
jmp 0x1404d056a
mov dword [rbp - 0x20], 0x104
jmp 0x1404d055d
call qword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov dword [rbp - 0x18], eax
mov dword [rbp - 0x1c], eax
cmc
cmp dword [rbp - 0x20], r12d
je 0x1404d073c
lea rax, [r14 + 0x100]
cwd
not edx
neg r14
lea rdx, [rbp - 0x20]
jmp 0x1404d058b
sbb rcx, rcx
test r9d, 0x7cc45650
clc
and rcx, rax
jmp 0x1404d059e
call fcn.1404d1475
mov ebx, eax
test eax, eax
jmp 0x1404d05ac
je 0x1404d073c
movzx ecx, bx
jmp 0x1404d05ba
call qword [sym.imp.KERNEL32.dll_IsValidCodePage]
test eax, eax
jmp 0x1404d05c7
je 0x1404d073c
mov ecx, dword [rbp - 0x1c]
jmp 0x1404d05dc
mov edx, 1
jmp 0x1404d05e6
call qword [sym.imp.KERNEL32.dll_IsValidLocale]
test eax, eax
jmp 0x1404d05f3
je 0x1404d073c
test r15, r15
jmp 0x1404d0601
je 0x1404d0613
mov dword [r15], ebx
btc cx, 0xed
rol r8b, 0x6d
mov ecx, dword [rbp - 0x1c]
cqo
xadd dl, dh
rcl r8b, 0x28
lea rdx, [rsi + 0x2f0]
shld r8w, r9w, 0x3f
rcr sil, 0x8f
btc si, 0x94
xor r9d, r9d
mov sil, 0xbf
lea esi, [r9 + 0x55]
jmp 0x1404d064b
mov r8d, esi
jmp 0x1404d0653
call fcn.1404c4f8b
test rdi, rdi
jmp 0x1404d0660
je 0x1404d072d
mov ecx, dword [rbp - 0x1c]
lea rdx, [rdi + 0x120]
sub r9d, r9d
mov r8d, r15d
movzx r8w, r11b
movzx r8, bp
mov r8d, esi
call fcn.1404c4f8b
mov ecx, dword [rbp - 0x1c]
jmp 0x1404d0691
mov esi, 0x40
cdq
mov r9d, esi
movsx dx, r8b
cqo
xchg r8, rdx
mov r8, rdi
movsx dx, bpl
movzx edx, r13w
mov edx, 0x1001
jmp 0x1404d06ba
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
jmp 0x1404d06c7
je 0x1404d073c
mov ecx, dword [rbp - 0x18]
movsx edx, r15w
movsx r8w, sil
lea r8, [rdi + 0x80]
movsx r9w, r9b
mov r9d, esi
mov edx, 0x1002
jmp 0x1404d06f2
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
jmp 0x1404d06ff
je 0x1404d073c
lea rdx, [rdi + 0x100]
mov ecx, ebx
mov r8b, 0x2f
lea r9d, [rsi - 0x36]
mov r8b, r15b
mov r8b, 0xef
movzx r8, sp
lea r8d, [rsi - 0x30]
jmp 0x1404d0728
call fcn.1404dde41
mov eax, 1
jmp 0x1404d0737
jmp 0x1404d0746
xor eax, eax
btc ecx, 0x80
movsx rcx, r9w
mov rcx, qword [rbp - 0x10]
clc
xor rcx, rsp
call fcn.1404996f5
add rsp, 0x40
pop r15
movsx rbx, r13w
pop r14
not rdi
movzx ebx, r14w
pop r12
pop rdi
mov si, 0xbb0
pop rsi
jmp 0x1404d0777
pop rbx
pop rbp
jmp 0x1404d077e
ret