Function at 0x14003e330
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov rax, qword [rcx + 0x158]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x60], rbx
mov dword [rsp - 0x10], 0x61eede51
mov qword [rsp + 0x70], rsi
mov rsi, rcx
mov qword [rsp + 0x50], rdi
mov rdi, qword [rcx + 0x160]
mov rbp, rbp
cmp rdi, rax
mov rbx, rdi
cmovbe rbx, rax
cmovae rdi, rax
mov dword [rsp - 0x3c], 0x5816cb0
call fcn.14003ee10
mov rcx, rax
lea rdx, [rsp + 0x20]
mov r9, rbx
mov dword [rsp - 0x44], 0x3d5e109a
mov r8, rdi
call fcn.14006b110
cmp qword [rsp + 0x38], 4
xchg r8, r8
jbe 0x14003e3af
mov rcx, qword [rsp + 0x30]
call fcn.140073d00
mov rcx, rsi
mov r8, r8
call fcn.1400353d0
mov rcx, rax
call fcn.1400319e0
mov rdx, qword [0x1400a53d0]
mov dword [rsp - 0x44], 0x17f1d15
mov rcx, rax
xor rdx, qword [0x1400a4ab0]
call rdx
xchg r9, r9
test eax, eax
je 0x14003e6da
mov rax, qword [0x1400a53f0]
mov dword [rsp - 0x44], 0x34691ca
xor rax, qword [0x1400a4ab0]
mov qword [rsp + 0x68], rbp
call rax
mov dword [rsp - 0x10], ecx
mov rax, qword [rsp + 0x28]
mov ecx, 0x1c998122
add ecx, 0x48e27e51
mov dword [rsp - 0x14], esi
sub ecx, 0x20e47945
sub ecx, 0x848d5f8
xor ecx, 0x4830cef4
xchg r12, r12
sub ecx, 0xe094574
sub ecx, 0x6675394c
lea rdx, [rax*2 + 2]
mov dword [rsp - 0xc], 0x1074e029
mov rax, qword [0x1400a4f80]
xor rax, qword [0x1400a4ab0]
call rax
mov rbp, rax
mov dword [rsp - 0x34], 0x2914c7af
test rax, rax
je 0x14003e6c2
mov rdx, qword [0x1400a4f90]
mov dword [rsp - 0xc], edi
mov rcx, rax
xor rdx, qword [0x1400a4ab0]
mov qword [rsp + 0x48], r14
mov rdx, rdx
mov qword [rsp + 0x40], r15
call rdx
mov rcx, qword [rsp + 0x28]
xchg r11, r11
mov r15, rax
inc rcx
mov eax, 0x7c086c7e
sub eax, 0x1b4313e2
mov dword [rsp - 0x20], ebp
sub eax, 0x34da14ab
sub eax, 0x102ea3cb
add eax, 0x2910035b
sub eax, 0x44cca37f
xchg r12, r12
mul rcx
pushf
movabs rbx, 0xffffffff154474c9
add rbx, 0x239f0e1a
mov r10, r10
sub rbx, 0x760af53
add rbx, 0x458f8b39
xor rbx, 0x7ca3c239
mov r11, r11
add rbx, 0x7fffffff
add rbx, 0x744e6310
popf
mov dword [rsp - 0x20], edx
cmovo rax, rbx
mov rcx, rax
call fcn.140073cf0
mov r9, r9
mov rsi, qword [rsp + 0x28]
lea rdi, [rsp + 0x20]
mov r14, rax
xchg r13, r13
cmp rsi, 4
pushf
mov eax, 0x303fcab8
xor eax, 0x2e867c3f
mov r13, r13
xor eax, 0x63a0ac9
sub eax, 0xc616d99
add eax, 0x1a9bb5b
xor eax, 0xdcc0a12
mov dword [rsp - 0x38], 0x76625514
popf
cmova rdi, qword [rsp + 0x20]
lea rcx, [rsi + 1]
mov dword [rsp - 0x14], ebx
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.140073cf0
mov rcx, rcx
xor r9d, r9d
mov rbx, rax
mov r8d, r9d
xchg r15, r15
test rsi, rsi
je 0x14003e5f5
sub rdi, rax
nop dword [rax]
mov dword [rsp - 0x38], 0x21cf67af
nop word [rax + rax]
movzx ecx, r8b
lea rax, [rax + 2]
and cl, 3
mov rbp, rbp
mov edx, 0x74f05b56
add edx, 0x291b15e
sub edx, 0xd64e6ca
sub edx, 0x18ec6165
xchg rdi, rdi
sub edx, 0x38dd6600
shl cl, 3
inc r8
sar edx, cl
mov rsi, rsi
movsx ecx, dl
xor cx, word [rdi + rax - 2]
mov word [rax - 2], cx
mov r12, r12
cmp r8, rsi
jb 0x14003e5a8
mov word [rbx + rsi*2], r9w
mov dword [rsp - 0x20], 0x225b5c95
mov r8, rbx
mov rdx, qword [rsp + 0x28]
mov rcx, r14
inc rdx
mov rbp, rbp
call fcn.1400745b0
mov rcx, rbx
call fcn.140073d00
mov dword [rsp - 0x44], edx
mov rdx, qword [rsp + 0x28]
mov r8, r14
inc rdx
mov dword [rsp - 0x34], 0x7e6543db
mov rcx, r15
call fcn.1400745b0
mov rcx, r14
mov rbp, rbp
call fcn.140073d00
mov rax, qword [0x1400a4fa0]
mov rcx, rbp
xor rax, qword [0x1400a4ab0]
mov dword [rsp - 0x30], esp
call rax
mov rax, qword [0x1400a53c0]
mov rdx, rbp
xor rax, qword [0x1400a4ab0]
xchg r10, r10
mov ecx, 0x77935a21
sub ecx, 0xe63edec
sub ecx, 0x3d9bbf3d
mov dword [rsp - 0x34], 0x4863270e
sub ecx, 0x2a56c7d4
add ecx, 0x383b679
add ecx, 0x1de8722
mov dword [rsp - 0x3c], 0x424f4feb
sub ecx, 0x69f22b2
call rax
mov r15, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov dword [rsp - 0x34], 0x1a380f75
mov rax, qword [0x1400a53e0]
xor rax, qword [0x1400a4ab0]
call rax
mov rbp, qword [rsp + 0x68]
mov rdx, rdx
cmp qword [rsp + 0x28], 4
mov rdi, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x70]
xchg r11, r11
mov rbx, qword [rsp + 0x60]
jbe 0x14003e702
mov rcx, qword [rsp + 0x20]
mov dword [rsp - 0x20], ecx
call fcn.140073d00
add rsp, 0x58
ret