Function at 0x18002c130
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0x90
movaps xmmword [rsp + 0x80], xmm6
movaps xmmword [rsp + 0x70], xmm7
mov rax, qword [0x18007f060]
xor rax, rsp
mov qword [rsp + 0x60], rax
movzx eax, word [rdx]
mov rdi, r8
movss xmm6, dword [0x180074be8]
mov r14, rdx
mov rbp, rcx
test ax, ax
je 0x18002c17e
movd xmm7, eax
cvtdq2ps xmm7, xmm7
jmp 0x18002c181
movaps xmm7, xmm6
mov rcx, qword [r8 + 0x10]
movabs rsi, 0x7fffffffffffffff
mov rdx, qword [0x180080a98]
mov rax, rsi
sub rax, rcx
mov qword [rsp + 0xb8], rbx
cmp rax, rdx
jb 0x18002c53b
cmp qword [r8 + 0x18], 0x10
mov r9, rdi
jb 0x18002c1ba
mov r9, qword [r8]
cmp qword [0x180080aa0], 0x10
lea rax, [0x180080a88]
mov qword [rsp + 0x30], rdx
cmovae rax, qword [0x180080a88]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x40]
call fcn.18001a4e0
mov r11, qword [rsp + 0x58]
lea r8, [rsp + 0x40]
mov r9, qword [rsp + 0x40]
cmp r11, 0x10
mov r10, qword [rsp + 0x50]
cmovae r8, r9
xor ebx, ebx
mov ecx, ebx
mov edx, ebx
test r10, r10
je 0x18002c23c
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + r8]
inc rdx
add eax, ecx
imul ecx, eax, 0x401
mov eax, ecx
shr eax, 6
xor ecx, eax
cmp rdx, r10
jne 0x18002c220
lea eax, [rcx + rcx*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
mov eax, 0x446f8657
imul r8d, ecx, 0x8001
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 7
imul eax, eax, 0xca
sub r8d, eax
mov rax, qword [rbp + 0x278]
add r8d, 0x36
addss xmm7, dword [rax + r8*4]
movss dword [rax + r8*4], xmm7
cmp r11, 0x10
jb 0x18002c2b8
lea rdx, [r11 + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x18002c2b0
mov r9, qword [r9 - 8]
add rdx, 0x27
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002c535
mov rcx, r9
call fcn.180034ec0
movzx eax, word [r14 + 2]
test ax, ax
je 0x18002c2cb
movd xmm7, eax
cvtdq2ps xmm7, xmm7
jmp 0x18002c2ce
movaps xmm7, xmm6
mov rcx, qword [rdi + 0x10]
mov rax, rsi
mov rdx, qword [0x180080598]
sub rax, rcx
cmp rax, rdx
jb 0x18002c53b
cmp qword [rdi + 0x18], 0x10
mov r9, rdi
jb 0x18002c2f5
mov r9, qword [rdi]
cmp qword [0x1800805a0], 0x10
lea rax, [0x180080588]
mov qword [rsp + 0x30], rdx
cmovae rax, qword [0x180080588]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x40]
call fcn.18001a4e0
mov r11, qword [rsp + 0x58]
lea r8, [rsp + 0x40]
mov r9, qword [rsp + 0x40]
cmp r11, 0x10
mov r10, qword [rsp + 0x50]
mov ecx, ebx
cmovae r8, r9
mov rdx, rbx
test r10, r10
je 0x18002c36c
nop dword [rax + rax]
movzx eax, byte [rdx + r8]
inc rdx
add eax, ecx
imul ecx, eax, 0x401
mov eax, ecx
shr eax, 6
xor ecx, eax
cmp rdx, r10
jne 0x18002c350
lea eax, [rcx + rcx*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
mov eax, 0x446f8657
imul r8d, ecx, 0x8001
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 7
imul eax, eax, 0xca
sub r8d, eax
mov rax, qword [rbp + 0x278]
add r8d, 0x36
addss xmm7, dword [rax + r8*4]
movss dword [rax + r8*4], xmm7
cmp r11, 0x10
jb 0x18002c3e8
lea rdx, [r11 + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x18002c3e0
mov r9, qword [r9 - 8]
add rdx, 0x27
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002c535
mov rcx, r9
call fcn.180034ec0
movzx eax, word [r14 + 4]
test ax, ax
je 0x18002c3f9
movd xmm6, eax
cvtdq2ps xmm6, xmm6
mov rcx, qword [rdi + 0x10]
mov rdx, qword [0x1800803b8]
sub rsi, rcx
cmp rsi, rdx
jb 0x18002c53b
cmp qword [rdi + 0x18], 0x10
jb 0x18002c41a
mov rdi, qword [rdi]
cmp qword [0x1800803c0], 0x10
lea rax, [0x1800803a8]
mov qword [rsp + 0x30], rdx
mov r9, rdi
cmovae rax, qword [0x1800803a8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x40]
call fcn.18001a4e0
mov r10, qword [rsp + 0x58]
lea rdx, [rsp + 0x40]
mov r8, qword [rsp + 0x40]
cmp r10, 0x10
mov r9, qword [rsp + 0x50]
mov rcx, rbx
cmovae rdx, r8
test r9, r9
je 0x18002c48c
movzx eax, byte [rcx + rdx]
inc rcx
add eax, ebx
imul ebx, eax, 0x401
mov eax, ebx
shr eax, 6
xor ebx, eax
cmp rcx, r9
jne 0x18002c471
lea ecx, [rbx + rbx*8]
mov eax, 0x446f8657
mov edx, ecx
shr edx, 0xb
xor edx, ecx
imul ecx, edx, 0x8001
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 7
imul eax, eax, 0xca
sub ecx, eax
mov rax, qword [rbp + 0x278]
add ecx, 0x36
addss xmm6, dword [rax + rcx*4]
movss dword [rax + rcx*4], xmm6
cmp r10, 0x10
jb 0x18002c4fd
lea rdx, [r10 + 1]
mov rax, r8
cmp rdx, 0x1000
jb 0x18002c4f5
mov r8, qword [r8 - 8]
add rdx, 0x27
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18002c535
mov rcx, r8
call fcn.180034ec0
mov rbx, qword [rsp + 0xb8]
mov al, 1
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.180034ea0
mov rbp, qword [rsp + 0xc8]
movaps xmm6, xmmword [rsp + 0x80]
movaps xmm7, xmmword [rsp + 0x70]
add rsp, 0x90
pop r14
pop rdi
pop rsi
ret
call fcn.18003b6f4
int3
call fcn.180005f70
int3