Function at 0x14008ae40
Capabilities:
Encode data using xor

Disassembly:
xchg r13, rbx
mov qword [rsp + 0x10], r13
xchg r13, rbx
mov qword [rsp + 0x18], rbp
mov r9, r9
nop
sub rsp, 8
mov qword [rsp], rsi
push rdi
mov dword [rsp - 0x38], esi
push r14
sub rsp, 0x60
movsxd rax, dword [rcx + 0x3c]
mov r15, r15
mov r14, rdx
xchg r8, rsi
mov r8, rsi
xchg rsi, r8
xchg rcx, r11
mov rbx, r11
xchg r11, rcx
mov edx, dword [rax + rcx + 0x98]
test edx, edx
je 0x14008af22
mov dword [rsp - 0x30], 0x46b1ada3
cmp dword [rax + rcx + 0x9c], 0
je 0x14008af22
call fcn.140086250
xchg r15, rax
mov rdi, r15
xchg r15, rax
test rax, rax
mov dword [rsp - 0x34], 0x3824b419
je 0x14008af22
movzx r8d, word [rax + 0xe]
xor ebp, ebp
mov dword [rsp - 0x20], esi
movzx ecx, word [rax + 0xc]
mov edx, ebp
add r8d, ecx
mov dword [rsp - 0x30], 0x2f99f06d
je 0x14008af22
lea rcx, [rax + 0x10]
mov eax, dword [rcx]
mov r10, r10
test eax, eax
js 0x14008af05
cmp ax, 0x10
je 0x14008af5e
mov r14, r14
inc edx
nop
sub rcx, 0x3ddf2bf3
add rcx, 0x3ddf2bfb
cmp edx, r8d
xchg r15, r15
jb 0x14008aeeb
xor al, al
lea r11, [rsp + 0x60]
mov dword [rsp - 0xc], ecx
mov rbx, qword [r11 + 0x28]
xchg r12, rbp
mov r12, qword [r11 + 0x30]
xchg rbp, r12
xchg rsp, r11
mov r11, rsp
xchg rsp, r11
pop r14
mov r8, r8
nop
add rsp, 8
mov rdi, qword [rsp - 8]
nop
add rsp, 8
mov rsi, qword [rsp - 8]
ret
mov edx, dword [rcx + 4]
test edx, edx
jns 0x14008af22
xchg rdi, rdi
btr edx, 0x1f
add rdx, rdi
je 0x14008af22
xchg rsi, rsi
mov r8d, 0x1db9343d
add r8d, 0x2bfaf149
sub r8d, 0x4222cb16
sub r8d, 0x7915a6f
xchg rcx, rbp
mov rbp, rdi
xchg rbp, rcx
call fcn.14008b440
mov r14, r14
test rax, rax
je 0x14008af22
mov r8d, 0x2ab2680f
add r8d, 0x538971df
sub r8d, 0x358168cb
xor r8d, 0x4390b98b
sub r8d, 0xb2ac49f
xchg rbx, rax
mov rdx, rbx
xchg rbx, rax
mov rcx, rdi
mov rsi, rsi
call fcn.14008b3c0
test rax, rax
je 0x14008af22
mov edx, dword [rax]
xchg r10, r10
xchg rbx, r13
mov rcx, r13
xchg r13, rbx
call fcn.140086250
xchg r8, r12
mov r12, rax
xchg r12, r8
test rax, rax
mov r8, r8
je 0x14008af22
mov eax, 0x196ba9b0
add eax, 0x46a562f8
xor eax, 0x63d5856
sub eax, 0x662c5418
mov dword [rsp + 0x20], 0xeae34b1
add dword [rsp + 0x20], 0x22634e08
add dword [rsp + 0x20], 0x41f8b1b0
sub dword [rsp + 0x20], 0x14b597b7
sub dword [rsp + 0x20], 0x5e219c6b
mov word [rsp + 0x3c], ax
mov dword [rsp + 0x24], 0x429f6c3e
sub dword [rsp + 0x24], 0x155d285d
sub dword [rsp + 0x24], 0x1c2b2a01
add dword [rsp + 0x24], 0x1482b6ae
xor dword [rsp + 0x24], 0x25a5d078
mov dword [rsp + 0x28], 0x4c234e52
sub dword [rsp + 0x28], 0x49d3863c
xor dword [rsp + 0x28], 0x2fc954ea
add dword [rsp + 0x28], 0x1620b41f
xor dword [rsp + 0x28], 0x4395514f
mov dword [rsp + 0x2c], 0x276a98d0
sub dword [rsp + 0x2c], 0x244d6081
add dword [rsp + 0x2c], 0x1a1b7a15
add dword [rsp + 0x2c], 0x449b15d3
sub dword [rsp + 0x2c], 0x61b0c73d
mov dword [rsp + 0x30], 0x203e2142
sub dword [rsp + 0x30], 0xdf79c8a
add dword [rsp + 0x30], 0x49f31ff3
xor dword [rsp + 0x30], 0x5c17a4f5
mov dword [rsp + 0x34], 0x19e568c2
add dword [rsp + 0x34], 0x3deb7364
xor dword [rsp + 0x34], 0x42bbd9af
xor dword [rsp + 0x34], 0x2f1c3993
xor dword [rsp + 0x34], 0x3a543cec
mov dword [rsp + 0x38], 0x71f21df6
add dword [rsp + 0x38], 0x97b0c1e
sub dword [rsp + 0x38], 0x77e24457
sub dword [rsp + 0x38], 0x364e55e
mov qword [rsp + 0x80], rbp
mov rcx, rcx
mov rax, qword [rsp + 0x80]
nop dword [rax]
nop word [rax + rax]
xchg rcx, rsi
mov rsi, qword [rsp + 0x80]
xchg rsi, rcx
mov rax, qword [rsp + 0x80]
and cl, 3
xchg r10, r10
shl cl, 3
movzx edx, word [rsp + rax*2 + 0x20]
mov eax, 0x38adf439
add eax, 0x373bb56d
sub eax, 0x48261094
xor eax, 0x1c6711b5
xor eax, 0x510de8b6
shr eax, cl
mov rbx, rbx
movzx ecx, al
mov rax, qword [rsp + 0x80]
xor cx, dx
mov word [rsp + rax*2 + 0x3e], cx
xchg r9, r9
mov rax, qword [rsp + 0x80]
inc rax
mov qword [rsp + 0x80], rax
mov r8, r8
xchg r15, rax
mov r15, qword [rsp + 0x80]
xchg r15, rax
cmp rax, 0xf
jb 0x14008b158
xchg r9, r9
lea rax, [r8 + 6]
mov word [rsp + 0x5c], bp
lea rdi, [rsp + 0x3e]
sub rdi, rax
mov dword [rsp - 0x30], 0x4d432fd7
nop word [rax + rax]
movzx edx, word [rax]
movzx ecx, word [rax + rdi]
sub edx, ecx
mov dword [rsp - 0x44], ecx
jne 0x14008b22e
neg rax
add rax, 0xfffffffffffffffe
neg rax
test ecx, ecx
mov dword [rsp - 0x18], 0x579ee107
jne 0x14008b201
xor eax, eax
lea rdi, [rsp + 0x3e]
mov dword [rsp - 0x28], 0x2f2c6b84
mov ecx, 0x55f34f13
sub ecx, 0x4f5dae77
add ecx, 0x1202ddd4
add ecx, 0x3dd6819e
xor ecx, 0x566f0001
rep stosb byte [rdi], al
mov rsi, rsi
test edx, edx
jne 0x14008af22
mov eax, dword [r8 + 0x28]
mov dword [rsp - 0x40], 0x11317872
xor eax, 0x75b15a6d
cmp eax, 0x8b5e5ed0
jne 0x14008af22
mov dword [rsp - 0xc], 0x6ef5e2ef
cmp dword [r8 + 0x2c], 0x10000
jne 0x14008af22
mov eax, dword [r8 + 0x30]
mov dword [rsp - 0xc], 0x3291f0ab
mov dword [r14], eax
mov eax, dword [r8 + 0x34]
mov dword [rsi], eax
mov al, 0x61
xor al, 0x4b
sub al, 0x22
add al, 0x6b
sub al, 0x72
jmp 0x14008af24