Function at 0x1400ab9c0
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 [0x140132350]
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 0x1400aba05
mov byte [r8], r13b
cmp word [rcx], r13w
jne 0x1400aba12
xor eax, eax
jmp 0x1400abc60
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 0x1400abc50
movzx ecx, ax
call fcn.1400659dc
cmp al, r13b
je 0x1400aba73
movzx eax, word [rdi]
lea rcx, [rbx + rbx*4]
lea r12, [r12 + r12*4]
lea rbx, [rax + rcx*2 - 0x30]
add r12, r12
jmp 0x1400aba99
movzx ecx, word [rdi]
cmp cx, word [rsp + 0xd0]
jne 0x1400aba88
mov r12d, 1
jmp 0x1400aba99
call qword [sym.imp.USER32.dll_IsCharAlphaW]
cmp eax, r13d
jne 0x1400abaa8
cmp word [rdi], 0x28
je 0x1400abaa8
add rdi, 2
mov ax, word [rdi]
cmp ax, r13w
jne 0x1400aba51
jmp 0x1400abad3
lea rcx, [rsp + 0x60]
mov r8d, 0x32
mov rdx, rdi
call fcn.140065d00
lea rcx, [rsp + 0x60]
mov edx, 0x20
call fcn.1400ed378
cmp rax, r13
je 0x1400abad3
mov word [rax], r13w
cmp rbx, r13
je 0x1400abc50
cmp word [rsp + 0x60], r13w
je 0x1400abc3e
lea rax, [0x140114364]
mov dword [rsp + 0x20], 0x5e6
mov dword [rsp + 0x24], 0x5e7
mov qword [rsp + 0x38], rax
lea rax, [0x140114360]
mov dword [rsp + 0x28], 0x5e8
mov qword [rsp + 0x40], rax
lea rax, [0x14011435c]
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.14005fad8
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.1400ee530
test eax, eax
je 0x1400abb7b
inc r13d
add r14, 4
cmp r13d, 4
jb 0x1400abb3d
xor r13d, r13d
jmp 0x1400abb9f
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 0x1400abb8e
movzx ecx, word [rsp + 0x62]
call fcn.140068df0
cmp eax, 0x42
jne 0x1400abbba
movzx ecx, word [rsp + 0x60]
call fcn.140068dfc
jmp 0x1400abbbf
mov ax, word [rsp + 0x60]
movzx eax, ax
cmp eax, 0x42
je 0x1400abc32
cmp eax, 0x47
je 0x1400abc26
cmp eax, 0x4b
je 0x1400abc1a
cmp eax, 0x4d
je 0x1400abc0e
cmp eax, 0x62
je 0x1400abc32
cmp eax, 0x67
je 0x1400abc02
cmp eax, 0x6b
je 0x1400abbf6
cmp eax, 0x6d
jne 0x1400abc3e
mov dword [rsi], 2
shl rbx, 0x14
jmp 0x1400abc3e
mov dword [rsi], 1
shl rbx, 0xa
jmp 0x1400abc3e
mov dword [rsi], 3
shl rbx, 0x1e
jmp 0x1400abc3e
or dword [rsi], 0xffffffff
imul rbx, rbx, 0xf4240
jmp 0x1400abc3e
or dword [rsi], 0xffffffff
imul rbx, rbx, 0x3e8
jmp 0x1400abc3e
or dword [rsi], 0xffffffff
imul rbx, rbx, 0x3b9aca00
jmp 0x1400abc3e
mov dword [rsi], r13d
cmp r15, r13
je 0x1400abc3e
mov byte [r15], 1
cmp r12, r13
je 0x1400abc5d
mov rax, rbx
cqo
idiv r12
mov rbx, rax
jmp 0x1400abc5d
or dword [rsi], 0xffffffff
movabs rbx, 0x7fffffff7fffffff
mov rax, rbx
mov rcx, qword [rsp + 0x1a0]
xor rcx, rsp
call fcn.1400e9d80
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret