Function at 0x14003cd60
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
mov rbp, rsp
add rsp, 0xffffffffffffff90
xor esi, esi
mov dword [rcx + 0x518], 0x5d3ed7bf
sub dword [rcx + 0x518], 0x580d2844
add dword [rcx + 0x518], 0x6107147d
xor dword [rcx + 0x518], 0x6638c3f9
lea rdi, [rcx + 0x6b8]
mov word [rcx + 0x698], 0x299f
add word [rcx + 0x698], 0x3673
xor word [rcx + 0x698], 0x604b
add word [rcx + 0x698], 0xa8
mov rbx, rcx
lea r14d, [rsi + 0x78]
cmp qword [rdi + 0x78], r14
jbe 0x14003cdf8
mov rcx, qword [rdi]
xor edx, edx
mov rax, qword [rcx]
call qword [rax]
mov rcx, qword [rdi]
call fcn.140092c10
jmp 0x14003ce0c
cmp qword [rdi + 0x78], rsi
jbe 0x14003ce0c
mov rax, qword [rdi]
xor edx, edx
mov rcx, rdi
call qword [rax]
lea rax, [0x140002820]
mov qword [rdi + 0x78], 0x311b9f36
sub qword [rdi + 0x78], 0x2ee68b66
add qword [rdi + 0x78], 0x70abce2d
sub qword [rdi + 0x78], 0x72e0e1ed
mov qword [rdi], rax
mov dword [rbp - 0x2e], 0x27a260e9
add dword [rbp - 0x2e], 0x150c3195
xor dword [rbp - 0x2e], 0x3ce192f1
mov dword [rbp - 0x2a], 0x4b7fbc12
sub dword [rbp - 0x2a], 0x4a09356a
xor dword [rbp - 0x2a], 0x58f1f39b
xor dword [rbp - 0x2a], 0x59eb754a
mov dword [rbp - 0x26], 0x3ccde1a7
xor dword [rbp - 0x26], 0x6adcfaed
xor dword [rbp - 0x26], 0x12b0e3f7
sub dword [rbp - 0x26], 0x4450f802
mov dword [rbp - 0x22], 0x304d9b5a
xor dword [rbp - 0x22], 0x4a1747e7
sub dword [rbp - 0x22], 0x7a11dc83
mov dword [rbp - 0x1e], 0x462ee9e8
sub dword [rbp - 0x1e], 0x2cf1c9f8
xor dword [rbp - 0x1e], 0x19691f57
mov qword [rbp + 0x20], rsi
mov rax, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp + 0x20]
and cl, 3
shl cl, 3
movzx edx, word [rbp + rax*2 - 0x2e]
mov eax, 0x1fdd27f
add eax, 0x21665fb6
add eax, 0x9b00696
shr eax, cl
movzx ecx, al
mov rax, qword [rbp + 0x20]
xor cx, dx
mov word [rbp + rax*2 - 0x1a], cx
mov rax, qword [rbp + 0x20]
inc rax
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
cmp rax, 0xa
jb 0x14003ceb5
xor edx, edx
mov word [rbp - 6], si
lea rcx, [rbp - 0x1a]
call fcn.140086500
mov rdx, rax
lea rdi, [rbp - 0x1a]
movabs r15, 0xf36add5b0a83eb
xor r15, 0x57e0853f
xor r15, 0x13611de8
mov r8, rax
xor eax, eax
xor rdx, r15
mov qword [rbx + 0x760], rdx
lea ecx, [rax + 0xa]
rep stosb byte [rdi], al
cmp rdx, r15
je 0x14003cfb3
mov edx, 0x171ab7e9
add edx, 0x2db29057
sub edx, 0x41cc71c9
mov rcx, r8
call fcn.14007ffd0
test rax, rax
je 0x14003cfb3
rol rax, 0x12
movabs rcx, 0xffb8e24e266cc2b8
add rcx, 0x1b59f01e
sub rcx, 0x3d0fda00
xor rax, rcx
movabs rcx, 0x3ef3e23611a65fa4
sub rcx, 0xf8f177e
add rcx, 0x952d3c0
ror rax, 0xd
xor rax, rcx
mov qword [rbx + 0x770], rax
mov dword [rbp - 0x50], 0x6bbb6390
sub dword [rbp - 0x50], 0x543aac73
xor dword [rbp - 0x50], 0x178bb7b2
mov dword [rbp - 0x4c], 0x771d5809
xor dword [rbp - 0x4c], 0x43be09de
add dword [rbp - 0x4c], 0x25de5ca7
xor dword [rbp - 0x4c], 0x5a95ae0e
mov dword [rbp - 0x48], 0x6bee875e
sub dword [rbp - 0x48], 0x565f7b69
add dword [rbp - 0x48], 0xe0cd5a3
sub dword [rbp - 0x48], 0x233fe0b3
mov dword [rbp - 0x44], 0x7a0dec30
sub dword [rbp - 0x44], 0x65a989aa
add dword [rbp - 0x44], 0x5dfbbefe
xor dword [rbp - 0x44], 0x722121fc
mov qword [rbp + 0x20], rsi
mov rax, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp + 0x20]
and cl, 3
shl cl, 3
movzx edx, word [rbp + rax*2 - 0x50]
mov eax, 0x2b015fc0
xor eax, 0x316891bb
add eax, 0x12aa6a50
shr eax, cl
movzx ecx, al
mov rax, qword [rbp + 0x20]
xor cx, dx
mov word [rbp + rax*2 - 0x40], cx
mov rax, qword [rbp + 0x20]
inc rax
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
cmp rax, 8
jb 0x14003d024
xor edx, edx
mov word [rbp - 0x30], si
lea rcx, [rbp - 0x40]
call fcn.140086500
xor rax, r15
lea r11, [rsp + 0x70]
mov rsi, qword [r11 + 0x30]
lea rdi, [rbp - 0x40]
mov qword [rbx + 0x768], rax
xor eax, eax
mov rbx, qword [r11 + 0x28]
lea ecx, [rax + 8]
rep stosb byte [rdi], al
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret