Function at 0x14003e7b0
Capabilities:
Encode data using xor

Disassembly:
push rdi
push r13
push r14
mov r12, r12
sub rsp, 0x50
xor r14d, r14d
mov rdi, rcx
mov r8, r8
mov dword [rsp + 0x70], r14d
call fcn.1400353d0
mov rcx, rax
mov dword [rsp - 0x2c], ecx
call fcn.1400319e0
mov rcx, qword [0x1400a49e8]
mov rdx, rax
mov dword [rsp - 0x28], 0x3e8556d9
call fcn.14002f2e0
mov rcx, rax
call fcn.14004f860
cmp dword [rdi + 0x168], 4
mov dword [rsp - 0x1c], 0x5996e3fe
mov r13, rax
je 0x14003eb79
mov rcx, qword [rax + 0x158]
test rcx, rcx
xchg rsi, rsi
je 0x14003eb79
cmp byte [rcx + 0x6c], r14b
je 0x14003eb79
mov dword [rsp - 0x24], 0x15ce9c47
mov qword [rsp + 0x78], rbx
lea rdx, [rsp + 0x20]
mov qword [rsp + 0x88], rsi
xchg rcx, rcx
mov rcx, rdi
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r15
mov dword [rsp - 0x18], edx
call fcn.14003ee10
mov r9, qword [rdi + 0x158]
lea rdx, [rsp + 0x30]
mov dword [rsp - 0x10], ebp
mov rbx, qword [r13 + 0x158]
lea rcx, [rsp + 0x20]
xor r8d, r8d
mov dword [rsp - 0x44], esi
call fcn.14006b110
mov rdx, rax
mov rcx, rbx
call fcn.140031af0
xchg r13, r13
cmp qword [rsp + 0x38], 4
mov r15d, eax
lea r12d, [rax + 4]
jbe 0x14003e8b5
mov r13, r13
mov rcx, qword [rsp + 0x30]
call fcn.140073d00
mov rsi, qword [rsp + 0x28]
cmp qword [rdi + 0x158], rsi
mov dword [rsp - 0x40], 0x6831e733
je 0x14003ea5a
mov qword [rsp + 0x80], rbp
lea rcx, [rsi + 1]
cmp rsi, 4
mov r15, r15
lea rbp, [rsp + 0x20]
pushf
mov eax, 0x53b92d6a
xchg rbx, rbx
xor eax, 0x5ff1ce82
add eax, 0x43b517ef
xor eax, 0x7b427b90
sub eax, 0x156e7e0c
mov dword [rsp - 0x38], edi
add eax, 0x97807de
sub eax, 0x28c90a17
popf
cmova rbp, qword [rsp + 0x20]
mov rbx, rbx
mul rcx
pushf
movabs rcx, 0xffffffff14ce1d5f
mov dword [rsp - 0x3c], ecx
add rcx, 0x515f0b18
xor rcx, 0x29e87d42
xor rcx, 0x2c5f0f57
add rcx, 0xfbe18c9
xchg r14, r14
sub rcx, 0x500f43d
add rcx, 0x7fffffff
add rcx, 0x11a88112
popf
mov rsp, rsp
cmovo rax, rcx
mov rcx, rax
call fcn.140073cf0
mov rbx, rax
mov r12, r12
mov r9, r14
test rsi, rsi
je 0x14003ea02
mov r8, rax
mov r9, r9
sub rbp, rax
nop dword [rax]
nop dword [rax + rax]
movzx ecx, r9b
mov r13, r13
lea r8, [r8 + 2]
and cl, 3
mov edx, 0x2440439
xor edx, 0xac5726b
mov dword [rsp - 0xc], 0x2b1e77f6
add edx, 0x71e0c9f0
sub edx, 0x6e98390
sub edx, 0x503b4f91
add edx, 0x5922c9f6
xchg rdi, rdi
sub edx, 0x640cd892
shl cl, 3
inc r9
mov dword [rsp - 0x14], esp
sar edx, cl
movsx eax, dl
xor ax, word [r8 + rbp - 2]
mov word [r8 - 2], ax
mov dword [rsp - 0x20], 0x1057c705
cmp r9, rsi
jb 0x14003e999
mov word [rbx + rsi*2], r14w
xchg rbp, rbp
mov rax, qword [rdi + 0x158]
mov rcx, qword [r13 + 0x158]
lea rdx, [rbx + rax*2]
call fcn.140031db0
mov dword [rsp - 0x2c], 0x21ee8aaa
mov rbp, qword [rsp + 0x80]
mov esi, eax
mov r14d, 0x6b6af9a7
xor r14d, 0x53217dd7
mov rbx, rbx
xor r14d, 0x6056649c
sub r14d, 0x1f24bac3
sub r14d, 0x38f92628
jmp 0x14003ea65
mov rbx, qword [rsp + 0x70]
mov esi, r14d
mov r10, r10
test r14b, 1
je 0x14003ea76
mov rcx, rbx
call fcn.140073d00
xchg r10, r10
lea rdx, [rsp + 0x70]
mov rcx, rdi
call fcn.1400511b0
lea rdx, [rsp + 0x70]
mov r8, r8
mov rcx, rdi
mov ebx, dword [rax]
sub ebx, dword [rdi + 0x168]
sub ebx, r12d
mov rsp, rsp
call fcn.1400511b0
cmp esi, ebx
cmovle ebx, esi
xchg r10, r10
mov rsi, qword [rsp + 0x88]
mov ecx, dword [rax]
sub ecx, ebx
mov rbp, rbp
mov rbx, qword [rsp + 0x78]
sub ecx, r12d
mov r12, qword [rsp + 0x48]
mov dword [rsp - 0x10], 0x6fd5ef41
mov dword [rdi + 0x168], ecx
cmp ecx, 4
jle 0x14003eb17
mov rsi, rsi
mov dword [rdi + 0x168], 0x5eee4efc
xor dword [rdi + 0x168], 0x2ade1743
sub dword [rdi + 0x168], 0x5ea42215
mov dword [rsp - 0x2c], 0x483fe85b
xor dword [rdi + 0x168], 0x36cf3d76
sub dword [rdi + 0x168], 0x23430ad8
jmp 0x14003eb57
lea eax, [rcx + r15]
cmp eax, 4
mov dword [rsp - 0x10], ebx
jge 0x14003eb57
mov eax, 0x70b7449f
sub eax, 0x176262a7
sub eax, 0x275dfc4f
mov dword [rsp - 0x2c], 0x3f26c2cd
add eax, 0x2ebb8d56
add eax, 0xad878bc
xor eax, 0x6b8aebbf
sub eax, r15d
mov dword [rsp - 0x18], esi
mov dword [rdi + 0x168], eax
cmp qword [rsp + 0x28], 4
mov r15, qword [rsp + 0x40]
mov dword [rsp - 0x38], 0x29d12cc3
jbe 0x14003eb79
mov rcx, qword [rsp + 0x20]
call fcn.140073d00
mov r14, r14
add rsp, 0x50
pop r14
pop r13
pop rdi
mov r15, r15
ret