Function at 0x140098654
Capabilities:
Get geographical location

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1b0
mov rax, qword [0x1401006f0]
xor rax, rsp
mov qword [rsp + 0x1a0], rax
xor r13d, r13d
lea rsi, [rsp + 0x30]
mov r15, r8
cmp rdx, r13
mov rdi, rcx
cmovne rsi, rdx
mov dword [rsi], r13d
cmp r8, r13
je 0x140098699
mov byte [r8], r13b
cmp word [rcx], r13w
jne 0x1400986a6
xor eax, eax
jmp 0x1400988f4
mov r9d, reloc.SHELL32.dll_SHRestricted
lea r8, [rsp + 0xd0]
mov ecx, 0x400
lea edx, [r9 - 0x56]
mov word [rsp + 0xd0], r13w
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
movzx eax, word [rdi]
mov r12, r13
mov word [rsp + 0x60], r13w
mov rbx, r13
cmp ax, r13w
je 0x1400988e4
movzx ecx, ax
call fcn.1400802a0
cmp al, r13b
je 0x140098707
movzx eax, word [rdi]
lea rcx, [rbx + rbx*4]
lea r12, [r12 + r12*4]
lea rbx, [rax + rcx*2 - 0x30]
add r12, r12
jmp 0x14009872d
movzx ecx, word [rdi]
cmp cx, word [rsp + 0xd0]
jne 0x14009871c
mov r12d, 1
jmp 0x14009872d
call qword [sym.imp.USER32.dll_IsCharAlphaW]
cmp eax, r13d
jne 0x14009873c
cmp word [rdi], 0x28
je 0x14009873c
add rdi, 2
mov ax, word [rdi]
cmp ax, r13w
jne 0x1400986e5
jmp 0x140098767
lea rcx, [rsp + 0x60]
mov r8d, 0x32
mov rdx, rdi
call fcn.1400805a0
lea rcx, [rsp + 0x60]
mov edx, 0x20
call fcn.1400c7b54
cmp rax, r13
je 0x140098767
mov word [rax], r13w
cmp rbx, r13
je 0x1400988e4
cmp word [rsp + 0x60], r13w
je 0x1400988d2
lea rax, [0x1400e8d1c]
mov dword [rsp + 0x20], 0x5e6
mov dword [rsp + 0x24], 0x5e7
mov qword [rsp + 0x38], rax
lea rax, [0x1400e8d18]
mov dword [rsp + 0x28], 0x5e8
mov qword [rsp + 0x40], rax
lea rax, [0x1400e8d14]
mov dword [rsp + 0x2c], 0x5e9
mov qword [rsp + 0x48], rax
lea rax, str.gmkb
lea r14, [rsp + 0x20]
mov qword [rsp + 0x50], rax
mov ecx, dword [r14]
call fcn.140076080
or rcx, 0xffffffffffffffff
mov rdx, rax
xor eax, eax
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0x60]
call fcn.1400c94cc
test eax, eax
je 0x14009880f
inc r13d
add r14, 4
cmp r13d, 4
jb 0x1400987d1
xor r13d, r13d
jmp 0x140098833
mov eax, r13d
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + rax*8 + 0x38]
sub rdx, rcx
xor r13d, r13d
movzx eax, word [rcx]
mov word [rdx + rcx], ax
add rcx, 2
cmp ax, r13w
jne 0x140098822
movzx ecx, word [rsp + 0x62]
call fcn.140088488
cmp eax, 0x42
jne 0x14009884e
movzx ecx, word [rsp + 0x60]
call fcn.140088494
jmp 0x140098853
mov ax, word [rsp + 0x60]
movzx eax, ax
cmp eax, 0x42
je 0x1400988c6
cmp eax, 0x47
je 0x1400988ba
cmp eax, 0x4b
je 0x1400988ae
cmp eax, 0x4d
je 0x1400988a2
cmp eax, 0x62
je 0x1400988c6
cmp eax, 0x67
je 0x140098896
cmp eax, 0x6b
je 0x14009888a
cmp eax, 0x6d
jne 0x1400988d2
mov dword [rsi], 2
shl rbx, 0x14
jmp 0x1400988d2
mov dword [rsi], 1
shl rbx, 0xa
jmp 0x1400988d2
mov dword [rsi], 3
shl rbx, 0x1e
jmp 0x1400988d2
or dword [rsi], 0xffffffff
imul rbx, rbx, 0xf4240
jmp 0x1400988d2
or dword [rsi], 0xffffffff
imul rbx, rbx, 0x3e8
jmp 0x1400988d2
or dword [rsi], 0xffffffff
imul rbx, rbx, 0x3b9aca00
jmp 0x1400988d2
mov dword [rsi], r13d
cmp r15, r13
je 0x1400988d2
mov byte [r15], 1
cmp r12, r13
je 0x1400988f1
mov rax, rbx
cqo
idiv r12
mov rbx, rax
jmp 0x1400988f1
or dword [rsi], 0xffffffff
movabs rbx, 0x7fffffff7fffffff
mov rax, rbx
mov rcx, qword [rsp + 0x1a0]
xor rcx, rsp
call fcn.1400c6350
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret