Function at 0x180102550
Capabilities:
Encode data using xor
Get geographical location
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], r12
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x18021d4c0]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov r14, rcx
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], 9
mov qword [rbp - 0x38], 0xf
movsd xmm0, qword [str.color_rgb]
movsd qword [rbp - 0x50], xmm0
movzx r9d, byte [0x1801ef930]
mov byte [rbp - 0x48], r9b
mov byte [rbp - 0x47], 0
movabs rbx, 0xcbf29ce484222325
mov rdx, rbx
xor r15d, r15d
mov ecx, r15d
movabs r12, 0x100000001b3
nop dword [rax]
movzx eax, byte [rbp + rcx - 0x50]
xor rdx, rax
imul rdx, r12
inc rcx
cmp rcx, 9
jb 0x1801025d0
mov rax, qword [r14 + 0xa0]
and rax, rdx
mov r11, qword [r14 + 0x88]
add rax, rax
mov rcx, qword [r11 + rax*8 + 8]
mov rsi, qword [r14 + 0x78]
cmp rcx, rsi
je 0x18010263e
mov r8, qword [r11 + rax*8]
mov r10, qword [rbp - 0x50]
nop
lea rax, [rcx + 0x10]
mov rdx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x180102622
mov rax, qword [rax]
cmp rdx, 9
jne 0x180102633
cmp r10, qword [rax]
jne 0x180102633
cmp r9b, byte [rax + 8]
je 0x180102641
cmp rcx, r8
je 0x18010263e
mov rcx, qword [rcx + 8]
jmp 0x180102610
mov rcx, r15
test rcx, rcx
je 0x180102651
cmp rcx, rsi
je 0x180102651
mov rax, qword [rcx + 0x30]
jmp 0x180102654
mov rax, r15
cmp byte [rax + 0x28], r15b
je 0x180102677
movss xmm0, dword [0x18026fe68]
movss xmm2, dword [0x18026fe6c]
movss xmm1, dword [0x18026fe70]
jmp 0x180102742
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], 5
mov qword [rbp - 0x18], 0xf
mov r10d, dword [str.color]
mov dword [rbp - 0x30], r10d
movzx r9d, byte [0x1801dc9c0]
mov byte [rbp - 0x2c], r9b
mov byte [rbp - 0x2b], r15b
mov rdx, rbx
mov rcx, r15
nop
movzx eax, byte [rbp + rcx - 0x30]
xor rdx, rax
imul rdx, r12
inc rcx
cmp rcx, 5
jb 0x1801026b0
and rdx, qword [r14 + 0xa0]
add rdx, rdx
mov rcx, qword [r11 + rdx*8 + 8]
cmp rcx, rsi
je 0x18010270e
mov r8, qword [r11 + rdx*8]
nop dword [rax]
lea rax, [rcx + 0x10]
mov rdx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x1801026f2
mov rax, qword [rax]
cmp rdx, 5
jne 0x180102703
cmp r10d, dword [rax]
jne 0x180102703
cmp r9b, byte [rax + 4]
je 0x180102711
cmp rcx, r8
je 0x18010270e
mov rcx, qword [rcx + 8]
jmp 0x1801026e0
mov rcx, r15
test rcx, rcx
je 0x180102721
cmp rcx, rsi
je 0x180102721
mov rdx, qword [rcx + 0x30]
jmp 0x180102724
mov rdx, r15
add rdx, 0x28
lea rcx, [rbp - 0x50]
call fcn.1800868e0
movups xmm0, xmmword [rax]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0xaa
movaps xmm2, xmm0
shufps xmm2, xmm0, 0x55
mov r11, qword [0x1802e4000]
movss dword [r11], xmm0
movss dword [r11 + 4], xmm2
movss dword [r11 + 8], xmm1
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], 0xc
mov qword [rbp - 0x38], 0xf
movsd xmm0, qword [str.colorOpacity]
movsd qword [rbp - 0x50], xmm0
mov r10d, dword [0x1801ef920]
mov dword [rbp - 0x48], r10d
mov byte [rbp - 0x44], 0
mov rcx, r15
movzx eax, byte [rbp + rcx - 0x50]
xor rbx, rax
imul rbx, r12
inc rcx
cmp rcx, 0xc
jb 0x180102790
and rbx, qword [r14 + 0xa0]
add rbx, rbx
mov r8, qword [r14 + 0x88]
mov rcx, qword [r8 + rbx*8 + 8]
cmp rcx, qword [r14 + 0x78]
je 0x1801027fe
mov r8, qword [r8 + rbx*8]
mov r9, qword [rbp - 0x50]
nop dword [rax]
lea rax, [rcx + 0x10]
mov rdx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0xf
jbe 0x1801027e2
mov rax, qword [rax]
cmp rdx, 0xc
jne 0x1801027f3
cmp r9, qword [rax]
jne 0x1801027f3
cmp r10d, dword [rax + 8]
je 0x180102801
cmp rcx, r8
je 0x1801027fe
mov rcx, qword [rcx + 8]
jmp 0x1801027d0
mov rcx, r15
test rcx, rcx
je 0x180102815
cmp rcx, qword [r14 + 0x78]
je 0x180102815
mov rax, qword [rcx + 0x30]
mov ecx, dword [rax + 0x28]
jmp 0x180102819
mov ecx, dword [r15 + 0x28]
mov dword [r11 + 0xc], ecx
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.18016e810
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov r12, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret