Function at 0x14003eb7c
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push r15
lea rbp, [rsp - 0x3f]
sub rsp, 0x4e3b1fd9
add rsp, 0x4e3b1ef1
xor r15d, r15d
mov rbx, rcx
mov dword [rbp + 0x67], r15d
call fcn.140037aa0
mov rcx, rax
mov rdx, qword [rax]
call qword [rdx + 0xb8]
mov rcx, qword [0x1404a0b98]
mov rdx, rax
call fcn.14002f620
mov rcx, rax
call fcn.14003b790
mov ecx, dword [rbx + 0xb5c]
mov rsi, rax
neg ecx
add ecx, 0xfffffffc
neg ecx
cmp dword [rbx + 0xb58], ecx
je 0x14003ed17
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x14003ed17
cmp byte [rcx + 0x310], r15b
je 0x14003ed17
mov qword [rsp + 0x118], rdi
lea rdx, [rbp - 0x49]
mov qword [rsp + 0x120], r12
mov rcx, rbx
mov qword [rsp + 0xe0], r14
call fcn.14003f430
mov r9, qword [rbx + 0xb48]
lea rdx, [rbp - 9]
mov rdi, qword [rsi + 0x50]
lea rcx, [rbp - 0x49]
xor r8d, r8d
call fcn.1400530e0
mov rdx, rax
mov rcx, rdi
call fcn.140033bd0
mov rcx, qword [rbp - 9]
mov r12d, eax
lea rax, [rbp - 1]
cmp rcx, rax
jne 0x14003eae3
lea rdi, [rbp - 1]
xor eax, eax
mov ecx, 0x4a3483a7
add ecx, 0x25c58279
sub ecx, 0xdbbd181
sub ecx, 0x623e346f
rep stosb byte [rdi], al
jmp 0x14003eae8
call fcn.140095ef0
mov r14, qword [rbp - 0x11]
cmp qword [rbx + 0xb48], r14
je 0x14003ebda
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.14000ed40
mov edx, 0x6a75f09f
xor edx, 0x1b895052
xor edx, 0x6787d9a7
test r14, r14
je 0x14003eb9a
mov rdi, rax
sub rsi, rax
mov r8, r14
mov r9d, 0x6edd58ec
add r9d, 0x2ab73f3
sub r9d, 0xcd51efc
sub r9d, 0x64b3ace4
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 0x14003eb79
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.140033e50
mov r13, qword [rsp + 0x128]
mov esi, eax
mov r15d, 0x4b80c667
xor r15d, 0x41e59558
sub r15d, 0xa65533e
jmp 0x14003ebdd
mov esi, r15d
mov r14, qword [rsp + 0xe0]
test r15b, 1
je 0x14003ec2c
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x14003ec27
lea rdi, [rsp + 0x28]
xor eax, eax
mov ecx, 0x2a83ba34
xor ecx, 0xe569650
add ecx, 0x1c286c5d
sub ecx, 0x40fd9891
rep stosb byte [rdi], al
jmp 0x14003ec2c
call fcn.140095ef0
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.140038af0
lea rdx, [rbp + 0x67]
mov rcx, rbx
mov edi, dword [rax]
sub edi, r12d
sub edi, dword [rbx + 0xb58]
call fcn.140038af0
cmp esi, edi
cmovle edi, esi
mov ecx, dword [rax]
mov eax, dword [rbx + 0xb5c]
sub ecx, edi
sub ecx, r12d
nop
add eax, 0x245e60bb
sub eax, 0x245e60b7
mov dword [rbx + 0xb58], ecx
cmp ecx, eax
jle 0x14003ec85
mov dword [rbx + 0xb58], eax
jmp 0x14003eccd
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.140038af0
mov ecx, dword [rbx + 0xb58]
add ecx, r12d
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
add edx, 0xfffffffc
cmp ecx, edx
jle 0x14003eccd
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.140038af0
mov edx, dword [rax]
sub edx, dword [rbx + 0xb60]
sub edx, r12d
add edx, 0xfffffffc
mov dword [rbx + 0xb58], edx
mov rcx, qword [rbp - 0x49]
lea rax, [rbp - 0x41]
mov r12, qword [rsp + 0x120]
cmp rcx, rax
jne 0x14003ed0a
lea rdi, [rbp - 0x41]
xor eax, eax
mov ecx, 0x491e1853
sub ecx, 0x48aea5d6
add ecx, 0x114c1a01
xor ecx, 0x11bb8c4e
rep stosb byte [rdi], al
jmp 0x14003ed0f
call fcn.140095ef0
mov rdi, qword [rsp + 0x118]
sub rsp, 0x301b03bc
add rsp, 0x301b04a4
pop r15
pop rsi
pop rbx
pop rbp
ret