Function at 0x14003d14d
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push r15
lea rbp, [rsp - 0x3f]
add rsp, 0xffffffffffffff18
xor r15d, r15d
mov rbx, rcx
mov dword [rbp + 0x67], r15d
call fcn.140035c60
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0xb8]
mov rcx, qword [0x1404dbba8]
mov rdx, rax
call fcn.1400299a0
mov rcx, rax
call fcn.1400358b0
mov ecx, dword [rbx + 0xb5c]
mov rsi, rax
neg ecx
add ecx, 0xfffffffc
neg ecx
cmp dword [rbx + 0xb58], ecx
je 0x14003d3f1
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x14003d3f1
cmp byte [rcx + 0x310], r15b
je 0x14003d3f1
mov qword [rsp + 0x118], rdi
lea rdx, [rbp - 0x49]
mov qword [rsp + 0x120], r12
mov rcx, rbx
mov qword [rsp + 0xe0], r14
call fcn.14003dae0
mov r9, qword [rbx + 0xb48]
lea rdx, [rbp - 9]
mov rdi, qword [rsi + 0x50]
lea rcx, [rbp - 0x49]
xor r8d, r8d
call fcn.1400673c0
mov rdx, rax
mov rcx, rdi
call fcn.14002e5e0
mov rcx, qword [rbp - 9]
mov r12d, eax
lea rax, [rbp - 1]
cmp rcx, rax
jne 0x14003d1b6
lea rdi, [rbp - 1]
xor eax, eax
mov ecx, 0x3780d134
add ecx, 0x9ecdd93
sub ecx, 0x416dae97
rep stosb byte [rdi], al
jmp 0x14003d1bb
call fcn.1400b6f90
mov r14, qword [rbp - 0x11]
cmp qword [rbx + 0xb48], r14
je 0x14003d2b4
xorps xmm0, xmm0
mov qword [rsp + 0x128], r13
mov r13, qword [rsi + 0x50]
lea rax, [rsp + 0x28]
mov rsi, qword [rbp - 0x49]
lea rdx, [r14 + 1]
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x20], rax
movups xmmword [rsp + 0x28], xmm0
movups xmmword [rbp - 0x71], xmm0
movups xmmword [rbp - 0x61], xmm0
call fcn.140010f10
mov edx, 0x3ddb6c7c
add edx, 0x5274a64
xor edx, 0x72329b67
test r14, r14
je 0x14003d26d
mov rdi, rax
sub rsi, rax
mov r8, r14
mov r9d, 0x2f906947
sub r9d, 0x244a3984
add r9d, 0x33b51dcb
sub r9d, 0x3efb4c8f
nop word [rax + rax]
movzx ecx, dx
lea rdi, [rdi + 2]
and cx, r9w
ror edx, 8
xor cx, word [rsi + rdi - 2]
mov word [rdi - 2], cx
sub r8, 1
jne 0x14003d24c
mov word [rax + r14*2], r15w
mov rcx, r13
mov rdx, qword [rbx + 0xb48]
mov rax, qword [rsp + 0x20]
lea rdx, [rax + rdx*2]
call fcn.14002e870
mov r13, qword [rsp + 0x128]
mov esi, eax
mov r15d, 0x636cd361
xor r15d, 0xbc96650
sub r15d, 0x741d75f
xor r15d, 0x6163ddd3
jmp 0x14003d2b7
mov esi, r15d
mov r14, qword [rsp + 0xe0]
test r15b, 1
je 0x14003d306
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x14003d301
lea rdi, [rsp + 0x28]
xor eax, eax
mov ecx, 0x12d11a0a
add ecx, 0x676a5630
xor ecx, 0x3a9db9bb
sub ecx, 0x40a6c951
rep stosb byte [rdi], al
jmp 0x14003d306
call fcn.1400b6f90
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400413b0
lea rdx, [rbp + 0x67]
mov rcx, rbx
mov edi, dword [rax]
sub edi, r12d
sub edi, dword [rbx + 0xb58]
call fcn.1400413b0
cmp esi, edi
cmovle edi, esi
mov ecx, dword [rax]
mov eax, dword [rbx + 0xb5c]
sub ecx, edi
sub ecx, r12d
neg eax
add eax, 0xfffffffc
neg eax
mov dword [rbx + 0xb58], ecx
cmp ecx, eax
jle 0x14003d35b
mov dword [rbx + 0xb58], eax
jmp 0x14003d3ad
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400413b0
mov ecx, dword [rbx + 0xb58]
add ecx, r12d
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
sub edx, 4
cmp ecx, edx
jle 0x14003d3ad
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.1400413b0
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
sub edx, r12d
nop
add edx, 0x35c6b480
sub edx, 0x35c6b484
mov dword [rbx + 0xb58], edx
mov rcx, qword [rbp - 0x49]
lea rax, [rbp - 0x41]
mov r12, qword [rsp + 0x120]
cmp rcx, rax
jne 0x14003d3e4
lea rdi, [rbp - 0x41]
xor eax, eax
mov ecx, 0x6048ef66
sub ecx, 0x1ea21df5
xor ecx, 0x41a6d141
rep stosb byte [rdi], al
jmp 0x14003d3e9
call fcn.1400b6f90
mov rdi, qword [rsp + 0x118]
add rsp, 0xe8
pop r15
pop rsi
pop rbx
pop rbp
ret