Function at 0x14009d5e5
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
push rbp
mov dword [rsp - 0xc], esi
push rbx
nop
push r10
mov qword [rsp], rsi
nop
mov qword [rsp - 8], r12
sub rsp, 8
nop
push 0x3c44aea3
mov qword [rsp], r15
lea rbp, [rsp - 0xc0]
mov rdi, rdi
add rsp, 0x28668f99
sub rsp, 0x28669159
xchg r10, rcx
mov rsi, r10
xchg rcx, r10
xchg rbx, r9
mov r9, rbx
xchg r9, rbx
xor ecx, ecx
xchg r8, r12
mov r8, r12
xchg r12, r8
xchg rbx, r15
mov rbx, rdx
xchg r15, rbx
mov qword [rsi], rcx
xchg r10, r10
xchg rcx, rbp
mov qword [rsi + 8], rbp
xchg rbp, rcx
xchg r10, rcx
mov qword [rsi + 0x10], r10
xchg rcx, r10
mov qword [rsi + 0x18], 0x4302469d
sub qword [rsi + 0x18], 0x281e964
sub qword [rsi + 0x18], 0x2ac5e3a0
xor qword [rsi + 0x18], 0x15ba7998
mov rax, qword [rdx + 0x78]
cmp rax, 0x78
mov dword [rsp - 0x1c], ecx
jbe 0x14009d169
mov rcx, qword [rdx]
jmp 0x14009d173
test rax, rax
cmovne rcx, r15
mov rsp, rsp
mov rax, qword [rcx]
lea r8, [rsp + 0x78]
mov r9d, 0x7662287e
xor r9d, 0x42b5781f
sub r9d, 0x1df5b9a6
sub r9d, 0x11be00c6
sub r9d, 0x52395d5
mov rdx, r12
call qword [rax + 8]
test al, al
mov r15, r15
jne 0x14009d1be
mov rcx, r15
call fcn.1400983b0
xchg rcx, rcx
jmp 0x14009db4f
mov qword [rsp + 0x208], rdi
xchg rdi, rdi
nop
movabs rdi, 0xffffffff583d11bc
sub rdi, 0x4f108245
add rdi, 0x6bb8ebdf
add rdi, 0x7fffffff
add rdi, 0xb1a84aa
xchg r14, r13
mov qword [rsp + 0x1b8], r14
xchg r14, r13
xchg r11, rax
mov r11, rdi
xchg r11, rax
mov qword [rsp + 0x1b0], r14
nop dword [rax]
mov r13, r13
inc rax
cmp word [rbx + rax*2], 0
jne 0x14009d217
mov ecx, dword [rbp - 0x7c]
mov dword [rsp - 0x2c], 0x6e7b8f8e
lea r14, [rax - 6]
cmp rax, 6
cmovbe r14, rax
mov dword [rsp - 0x3c], 0x49610e5f
mov eax, 0x2860d360
add eax, 0x2606e2c5
add eax, 0x2f528e8a
sub eax, 0x7dba44a7
mul rcx
xchg rcx, rcx
cmovo rax, rdi
xchg rbp, rax
mov rcx, rbp
xchg rbp, rax
call fcn.1400bbf80
mov r9d, dword [rbp - 0x7c]
mov dword [rsp - 0x3c], ebx
xchg r13, rax
mov rax, r13
xchg r13, rax
mov edi, dword [rbp - 0x74]
mov rdx, qword [r15 + 0x78]
add rdi, r12
xchg rdi, rdi
shl r9, 3
mov qword [rbp + 0xf8], rax
cmp rdx, 0x78
jbe 0x14009d2b1
mov dword [rsp - 0x34], ebx
xchg rsp, rcx
mov rsp, qword [r15]
xchg rcx, rsp
jmp 0x14009d2c2
xor ecx, ecx
mov dword [rsp - 0x40], 0xf06825d
test rdx, rdx
cmovne rcx, r15
xchg rdx, rax
mov rdx, qword [rcx]
xchg rdx, rax
xchg r8, r13
mov r13, r8
xchg r13, r8
mov rdx, rdi
call qword [rax + 8]
mov dword [rsp - 0x40], esp
test al, al
je 0x14009da90
xor edi, edi
cmp dword [rbp - 0x7c], edi
mov dword [rsp - 0x28], 0x6cde0b91
jbe 0x14009da90
nop dword [rax]
mov ecx, dword [r13 + rdi*8 + 4]
mov dword [rsp - 0xc], esp
mov rax, qword [r15 + 0x78]
lea rdx, [rcx + rcx*2]
mov ecx, dword [rbp - 0x78]
mov dword [rsp - 0x1c], 0xeb920e4
add rcx, r12
lea rdx, [rcx + rdx*8]
cmp rax, 0x78
jbe 0x14009d333
mov rdi, rdi
mov rcx, qword [r15]
jmp 0x14009d33f
xor ecx, ecx
test rax, rax
xchg r11, r11
cmovne rcx, r15
xchg r14, rax
mov r14, qword [rcx]
xchg r14, rax
lea r8, [rsp + 0x20]
mov r9d, 0x4de891e1
sub r9d, 0x13a82693
xor r9d, 0x74022179
sub r9d, 0x4e424a1f
call qword [rax + 8]
mov dword [rsp - 0x14], 0x18be90ce
test al, al
je 0x14009d471
mov eax, dword [rsp + 0x2c]
mov dword [rsp - 0x28], 0x9d0bea0
xorps xmm0, xmm0
mov r9d, 0x3dc8fba3
sub r9d, 0x1f6f8ace
xor r9d, 0x10976cd4
sub r9d, 0xece1b83
xchg rbp, rdx
movups xmmword [rdx + 0x30], xmm0
xchg rbp, rdx
xchg r15, rbp
movups xmmword [r15 + 0x40], xmm0
xchg r15, rbp
xchg rbp, rsp
movups xmmword [rsp + 0x50], xmm0
xchg rbp, rsp
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm0
mov r8, r8
movups xmmword [rbp + 0x80], xmm0
xchg rbp, rcx
movups xmmword [rcx + 0x90], xmm0
xchg rcx, rbp
xchg rbp, r10
movups xmmword [r10 + 0xa0], xmm0
xchg rbp, r10
cmp eax, 0x7e
ja 0x14009d3ff
mov rcx, rcx
mov r9d, eax
mov edx, dword [rsp + 0x24]
mov rax, qword [r15 + 0x78]
add rdx, r12
mov dword [rsp - 0x30], esi
cmp rax, 0x78
jbe 0x14009d423
mov rcx, qword [r15]
xchg r15, r15
jmp 0x14009d434
xor ecx, ecx
test rax, rax
cmovne rcx, r15
mov dword [rsp - 0x20], 0x7d8dde3e
xchg r8, rax
mov r8, qword [rcx]
xchg r8, rax
lea r8, [rbp + 0x30]
mov dword [rsp - 0x2c], ebp
call qword [rax + 8]
test al, al
je 0x14009d471
mov r8, r14
mov r15, r15
lea rcx, [rbp + 0x30]
xchg rbx, rdx
mov rbx, rdx
xchg rdx, rbx
call fcn.1400bcf70
mov r14, r14
test eax, eax
je 0x14009d484
inc edi
mov rcx, rcx
cmp edi, dword [rbp - 0x7c]
jb 0x14009d2fb
jmp 0x14009da90
xor r14d, r14d
xchg r13, r13
mov dword [rbp + 0xf0], r14d
cmp dword [rsp + 0x34], r14d
jbe 0x14009da90
xchg r10, r10
mov ebx, 0x7745544d
xor ebx, 0x3d12a68d
sub ebx, 0x41cd2724
sub ebx, 0x88aca9d
nop dword [rax + rax]
mov r13, r13
mov ecx, dword [rsp + 0x30]
lea rdx, [r14 + r14*4]
mov rax, qword [r15 + 0x78]
mov dword [rsp - 0xc], 0x3ae14390
add rcx, r12
lea rdx, [rcx + rdx*4]
cmp rax, 0x78
jbe 0x14009d4f6
mov dword [rsp - 0x14], 0x51aab4d2
mov rcx, qword [r15]
jmp 0x14009d507
xor ecx, ecx
mov dword [rsp - 0x2c], 0x1661b1f3
test rax, rax
cmovne rcx, r15
mov rax, qword [rcx]
lea r8, [rbp - 0x68]
mov dword [rsp - 0x1c], edx
mov r9d, 0x3cf4c95
add r9d, 0x1d62c6d9
add r9d, 0xdf0303c
add r9d, 0x8be92ed
sub r9d, 0x37e0d683
call qword [rax + 8]
test al, al
je 0x14009da6b
mov rdx, rdx
mov eax, dword [rbp - 0x58]
xorps xmm0, xmm0
mov r9d, 0x34995e0d
xor r9d, 0x60eb4aa
add r9d, 0x1f9513eb
xor r9d, 0x6725c8e5
sub r9d, 0x350935f9
xchg rdi, rbp
movups xmmword [rdi - 0x50], xmm0
xchg rbp, rdi
movups xmmword [rbp - 0x40], xmm0
xchg rcx, rcx
xchg rbp, r15
movups xmmword [r15 - 0x30], xmm0
xchg rbp, r15
movups xmmword [rbp - 0x20], xmm0
xchg r14, r14
xchg rbp, rsp
movups xmmword [rsp - 0x10], xmm0
xchg rbp, rsp
movups xmmword [rbp], xmm0
movups xmmword [rbp + 0x10], xmm0
xchg r9, rbp
movups xmmword [r9 + 0x20], xmm0
xchg rbp, r9
cmp eax, 0x7e
mov dword [rsp - 0x24], 0x707b258c
ja 0x14009d5bf
mov r9d, eax
mov edx, dword [rbp - 0x5c]
mov dword [rsp - 0x3c], esp
xchg rdx, rax
mov rdx, qword [r15 + 0x78]
xchg rdx, rax
add rdx, r12
mov dword [rsp - 0x40], ebp
cmp rax, 0x78
jbe 0x14009d5ed
xchg r13, rcx
mov r13, qword [r15]
xchg rcx, r13
jmp 0x14009d5fa
xor ecx, ecx
mov dword [rsp - 0x40], ebx
test rax, rax
cmovne rcx, r15
mov rax, qword [rcx]
mov dword [rsp - 0x28], ebx
lea r8, [rbp - 0x50]
call qword [rax + 8]
test al, al
je 0x14009da6b
mov dword [rsp - 0x3c], 0x53b68da
xorps xmm0, xmm0
lea rax, [rsp + 0x40]
xchg rbx, rax
mov qword [rsp + 0x38], rbx
xchg rbx, rax
nop
movabs rdx, 0xffffffff3ba2b5bb
sub rdx, 0x186d553d
add rdx, 0x5adfa706
sub rdx, 0x48c1aa24
add rdx, 0x7fffffff
xor rdx, 0x4aaca2a0
lea rax, [rbp - 0x50]
mov dword [rsp - 0x24], ebp
xchg rsp, r8
movups xmmword [r8 + 0x40], xmm0
xchg r8, rsp
xchg r11, rsp
movups xmmword [r11 + 0x50], xmm0
xchg r11, rsp
xchg rsp, rbp
movups xmmword [rbp + 0x60], xmm0
xchg rbp, rsp
nop word [rax + rax]
xchg rbp, rbp
inc rdx
cmp word [rax + rdx*2], 0
jne 0x14009d688
lea rcx, [rsp + 0x38]
xchg r15, r15
xchg rsi, rdx
mov qword [rsp + 0x70], rsi
xchg rsi, rdx
call fcn.140018ab0
xor edi, edi
mov rdx, rax
mov rsi, rsi
mov ecx, 0x4139e224
sub ecx, 0x23e3b26a
add ecx, 0x2fef9554
sub ecx, 0x326f1c
cmp qword [rsp + 0x70], rdi
jbe 0x14009d71a
mov rsi, rsi
lea r8, [rbp - 0x50]
sub r8, rax
movzx eax, cx
mov dword [rsp - 0x10], 0x401fd05c
lea rdx, [rdx + 2]
and ax, bx
ror ecx, 2
ror ecx, 5
ror ecx, 1
xor ax, word [r8 + rdx - 2]
xchg r12, r12
inc rdi
mov word [rdx - 2], ax
cmp rdi, qword [rsp + 0x70]
mov rbp, rbp
jb 0x14009d6e2
xchg r13, rax
mov r13, qword [rsi + 8]
xchg r13, rax
test rax, rax
je 0x14009d91d
mov dword [rsp - 0x38], esi
xchg rcx, r11
mov r11, qword [rsi + 0x10]
xchg rcx, r11
cmp rax, rcx
jb 0x14009d90f
xchg r13, r13
add rcx, qword [rsi + 0x18]
xchg rbp, rcx
mov qword [rsi + 0x10], rbp
xchg rcx, rbp
shl rcx, 5
shl rcx, 1
call fcn.1400bc380
mov r9, r9
mov rcx, qword [rsi + 8]
xor r14d, r14d
xchg r12, rax
mov r13, r12
xchg r12, rax
test rcx, rcx
je 0x14009d862
xchg r12, r12
nop
movabs r12, 0xffffffff06ef8f6b
add r12, 0x320ae497
add r12, 0x2bf378b
add r12, 0x7fffffff
xor r12, 0x44465444
lea rdi, [rax + 0x38]
mov dword [rsp - 0x18], ebx
sub r12, rax
nop word [rax + rax]
lea rax, [rdi - 0x30]
xchg r12, r12
xorps xmm0, xmm0
lea rcx, [rdi - 0x38]
lea rbx, [r12 + rdi]
mov dword [rsp - 0x38], 0x31e79e1b
add rbx, qword [rsi]
mov qword [rcx], rax
xchg rsp, rax
movups xmmword [rsp], xmm0
xchg rsp, rax
xchg rbx, rax
movups xmmword [rbx + 0x10], xmm0
xchg rbx, rax
xchg rdi, rax
movups xmmword [rdi + 0x20], xmm0
xchg rdi, rax
mov rdx, qword [rbx + 0x38]
mov dword [rsp - 0x24], 0x495fe633
xchg r11, rdx
mov qword [rdi], r11
xchg rdx, r11
call fcn.140018ab0
mov dword [rsp - 0x2c], edx
xor ecx, ecx
cmp qword [rdi], rcx
jbe 0x14009d843
nop dword [rax]
mov rsi, rsi
nop word [rax + rax]
mov rdx, qword [rbx]
movzx edx, word [rdx + rcx*2]
xchg r8, r8
mov word [rax + rcx*2], dx
inc rcx
cmp rcx, qword [rdi]
jb 0x14009d825
mov dword [rsp - 0x40], esi
mov rcx, qword [rsi + 8]
inc r14
add rdi, 0x40
cmp r14, rcx
mov dword [rsp - 0xc], edi
jb 0x14009d7b4
mov r12, qword [rbp + 0x100]
cmp qword [rsi], 0
je 0x14009d8f6
xchg rdi, rdi
xor ebx, ebx
test rcx, rcx
je 0x14009d8ee
xchg r9, r9
xor r14d, r14d
nop word [rax + rax]
xchg rdi, rax
mov rdi, qword [rsi]
xchg rdi, rax
mov rcx, qword [r14 + rax]
lea rdi, [rax + 8]
xchg rcx, rcx
add rdi, r14
cmp rcx, rdi
jne 0x14009d8cb
xor eax, eax
mov dword [rsp - 0x40], edx
mov ecx, 0x7d5cbc9e
sub ecx, 0x67aa642f
xor ecx, 0x2c211df6
sub ecx, 0x39934569
rep stosb byte [rdi], al
mov rbp, rbp
jmp 0x14009d8d0
call fcn.1400bc0d0
inc rbx
mov dword [rsp - 0x20], esi
neg r14
add r14, 0xffffffffffffffc0
neg r14
cmp rbx, qword [rsi + 8]
xchg r8, r8
jb 0x14009d886
mov rcx, qword [rsi]
call fcn.1400bc0d0
mov r14d, dword [rbp + 0xf0]
mov dword [rsp - 0x18], edi
xchg r13, rdx
mov qword [rsi], rdx
xchg r13, rdx
jmp 0x14009d963
xchg r13, rcx
mov rcx, qword [rsi]
xchg r13, rcx
jmp 0x14009d963
xchg rbp, r13
mov rbp, qword [rsi]
xchg rbp, r13
test r13, r13
jne 0x14009d963
mov rbx, rbx
xchg rcx, rbp
mov rbp, qword [rsi + 0x18]
xchg rbp, rcx
xchg rcx, rbx
mov qword [rsi + 0x10], rbx
xchg rbx, rcx
shl rcx, 5
shl rcx, 1
call fcn.1400bc380
xchg rsp, rsp
xchg rsi, rax
mov r13, rsi
xchg rsi, rax
xchg rbp, rax
mov qword [rsi], rbp
xchg rbp, rax
mov rax, qword [rsi + 8]
xorps xmm0, xmm0
xchg r11, r11
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
shl rbx, 5
shl rbx, 1
add rbx, r13
inc rax
mov dword [rsp - 0x1c], esp
mov rcx, rbx
mov qword [rsi + 8], rax
lea rax, [rbx + 8]
mov dword [rsp - 0x30], 0x4132f05a
mov qword [rbx], rax
xchg r10, rax
movups xmmword [r10], xmm0
xchg r10, rax
xchg r12, rax
movups xmmword [r12 + 0x10], xmm0
xchg r12, rax
movups xmmword [rax + 0x20], xmm0
xchg rbx, rbx
xchg r8, rax
mov r8, qword [rsp + 0x70]
xchg r8, rax
xchg r11, rax
mov qword [rbx + 0x38], r11
xchg r11, rax
mov rdx, qword [rsp + 0x70]
call fcn.140018ab0
xor edi, edi
mov dword [rsp - 0x38], 0x4429e3e0
cmp qword [rbx + 0x38], rdi
jbe 0x14009da04
mov rcx, qword [rsp + 0x38]
movzx edx, word [rcx + rdi*2]
xchg r14, r14
mov word [rax + rdi*2], dx
inc rdi
cmp rdi, qword [rbx + 0x38]
jb 0x14009d9e3
mov dword [rsp - 0x10], edx
xchg r10, rcx
mov r10, qword [rsp + 0x38]
xchg r10, rcx
lea rax, [rsp + 0x40]
mov dword [rsp - 0x44], esi
cmp rcx, rax
jne 0x14009da49
lea rdi, [rsp + 0x40]
xor eax, eax
xchg r11, r11
mov ecx, 0x18e97c40
sub ecx, 0x474b088
add ecx, 0x4a64a7d1
sub ecx, 0x5ed97359
rep stosb byte [rdi], al
jmp 0x14009da4e
call fcn.1400bc0d0
mov ebx, 0x719a23ec
xor ebx, 0x649d499c
xor ebx, 0x3317bf00
sub ebx, 0x14041fc9
xor ebx, 0x120cb558
inc r14d
xchg r13, r13
mov dword [rbp + 0xf0], r14d
cmp r14d, dword [rsp + 0x34]
jb 0x14009d4c1
xchg rdi, r13
mov rdi, qword [rbp + 0xf8]
xchg r13, rdi
xchg r10, r13
mov rcx, r10
xchg r10, r13
call fcn.1400bbf90
xchg rcx, rax
mov rcx, qword [r15 + 0x78]
xchg rcx, rax
xchg rbp, r14
mov rbp, qword [rsp + 0x1b0]
xchg r14, rbp
mov r13, qword [rsp + 0x1b8]
mov dword [rsp - 0x20], esp
xchg r12, rdi
mov r12, qword [rsp + 0x208]
xchg r12, rdi
cmp rax, 0x78
xchg r10, r10
jbe 0x14009db02
mov rcx, qword [r15]
xor edx, edx
xchg r14, rax
mov r14, qword [rcx]
xchg r14, rax
call qword [rax]
xchg r11, r11
xchg r13, rcx
mov r13, qword [r15]
xchg r13, rcx
call fcn.1400bc0d0
xchg rdx, rdx
jmp 0x14009db27
test rax, rax
je 0x14009db27
mov dword [rsp - 0x40], ebp
xchg r11, rax
mov r11, qword [r15]
xchg r11, rax
xor edx, edx
mov dword [rsp - 0x34], edx
xchg rcx, r14
mov r14, r15
xchg r14, rcx
call qword [rax]
mov qword [r15 + 0x78], 0x41e892ab
xor qword [r15 + 0x78], 0x12c9896e
sub qword [r15 + 0x78], 0x1f11deb5
add qword [r15 + 0x78], 0x476fba58
sub qword [r15 + 0x78], 0x7b7ef768
xchg rsi, r14
mov rax, r14
xchg rsi, r14
neg rsp
add rsp, 0xfffffffffffffe40
neg rsp
nop
mov r15, qword [rsp]
add rsp, 8
nop
mov r12, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rsi, qword [rsp - 8]
pop rbx
nop
add rsp, 8
mov rbp, qword [rsp - 8]
ret