Function at 0x14003e524
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
push rbp
push rbx
push rsi
lea rbp, [r11 - 0x5f]
sub rsp, 0x67410846
add rsp, 0x67410756
xor esi, esi
mov rbx, rcx
mov dword [rbp + 0x67], esi
mov eax, dword [rcx + 0xb64]
add eax, 4
cmp dword [rcx + 0xb60], eax
je 0x14003e759
mov rax, qword [rcx + 0xab8]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x14003e759
cmp byte [rcx + 0x310], sil
je 0x14003e759
mov qword [r11 + 0x10], rdi
lea rdx, [rbp - 0x49]
mov qword [r11 + 0x18], r12
mov rcx, rbx
mov qword [r11 - 0x20], r14
mov qword [r11 - 0x28], r15
call fcn.14003ef70
mov rax, qword [rbx + 0xab8]
lea rdx, [rbp - 9]
mov r9, qword [rbx + 0xb50]
lea rcx, [rbp - 0x49]
xor r8d, r8d
mov rdi, qword [rax + 0x50]
call fcn.140053870
mov rdx, rax
mov rcx, rdi
call fcn.140033220
mov rcx, qword [rbp - 9]
mov r12d, eax
lea rax, [rbp - 1]
cmp rcx, rax
jne 0x14003e511
lea rdi, [rbp - 1]
xor eax, eax
mov ecx, 0x12091b23
add ecx, 0x623c41aa
sub ecx, 0x74455c9d
rep stosb byte [rdi], al
jmp 0x14003e516
call fcn.140098180
mov r15, qword [rbp - 0x11]
cmp qword [rbx + 0xb50], r15
je 0x14003e614
mov rax, qword [rbx + 0xab8]
lea rdx, [r15 + 1]
mov r14, qword [rbp - 0x49]
lea rcx, [rsp + 0x20]
xorps xmm0, xmm0
mov qword [rsp + 0x128], r13
mov r13, qword [rax + 0x50]
lea rax, [rsp + 0x28]
mov qword [rsp + 0x20], rax
movups xmmword [rsp + 0x28], xmm0
movups xmmword [rbp - 0x71], xmm0
movups xmmword [rbp - 0x61], xmm0
call fcn.14000ef40
mov edx, 0x31b7bf18
xor edx, 0x39ca9ef5
xor edx, 0xb320404
add edx, 0x596d2a59
test r15, r15
je 0x14003e5d0
mov rdi, rax
sub r14, rax
mov r8, r15
mov r9d, 0x6cea99a0
xor r9d, 0x1b9eb352
xor r9d, 0x77742a0d
nop word [rax + rax]
movzx ecx, dx
lea rdi, [rdi + 2]
and cx, r9w
ror edx, 8
xor cx, word [rdi + r14 - 2]
mov word [rdi - 2], cx
sub r8, 1
jne 0x14003e5ae
mov word [rax + r15*2], si
mov rcx, r13
mov rdx, qword [rbx + 0xb50]
mov rax, qword [rsp + 0x20]
lea rdx, [rax + rdx*2]
call fcn.1400334a0
mov r13, qword [rsp + 0x128]
mov r14d, eax
mov esi, 0x7f0ac85b
xor esi, 0xd28fdac
sub esi, 0x478af26b
sub esi, 0x2a97438b
jmp 0x14003e617
mov r14d, esi
mov r15, qword [rsp + 0xe0]
test sil, 1
je 0x14003e666
mov rcx, qword [rsp + 0x20]
lea rax, [rsp + 0x28]
cmp rcx, rax
jne 0x14003e661
lea rdi, [rsp + 0x28]
xor eax, eax
mov ecx, 0x22790f8f
sub ecx, 0x1a286f6c
xor ecx, 0x68e57f6
xor ecx, 0xedef7e5
rep stosb byte [rdi], al
jmp 0x14003e666
call fcn.140098180
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.140038330
lea rdx, [rbp + 0x67]
mov rcx, rbx
mov edi, dword [rax]
sub edi, dword [rbx + 0xb60]
sub edi, r12d
call fcn.140038330
cmp r14d, edi
cmovle edi, r14d
mov r14, qword [rsp + 0xe8]
mov ecx, dword [rax]
mov eax, dword [rbx + 0xb64]
sub ecx, edi
sub ecx, r12d
nop
add eax, 0x2453c698
sub eax, 0x2453c694
mov dword [rbx + 0xb60], ecx
cmp ecx, eax
jle 0x14003e6c9
mov dword [rbx + 0xb60], eax
jmp 0x14003e715
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.140038330
mov ecx, dword [rbx + 0xb60]
add ecx, r12d
mov edx, dword [rax]
sub edx, dword [rbx + 0xb68]
neg edx
sub edx, 0xfffffffc
neg edx
cmp ecx, edx
jle 0x14003e715
lea rdx, [rbp + 0x67]
mov rcx, rbx
call fcn.140038330
mov edx, dword [rax]
sub edx, dword [rbx + 0xb68]
sub edx, r12d
add edx, 0xfffffffc
mov dword [rbx + 0xb60], edx
mov rcx, qword [rbp - 0x49]
lea rax, [rbp - 0x41]
mov r12, qword [rsp + 0x120]
cmp rcx, rax
jne 0x14003e74c
lea rdi, [rbp - 0x41]
xor eax, eax
mov ecx, 0x50870387
sub ecx, 0x226da6db
xor ecx, 0x2e195c9c
rep stosb byte [rdi], al
jmp 0x14003e751
call fcn.140098180
mov rdi, qword [rsp + 0x118]
add rsp, 0xf0
pop rsi
pop rbx
pop rbp
ret