Function at 0x14006c920
Capabilities:
Encode data using xor

Disassembly:
xchg rsi, rbx
mov qword [rsp + 8], rsi
xchg rbx, rsi
xchg r8, rbp
mov qword [rsp + 0x10], r8
xchg rbp, r8
mov qword [rsp + 0x20], rsi
mov dword [rsp - 0x24], ecx
mov word [rsp + 0x18], r8w
push rdi
nop
sub rsp, 8
mov qword [rsp], r12
push rax
mov qword [rsp], r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r15
neg rsp
sub rsp, 0xffffffffffffffa0
neg rsp
mov r12, qword [rdx + 0x38]
mov dword [rsp - 0x3c], 0x31ca864b
xchg rdx, rdi
mov rdx, rdi
xchg rdx, rdi
xchg rcx, r15
mov rcx, r15
xchg r15, rcx
neg r12
add r12, 0xfffffffffffffffe
neg r12
mov eax, 0x1a9dad7f
xor eax, 0x2bd9745c
add eax, 0xeb2d7cc
add eax, 0xd54c209
sub eax, 0x4d4c72f6
nop
movabs rsi, 0xffffffff3f506c9e
sub rsi, 0x21d6bf89
sub rsi, 0x169d439b
add rsi, 0x3cad46ca
add rsi, 0x7fffffff
xor rsi, 0x3c764fbc
mul r12
cmovo rax, rsi
mov rsp, rsp
xchg rcx, r12
mov r12, rax
xchg rcx, r12
call fcn.1400bbad0
mov r13, qword [rdi + 0x38]
mov rsp, rsp
lea rcx, [rsp + 0x20]
mov rbp, qword [rdi]
xorps xmm0, xmm0
mov dword [rsp - 0x30], edi
xchg r14, rax
mov rax, r14
xchg r14, rax
lea rax, [rsp + 0x28]
mov dword [rsp - 0x44], 0x736d7b17
xchg rbp, rax
mov qword [rsp + 0x20], rbp
xchg rbp, rax
lea rdx, [r13 + 1]
xchg rdi, rdi
xchg r12, rsp
movups xmmword [r12 + 0x28], xmm0
xchg rsp, r12
xchg rbx, rsp
movups xmmword [rbx + 0x38], xmm0
xchg rsp, rbx
xchg rbx, rsp
movups xmmword [rbx + 0x48], xmm0
xchg rbx, rsp
call fcn.1400189f0
mov ebx, 0x15cf46ad
add ebx, 0x58e542be
add ebx, 0xbdb4668
add ebx, 0x88ce4
mov r8, rax
xchg rbx, rbx
mov ecx, ebx
mov r9d, 0x304296ae
add r9d, 0x1e8ced0b
xor r9d, 0x130bdf3b
sub r9d, 0xdbc0aac
sub r9d, 0x500850d7
test r13, r13
mov dword [rsp - 0x40], esp
je 0x14006caed
xchg rcx, rax
mov rdx, rcx
xchg rcx, rax
sub rbp, rax
mov dword [rsp - 0xc], ebp
xchg r13, rdi
mov r13, rdi
xchg r13, rdi
nop dword [rax]
mov dword [rsp - 0x20], ebx
movzx eax, cx
lea rdx, [rdx + 2]
and ax, r9w
ror ecx, 5
ror ecx, 1
ror ecx, 1
ror ecx, 1
xor ax, word [rdx + rbp - 2]
mov r12, r12
mov word [rdx - 2], ax
sub rdi, 1
jne 0x14006cac3
xor ebp, ebp
xchg rdi, rdi
xchg rdx, r12
mov r12, rdx
xchg r12, rdx
mov word [r8 + r13*2], bp
mov dword [rsp - 0x20], ebp
xchg rcx, rsp
mov rsp, r14
xchg rcx, rsp
xchg r8, rbx
mov rbx, qword [rsp + 0x20]
xchg r8, rbx
call fcn.1400bcd20
xchg rcx, rdx
mov rdx, qword [rsp + 0x20]
xchg rdx, rcx
lea rax, [rsp + 0x28]
cmp rcx, rax
mov r11, r11
jne 0x14006cb64
lea rdi, [rsp + 0x28]
xor eax, eax
mov ecx, 0xb864762
xor ecx, 0x5ce6f8fc
xor ecx, 0x1077732f
add ecx, 0x31e42db3
sub ecx, 0x78fbfa34
rep stosb byte [rdi], al
jmp 0x14006cb6d
call fcn.1400bbca0
mov dword [rsp - 0x40], esp
movzx eax, word [rsp + 0xa0]
xorps xmm0, xmm0
mov word [r14 + r12*2 - 4], ax
mov dword [rsp - 0x18], 0xfafa5f7
lea rax, [r15 + 8]
mov word [r14 + r12*2 - 2], bp
xchg rbp, rax
mov qword [r15], rbp
xchg rbp, rax
xchg r14, rax
movups xmmword [r14], xmm0
xchg r14, rax
xchg r8, rax
movups xmmword [r8 + 0x10], xmm0
xchg r8, rax
movups xmmword [rax + 0x20], xmm0
inc rsi
mov dword [rsp - 0x34], 0x6da027fa
cmp word [r14 + rsi*2], bp
jne 0x14006cbac
mov rdx, rsi
mov qword [r15 + 0x38], rsi
xchg r13, r13
xchg r15, rcx
mov r15, rcx
xchg r15, rcx
call fcn.1400189f0
mov dword [rsp - 0x24], esp
cmp qword [r15 + 0x38], rbp
jbe 0x14006cc56
xchg rdx, r14
mov r14, rdx
xchg r14, rdx
mov edi, 0x4298db3c
sub edi, 0xb60047a
sub edi, 0x104b6cb
sub edi, 0x1fbddf76
sub edi, 0x16763f82
sub rdx, rax
nop dword [rax + rax]
mov r13, r13
movzx ecx, bx
lea rax, [rax + 2]
and cx, di
mov dword [rsp - 0x2c], 0x1eb40498
ror ebx, 3
ror ebx, 1
ror ebx, 3
ror ebx, 1
xor cx, word [rdx + rax - 2]
mov dword [rsp - 0x24], 0x262f5dc3
inc rbp
mov word [rax - 2], cx
cmp rbp, qword [r15 + 0x38]
jb 0x14006cc19
mov r12, r12
xchg r14, rcx
mov r14, rcx
xchg rcx, r14
call fcn.1400bbae0
lea r11, [rsp + 0x60]
xchg rsp, rax
mov rsp, r15
xchg rsp, rax
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov dword [rsp - 0x3c], esi
xchg rsi, rdi
mov rdi, qword [r11 + 0x48]
xchg rsi, rdi
xchg r11, rbp
mov rsp, rbp
xchg rbp, r11
pop r15
nop
mov r14, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
add rsp, 8
mov r12, qword [rsp - 8]
nop
mov rdi, qword [rsp]
add rsp, 8
ret