Function at 0x180067840
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push r12
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xb8
mov r8, qword [0x180147368]
movzx r15d, dl
movaps xmmword [rax - 0x48], xmm6
mov r12, rcx
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
mov rax, qword [r8 + 0x1a80]
movaps xmmword [rsp + 0x60], xmm10
movaps xmmword [rsp + 0x50], xmm11
mov byte [rax + 0x80], 1
mov rsi, qword [r8 + 0x1a80]
cmp byte [rsi + 0x83], 0
jne 0x180067c8f
mov r14, qword [0x180147368]
mov rdx, rcx
mov rcx, rsi
xor r8d, r8d
call fcn.180048210
movss xmm0, dword [0x180004ce4]
lea rcx, [rbp - 0x51]
mov r9b, 1
movss dword [rsp + 0x20], xmm0
xor r8d, r8d
mov rdx, r12
mov ebx, eax
call fcn.180044f90
call fcn.180048150
movss xmm1, dword [r14 + 0x15a4]
movaps xmm6, xmm0
movss xmm9, dword [rsi + 0xd0]
addss xmm1, xmm1
movss xmm8, dword [rsi + 0xd4]
xorps xmm11, xmm11
movss xmm0, dword [rbp - 0x51]
movaps xmm10, xmm9
comiss xmm0, xmm11
movaps xmm7, xmm8
addss xmm10, xmm6
addss xmm1, dword [rbp - 0x4d]
addss xmm7, xmm6
jbe 0x180067933
addss xmm0, dword [r14 + 0x15b8]
jmp 0x180067936
xorps xmm0, xmm0
addss xmm1, xmm8
movss dword [rbp - 0x49], xmm9
addss xmm0, xmm6
movss dword [rbp - 0x45], xmm8
lea rcx, [rbp - 0x49]
movss dword [rbp - 0x3d], xmm1
addss xmm0, xmm9
movss dword [rbp - 0x41], xmm0
movss xmm1, dword [r14 + 0x15a4]
call fcn.18004a510
xor r8d, r8d
lea rcx, [rbp - 0x49]
mov edx, ebx
call fcn.18004a250
test al, al
je 0x180067c8f
movss xmm1, dword [0x180004c48]
addss xmm7, xmm8
movaps xmm0, xmm10
mov qword [rsp + 0xf0], rdi
addss xmm0, xmm9
mov qword [rsp + 0xb0], r13
movaps xmm9, xmm6
lea r9, [rbp + 0x7f]
xor edi, edi
lea r8, [rbp + 0x77]
mulss xmm7, xmm1
lea rcx, [rbp - 0x49]
mov edx, ebx
mov dword [rsp + 0x20], edi
mulss xmm0, xmm1
addss xmm7, xmm1
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
cvttss2si eax, xmm7
movss xmm7, dword [0x180004c54]
movss dword [rbp - 0x59], xmm0
subss xmm9, xmm7
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm9, xmm1
movss dword [rbp - 0x55], xmm0
call fcn.18005c800
movzx r13d, al
test al, al
je 0x180067a16
mov ecx, ebx
call fcn.18004aa60
mov r8d, 1
lea rcx, [rbp - 0x49]
mov edx, ebx
call fcn.1800503f0
mov rbx, qword [rsi + 0x2b0]
movzx edx, byte [rbp + 0x77]
cmp byte [rbp + 0x7f], dil
je 0x180067a43
test dl, dl
je 0x180067a43
mov ecx, 9
jmp 0x180067a4d
test dl, dl
mov ecx, edi
setne cl
add ecx, 7
movaps xmm1, xmm7
call fcn.180048020
mov r9d, eax
mov dword [rsp + 0x20], 0x10
movaps xmm2, xmm9
lea rdx, [rbp - 0x59]
mov rcx, rbx
call fcn.18006dd30
test r15b, r15b
je 0x180067ac2
mov rbx, qword [rsi + 0x2b0]
movaps xmm1, xmm7
mov ecx, 0x12
call fcn.180048020
divss xmm6, dword [0x180005d00]
mov dword [rsp + 0x20], 0x10
mov r9d, eax
mov rcx, rbx
movaps xmm1, xmm7
movaps xmm2, xmm9
cvttss2si edx, xmm6
movd xmm0, edx
lea rdx, [rbp - 0x59]
cvtdq2ps xmm0, xmm0
maxss xmm1, xmm0
subss xmm2, xmm1
call fcn.18006dd30
movss xmm6, dword [r14 + 0x15ac]
comiss xmm6, xmm11
jbe 0x180067b64
mov rbx, qword [rsi + 0x2b0]
movaps xmm1, xmm7
mov ecx, 6
call fcn.180048020
movss xmm2, dword [rbp - 0x55]
lea rdx, [rbp + 0x77]
movss xmm0, dword [rbp - 0x59]
addss xmm2, xmm7
addss xmm0, xmm7
movss dword [rsp + 0x28], xmm6
mov r9d, eax
mov dword [rsp + 0x20], 0x10
mov rcx, rbx
movss dword [rbp + 0x7b], xmm2
movaps xmm2, xmm9
movss dword [rbp + 0x77], xmm0
call fcn.18006dbb0
mov rbx, qword [rsi + 0x2b0]
movaps xmm1, xmm7
movss xmm6, dword [r14 + 0x15ac]
mov ecx, 5
call fcn.180048020
mov r9d, eax
movss dword [rsp + 0x28], xmm6
movaps xmm2, xmm9
mov dword [rsp + 0x20], 0x10
lea rdx, [rbp - 0x59]
mov rcx, rbx
call fcn.18006dbb0
cmp byte [r14 + 0x2fc8], dil
je 0x180067c41
test r15b, r15b
je 0x180067bd7
cmp byte [0x180005da7], dil
mov eax, dword [0x180005da4]
mov dword [rbp + 0x77], eax
je 0x180067bd1
movabs r8, 0x29e4129e4129e413
nop dword [rax]
nop word [rax + rax]
mov rax, r8
mul rdi
mov rax, rdi
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, dil
sub al, cl
add al, 0x31
xor byte [rbp + rdi + 0x77], al
inc rdi
cmp rdi, 4
jb 0x180067ba0
lea rdx, [rbp + 0x77]
jmp 0x180067c35
cmp byte [0x180005dab], dil
mov eax, dword [0x180005da8]
mov dword [rbp + 0x7f], eax
je 0x180067c31
movabs r8, 0x29e4129e4129e413
nop dword [rax]
nop word [rax + rax]
mov rax, r8
mul rdi
mov rax, rdi
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, dil
sub al, cl
add al, 0x31
xor byte [rbp + rdi + 0x7f], al
inc rdi
cmp rdi, 4
jb 0x180067c00
lea rdx, [rbp + 0x7f]
xor r8d, r8d
lea rcx, [rbp - 0x49]
call fcn.18004a6d0
movss xmm0, dword [rbp - 0x51]
comiss xmm0, xmm11
mov rdi, qword [rsp + 0xf0]
jbe 0x180067c81
addss xmm10, dword [r14 + 0x15b8]
addss xmm8, dword [r14 + 0x15a4]
mov r9b, 1
xor r8d, r8d
mov rdx, r12
movaps xmm0, xmm10
unpcklps xmm0, xmm8
movq rcx, xmm0
call fcn.180050690
movzx eax, r13b
mov r13, qword [rsp + 0xb0]
jmp 0x180067c91
xor al, al
lea r11, [rsp + 0xb8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
mov rsp, r11
pop r15
pop r14
pop r12
pop rsi
pop rbx
pop rbp
ret