Function at 0x14008cafc
Capabilities:
Encode data using xor

Disassembly:
xchg rcx, r8
mov qword [rsp + 0x18], rcx
xchg rcx, r8
nop
mov qword [rsp - 8], rbp
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], rsi
push rsi
mov qword [rsp], r12
push r13
mov r14, r14
nop
sub rsp, 8
mov qword [rsp], r14
lea rbp, [rsp - 0xc0]
mov r13, r13
neg rsp
sub rsp, 0xfffffffffffffe40
neg rsp
mov qword [rcx], 0x1da89dbf
add qword [rcx], 0xbfa32a3
add qword [rcx], 0xe197713
add qword [rcx], 0x17437f90
sub qword [rcx], 0x4effc705
xchg r14, rdx
mov rdx, r9
xchg r14, rdx
mov qword [rcx + 8], 0x74d9a0e6
sub qword [rcx + 8], 0x36dc26a7
add qword [rcx + 8], 0xc987cb3
xor qword [rcx + 8], 0x435acf38
xor qword [rcx + 8], 0x9cf39ca
xchg r8, r13
mov r8, r13
xchg r8, r13
mov qword [rcx + 0x10], 0x3e7dea7c
add qword [rcx + 0x10], 0x1e68bb54
sub qword [rcx + 0x10], 0x4db2f214
sub qword [rcx + 0x10], 0xf33b3bc
xchg r14, rdx
mov r12, r14
xchg r14, rdx
mov qword [rcx + 0x18], 0x6716a24e
sub qword [rcx + 0x18], 0xca64ae4
add qword [rcx + 0x18], 0xd074c13
sub qword [rcx + 0x18], 0x6777a37c
xchg rdx, rcx
mov rsi, rdx
xchg rcx, rdx
xchg rdi, rax
mov rdi, qword [rdx + 0x78]
xchg rdi, rax
cmp rax, 0x78
jbe 0x14008c6ac
mov dword [rsp - 0x3c], esi
xchg r8, rcx
mov r8, qword [rdx]
xchg rcx, r8
jmp 0x14008c6b8
xor ecx, ecx
xchg r9, r9
test rax, rax
cmovne rcx, r12
mov rax, qword [rcx]
mov dword [rsp - 0x14], ebp
lea r8, [rsp + 0x28]
mov r9d, 0x4a1f463
add r9d, 0x234103ff
add r9d, 0xc3b9b7d
xor r9d, 0x4527462d
sub r9d, 0x7139d5de
xchg r12, r13
mov rdx, r12
xchg r13, r12
call qword [rax + 8]
mov dword [rsp - 0x44], edx
test al, al
jne 0x14008c711
xchg rsi, rcx
mov rsi, r12
xchg rcx, rsi
call fcn.140086d30
jmp 0x14008d0e4
xchg r11, rbx
mov qword [rsp + 0x208], r11
xchg r11, rbx
mov qword [rsp + 0x1b8], rdi
mov dword [rsp - 0x20], 0x17c45af3
nop
movabs rdi, 0xffffffff5010623f
xor rdi, 0x6ef02176
add rdi, 0x295695dc
add rdi, 0xa6ad4d9
add rdi, 0x7fffffff
add rdi, 0xd5e5202
xchg rsi, rdi
mov rax, rsi
xchg rsi, rdi
xchg r15, r11
mov qword [rsp + 0x1b0], r11
xchg r11, r15
nop word [rax + rax]
inc rax
cmp word [r14 + rax*2 + 8], 0
mov dword [rsp - 0x34], 0x21854dd3
jne 0x14008c77e
mov ecx, dword [rsp + 0x2c]
lea r15, [rax - 4]
mov dword [rsp - 0x2c], 0x50bfb2ba
cmp rax, 4
cmovbe r15, rax
mov eax, 0x283d704a
add eax, 0x16fd0a53
xor eax, 0x17b636da
xor eax, 0x288c4c4b
mul rcx
xchg r15, r15
cmovo rax, rdi
xchg rbp, rcx
mov rbp, rax
xchg rcx, rbp
call fcn.140099140
mov dword [rsp - 0x14], 0x153458ae
mov ecx, dword [rsp + 0x2c]
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
mov rdx, qword [r12 + 0x78]
mov qword [rbp + 0xf8], rax
mov rsi, rsi
lea r9, [rcx + rcx*2]
shl r9, 1
shl r9, 1
cmp rdx, 0x78
xchg r9, r9
jbe 0x14008c822
xchg rcx, r15
mov r15, qword [r12]
xchg rcx, r15
jmp 0x14008c82e
xor ecx, ecx
test rdx, rdx
cmovne rcx, r12
mov r14, r14
xchg r10, rax
mov r10, qword [rcx]
xchg r10, rax
lea rdx, [r13 + 8]
mov dword [rsp - 0x1c], ecx
mov r8, rbx
call qword [rax + 8]
test al, al
xchg r9, r9
je 0x14008d01d
xor edi, edi
cmp dword [rsp + 0x2c], edi
xchg rdx, rdx
jbe 0x14008d01d
xorps xmm0, xmm0
lea rcx, [rdi + rdi*2]
mov r8, r8
mov eax, dword [rbx + rcx*4 + 4]
lea rbx, [rbx + rcx*4]
mov edx, 0x29c3728d
add edx, 0x3f5bd0cd
sub edx, 0x17afbf4d
sub edx, 0x516f838f
mov r9d, edx
xchg r15, r15
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
xchg r12, rbp
movups xmmword [r12 + 0x50], xmm0
xchg rbp, r12
movups xmmword [rbp + 0x60], xmm0
xchg r14, r14
xchg rbp, r8
movups xmmword [r8 + 0x70], xmm0
xchg r8, rbp
xchg rbp, r15
movups xmmword [r15 + 0x80], xmm0
xchg rbp, r15
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
cmp eax, edx
mov dword [rsp - 0x2c], 0x44f21f92
ja 0x14008c8e1
mov r9d, eax
mov edx, dword [rbx]
mov rax, qword [r12 + 0x78]
xchg rbx, rbx
add rdx, r13
cmp rax, 0x78
jbe 0x14008c904
mov rcx, qword [r12]
xchg rsp, rsp
jmp 0x14008c910
xor ecx, ecx
test rax, rax
mov rsp, rsp
cmovne rcx, r12
mov rax, qword [rcx]
lea r8, [rbp + 0x30]
call qword [rax + 8]
xchg rdx, rdx
test al, al
je 0x14008c949
xchg r15, r8
mov r15, r8
xchg r15, r8
lea rdx, [r14 + 8]
lea rcx, [rbp + 0x30]
xchg rbp, rbp
call fcn.14009a150
test eax, eax
je 0x14008c96f
xchg rbp, rbp
xchg r13, rbx
mov r13, qword [rbp + 0xf8]
xchg r13, rbx
inc edi
mov dword [rsp - 0x20], 0x2cb2d15e
cmp edi, dword [rsp + 0x2c]
jae 0x14008d01d
jmp 0x14008c85d
mov ebx, dword [rbx + 8]
xchg rdi, rax
mov rdi, qword [r12 + 0x78]
xchg rdi, rax
add rbx, r13
mov r12, r12
xchg rbx, rcx
mov qword [rsp + 0x20], rcx
xchg rcx, rbx
cmp rax, 0x78
jbe 0x14008c9a3
mov dword [rsp - 0x24], edi
mov rcx, qword [r12]
jmp 0x14008c9b0
xor ecx, ecx
mov dword [rsp - 0x28], esp
test rax, rax
cmovne rcx, r12
mov rax, qword [rcx]
lea r8, [rbp - 0x70]
xchg r9, r9
mov r9d, 0x44cff703
sub r9d, 0x12ad5d2c
xor r9d, 0x2496bb36
sub r9d, 0x16b422cd
xchg rdi, rbx
mov rdx, rdi
xchg rdi, rbx
call qword [rax + 8]
test al, al
xchg rcx, rcx
je 0x14008d010
xor r14d, r14d
mov dword [rbp + 0xf0], r14d
xchg rbx, rbx
cmp dword [rbp - 0x70], r14d
jbe 0x14008d010
mov r15d, 0x2307db5e
sub r15d, 0x30d5679
add r15d, 0x3ee67dd3
add r15d, 0x15eb4794
sub r15d, 0x74cc494d
nop dword [rax + rax]
mov rax, qword [r12 + 0x78]
cmp rax, 0x78
mov dword [rsp - 0x2c], edi
jbe 0x14008ca4c
xchg r15, rcx
mov r15, qword [r12]
xchg r15, rcx
jmp 0x14008ca58
xor ecx, ecx
mov r10, r10
test rax, rax
cmovne rcx, r12
xchg r13, rax
mov r13, qword [rcx]
xchg r13, rax
lea r8, [rbp - 0x80]
mov edx, r14d
mov dword [rsp - 0xc], ebx
mov r9d, 0x454f2571
add r9d, 0x30d4ed26
sub r9d, 0x43681c32
xor r9d, 0x32bbf675
shl rdx, 3
shl rdx, 1
neg rdx
add rdx, 0xfffffffffffffffc
neg rdx
xchg rdi, r9
mov r9, qword [rax + 8]
xchg rdi, r9
add rdx, rbx
mov r13, r13
call rdi
test al, al
je 0x14008cff8
movzx eax, word [rbp - 0x74]
mov dword [rsp - 0x10], ecx
xorps xmm0, xmm0
mov ecx, 0x378cbb89
xor ecx, 0x5149075d
xor ecx, 0x7e6009e4
sub ecx, 0x1587225c
xor ecx, 0x31e92aa
mov r9d, ecx
xchg rbp, rbx
movups xmmword [rbx - 0x50], xmm0
xchg rbx, rbp
xchg r8, rbp
movups xmmword [r8 - 0x40], xmm0
xchg r8, rbp
xchg rbp, r12
movups xmmword [r12 - 0x30], xmm0
xchg r12, rbp
movups xmmword [rbp - 0x20], xmm0
xchg r10, rbp
movups xmmword [r10 - 0x10], xmm0
xchg rbp, r10
xchg r8, rbp
movups xmmword [r8], xmm0
xchg rbp, r8
xchg rbp, rdi
movups xmmword [rdi + 0x10], xmm0
xchg rbp, rdi
movups xmmword [rbp + 0x20], xmm0
cmp cx, ax
mov dword [rsp - 0x10], edi
jb 0x14008cb33
mov r9d, eax
mov edx, dword [rbp - 0x78]
xchg r9, r9
xchg rbp, rax
mov rbp, qword [r12 + 0x78]
xchg rbp, rax
add rdx, r13
cmp rax, 0x78
xchg r15, r15
jbe 0x14008cb5b
mov rcx, qword [r12]
jmp 0x14008cb6c
xor ecx, ecx
test rax, rax
cmovne rcx, r12
mov dword [rsp - 0x10], 0x5472e605
xchg r9, rax
mov r9, qword [rcx]
xchg r9, rax
lea r8, [rbp - 0x50]
xchg r15, r15
call qword [rax + 8]
test al, al
je 0x14008cff8
mov dword [rsp - 0x3c], 0x147365ab
xorps xmm0, xmm0
lea rax, [rsp + 0x48]
xchg r13, rax
mov qword [rsp + 0x40], r13
xchg r13, rax
nop
movabs rdx, 0xffffffff0512d61d
add rdx, 0x581e5286
sub rdx, 0x5a2a06f8
add rdx, 0x6436b64d
add rdx, 0x7fffffff
add rdx, 0x18c22808
lea rax, [rbp - 0x50]
xchg r14, rsp
movups xmmword [r14 + 0x48], xmm0
xchg rsp, r14
xchg rsp, rdi
movups xmmword [rdi + 0x58], xmm0
xchg rdi, rsp
xchg r14, rsp
movups xmmword [r14 + 0x68], xmm0
xchg r14, rsp
inc rdx
cmp word [rax + rdx*2], 0
mov r10, r10
jne 0x14008cbf0
lea rcx, [rsp + 0x40]
xchg rdx, r11
mov qword [rsp + 0x78], r11
xchg rdx, r11
call fcn.140017b4c
mov r10, r10
xor edi, edi
mov rdx, rax
mov ecx, 0x462de0e7
sub ecx, 0x322b8c87
add ecx, 0x1088a9ad
sub ecx, 0x9abca22
cmp qword [rsp + 0x78], rdi
jbe 0x14008cc9c
xchg r12, r12
lea r8, [rbp - 0x50]
sub r8, rax
nop dword [rax]
nop dword [rax + rax]
mov dword [rsp - 0x28], ebp
movzx eax, cx
lea rdx, [rdx + 2]
and ax, r15w
mov dword [rsp - 0x24], 0x4e0eb651
ror ecx, 2
ror ecx, 1
ror ecx, 3
ror ecx, 1
ror ecx, 1
xor ax, word [r8 + rdx - 2]
xchg rbx, rbx
inc rdi
mov word [rdx - 2], ax
cmp rdi, qword [rsp + 0x78]
jb 0x14008cc5a
mov dword [rsp - 0x44], 0x1c896d44
mov rax, qword [rsi + 8]
test rax, rax
je 0x14008cebd
xchg r11, rcx
mov r11, qword [rsi + 0x10]
xchg r11, rcx
cmp rax, rcx
xchg r14, r14
jb 0x14008ceb5
add rcx, qword [rsi + 0x18]
mov qword [rsi + 0x10], rcx
mov rbp, rbp
shl rcx, 6
call fcn.1400995f0
xchg r12, rcx
mov r12, qword [rsi + 8]
xchg rcx, r12
xor r14d, r14d
mov dword [rsp - 0x40], ecx
xchg r13, rsi
mov rsi, rax
xchg rsi, r13
test rcx, rcx
je 0x14008ce04
nop
movabs r15, 0xffffffff22b620a3
add r15, 0x3ee988cc
sub r15, 0x6a0cff0
xor r15, 0x4a14c7b6
add r15, 0x7fffffff
xor r15, 0x6f15e100
lea rdi, [rax + 0x38]
mov rdx, rdx
sub r15, rax
nop word [rax + rax]
lea rax, [rdi - 0x30]
mov dword [rsp - 0x20], 0x18ec38b4
xorps xmm0, xmm0
lea rcx, [rdi - 0x38]
lea rbx, [r15 + rdi]
mov dword [rsp - 0x1c], esi
add rbx, qword [rsi]
mov qword [rcx], rax
xchg rsi, rax
movups xmmword [rsi], xmm0
xchg rsi, rax
xchg r8, rax
movups xmmword [r8 + 0x10], xmm0
xchg r8, rax
xchg rdx, rax
movups xmmword [rdx + 0x20], xmm0
xchg rdx, rax
mov rdx, qword [rbx + 0x38]
mov dword [rsp - 0x1c], ecx
mov qword [rdi], rdx
call fcn.140017b4c
xor ecx, ecx
cmp qword [rdi], rcx
xchg r13, r13
jbe 0x14008cdbd
nop dword [rax]
nop word [rax + rax]
xchg rdx, rsi
mov rsi, qword [rbx]
xchg rsi, rdx
movzx edx, word [rdx + rcx*2]
mov dword [rsp - 0x18], ebp
mov word [rax + rcx*2], dx
inc rcx
cmp rcx, qword [rdi]
mov dword [rsp - 0x18], esp
jb 0x14008cd98
xchg rcx, r8
mov r8, qword [rsi + 8]
xchg r8, rcx
inc r14
nop
sub rdi, 0x624effa9
add rdi, 0x624effe9
cmp r14, rcx
jb 0x14008cd34
mov r15d, 0x68b6e5a7
xor r15d, 0x3f0d14ca
xor r15d, 0x6ce2a08f
add r15d, 0x35d1f3a2
sub r15d, 0x712b4485
cmp qword [rsi], 0
mov r12, r12
je 0x14008cea0
xor ebx, ebx
test rcx, rcx
je 0x14008ce8e
mov rbp, rbp
xor r14d, r14d
nop dword [rax]
xchg r14, rax
mov r14, qword [rsi]
xchg r14, rax
mov rcx, qword [r14 + rax]
lea rdi, [rax + 8]
add rdi, r14
xchg rbx, rbx
cmp rcx, rdi
jne 0x14008ce6a
xor eax, eax
mov ecx, 0x29a8e1f0
add ecx, 0x30231624
sub ecx, 0x3dbdda6
sub ecx, 0x55f01a3e
rep stosb byte [rdi], al
xchg rsp, rsp
jmp 0x14008ce6f
call fcn.1400992c0
inc rbx
nop
add r14, 0x647dfc21
sub r14, 0x647dfbe1
cmp rbx, qword [rsi + 8]
xchg r12, r12
jb 0x14008ce29
xchg rcx, rsp
mov rsp, qword [rsi]
xchg rsp, rcx
call fcn.1400992c0
mov dword [rsp - 0x10], ebx
mov r14d, dword [rbp + 0xf0]
xchg r13, r15
mov qword [rsi], r15
xchg r13, r15
jmp 0x14008cefe
mov r13, qword [rsi]
jmp 0x14008cefe
xchg rcx, r13
mov rcx, qword [rsi]
xchg r13, rcx
test r13, r13
jne 0x14008cefe
xchg rcx, r15
mov r15, qword [rsi + 0x18]
xchg rcx, r15
xchg r11, rcx
mov qword [rsi + 0x10], r11
xchg r11, rcx
shl rcx, 3
shl rcx, 1
shl rcx, 1
shl rcx, 1
call fcn.1400995f0
xchg r10, r10
mov r13, rax
mov qword [rsi], rax
xchg r9, rax
mov r9, qword [rsi + 8]
xchg r9, rax
xorps xmm0, xmm0
mov dword [rsp - 0x34], 0x4edfed33
mov rbx, rax
shl rbx, 4
shl rbx, 1
shl rbx, 1
add rbx, r13
inc rax
xchg rdi, rbx
mov rcx, rdi
xchg rdi, rbx
mov qword [rsi + 8], rax
lea rax, [rbx + 8]
xchg rdx, rdx
mov qword [rbx], rax
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
xchg r10, r10
xchg rdi, rax
movups xmmword [rdi + 0x20], xmm0
xchg rdi, rax
xchg rdx, rax
mov rdx, qword [rsp + 0x78]
xchg rdx, rax
mov qword [rbx + 0x38], rax
xchg rdx, rsi
mov rsi, qword [rsp + 0x78]
xchg rsi, rdx
call fcn.140017b4c
mov rbp, rbp
xor edi, edi
cmp qword [rbx + 0x38], rdi
jbe 0x14008cf9b
mov dword [rsp - 0x1c], edi
mov rcx, qword [rsp + 0x40]
movzx edx, word [rcx + rdi*2]
mov word [rax + rdi*2], dx
mov dword [rsp - 0x1c], ebp
inc rdi
cmp rdi, qword [rbx + 0x38]
jb 0x14008cf7d
xchg rcx, r15
mov r15, qword [rsp + 0x40]
xchg r15, rcx
lea rax, [rsp + 0x48]
cmp rcx, rax
mov dword [rsp - 0x24], ebp
jne 0x14008cfe1
lea rdi, [rsp + 0x48]
xor eax, eax
mov ecx, 0xf64cd2f
xor ecx, 0x12d23a54
xor ecx, 0x14d81679
sub ecx, 0x96ee0d2
rep stosb byte [rdi], al
mov dword [rsp - 0x3c], ecx
jmp 0x14008cfe6
call fcn.1400992c0
mov r13, qword [rbp + 0x100]
xchg rbx, rdi
mov rdi, qword [rsp + 0x20]
xchg rbx, rdi
inc r14d
mov dword [rbp + 0xf0], r14d
cmp r14d, dword [rbp - 0x70]
mov dword [rsp - 0x44], ebx
jb 0x14008ca2a
xchg rbx, r10
mov r10, qword [rbp + 0xf8]
xchg r10, rbx
xchg rcx, rbx
mov rbx, rcx
xchg rbx, rcx
call fcn.140099150
xchg rdi, rdi
xchg rbx, rax
mov rbx, qword [r12 + 0x78]
xchg rbx, rax
xchg r15, rbx
mov rbx, qword [rsp + 0x1b0]
xchg rbx, r15
xchg rdi, r15
mov r15, qword [rsp + 0x1b8]
xchg r15, rdi
mov rbx, qword [rsp + 0x208]
cmp rax, 0x78
mov dword [rsp - 0x2c], 0x73858d5e
jbe 0x14008d094
xchg rcx, r15
mov r15, qword [r12]
xchg r15, rcx
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov dword [rsp - 0x34], 0x3aab7b99
mov rcx, qword [r12]
call fcn.1400992c0
jmp 0x14008d0b7
test rax, rax
mov dword [rsp - 0x34], 0x534aaed4
je 0x14008d0b7
xchg rcx, rax
mov rcx, qword [r12]
xchg rcx, rax
xor edx, edx
xchg r9, r9
mov rcx, r12
call qword [rax]
mov qword [r12 + 0x78], 0x7b3197ee
sub qword [r12 + 0x78], 0xc029101
sub qword [r12 + 0x78], 0x616fa94d
xor qword [r12 + 0x78], 0x25bddbde
sub qword [r12 + 0x78], 0x2802867e
xchg rsi, rax
mov rsi, rax
xchg rsi, rax
add rsp, 0x79e06fd3
sub rsp, 0x79e06e13
nop
add rsp, 8
mov r14, qword [rsp - 8]
nop
mov r13, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r12, qword [rsp - 8]
nop
mov rsi, qword [rsp]
add rsp, 8
nop
mov rbp, qword [rsp]
add rsp, 8
ret