Function at 0x14001b611
Capabilities:
Encode data using xor
Encrypt data using salsa20 or chacha
Resolve function by parsing pe exports

Disassembly:
endbr64
mov qword [rsp + 8], rdi
mov qword [rsp + 0x10], rsi
mov rax, rsp
mov rdi, rcx
mov rsi, rdx
mov rdx, r8
mov rcx, r9
mov r8, qword [rsp + 0x28]
cmp rdx, 0
je 0x14001b9ec
push rbx
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x58
mov rbp, rdx
mov r12, qword [rcx]
mov r13, qword [rcx + 8]
mov r14, qword [rcx + 0x10]
mov r15, qword [rcx + 0x18]
mov rax, qword [r8]
mov rdx, qword [r8 + 8]
mov qword [rsp + 0x10], r12
mov qword [rsp + 0x18], r13
mov qword [rsp], r14
mov qword [rsp + 8], r15
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rdx
jmp 0x14001b680
mov eax, 0x61707865
mov ebx, 0x3320646e
mov ecx, 0x79622d32
mov edx, 0x6b206574
mov r8d, dword [rsp + 0x10]
mov r9d, dword [rsp + 0x14]
mov r10d, dword [rsp + 0x18]
mov r11d, dword [rsp + 0x1c]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x34]
mov r14d, dword [rsp + 0x38]
mov qword [rsp + 0x28], r15
mov r15d, dword [rsp + 0x3c]
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x48], rsi
mov esi, dword [rsp]
mov qword [rsp + 0x50], rdi
mov edi, dword [rsp + 4]
mov ebp, 0xa
jmp 0x14001b6e0
add eax, r8d
xor r12d, eax
rol r12d, 0x10
add ebx, r9d
xor r13d, ebx
rol r13d, 0x10
add esi, r12d
xor r8d, esi
rol r8d, 0xc
add edi, r13d
xor r9d, edi
rol r9d, 0xc
add eax, r8d
xor r12d, eax
rol r12d, 8
add ebx, r9d
xor r13d, ebx
rol r13d, 8
add esi, r12d
xor r8d, esi
rol r8d, 7
add edi, r13d
xor r9d, edi
rol r9d, 7
mov dword [rsp + 0x20], esi
mov dword [rsp + 0x24], edi
mov esi, dword [rsp + 0x28]
mov edi, dword [rsp + 0x2c]
add ecx, r10d
xor r14d, ecx
rol r14d, 0x10
add edx, r11d
xor r15d, edx
rol r15d, 0x10
add esi, r14d
xor r10d, esi
rol r10d, 0xc
add edi, r15d
xor r11d, edi
rol r11d, 0xc
add ecx, r10d
xor r14d, ecx
rol r14d, 8
add edx, r11d
xor r15d, edx
rol r15d, 8
add esi, r14d
xor r10d, esi
rol r10d, 7
add edi, r15d
xor r11d, edi
rol r11d, 7
add eax, r9d
xor r15d, eax
rol r15d, 0x10
add ebx, r10d
xor r12d, ebx
rol r12d, 0x10
add esi, r15d
xor r9d, esi
rol r9d, 0xc
add edi, r12d
xor r10d, edi
rol r10d, 0xc
add eax, r9d
xor r15d, eax
rol r15d, 8
add ebx, r10d
xor r12d, ebx
rol r12d, 8
add esi, r15d
xor r9d, esi
rol r9d, 7
add edi, r12d
xor r10d, edi
rol r10d, 7
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x2c], edi
mov esi, dword [rsp + 0x20]
mov edi, dword [rsp + 0x24]
add ecx, r11d
xor r13d, ecx
rol r13d, 0x10
add edx, r8d
xor r14d, edx
rol r14d, 0x10
add esi, r13d
xor r11d, esi
rol r11d, 0xc
add edi, r14d
xor r8d, edi
rol r8d, 0xc
add ecx, r11d
xor r13d, ecx
rol r13d, 8
add edx, r8d
xor r14d, edx
rol r14d, 8
add esi, r13d
xor r11d, esi
rol r11d, 7
add edi, r14d
xor r8d, edi
rol r8d, 7
dec ebp
jne 0x14001b6e0
add esi, dword [rsp]
add edi, dword [rsp + 4]
mov rbp, qword [rsp + 0x40]
mov dword [rsp + 0x20], esi
mov rsi, qword [rsp + 0x48]
mov dword [rsp + 0x24], edi
mov rdi, qword [rsp + 0x50]
add eax, 0x61707865
add ebx, 0x3320646e
add ecx, 0x79622d32
add edx, 0x6b206574
add r8d, dword [rsp + 0x10]
add r9d, dword [rsp + 0x14]
add r10d, dword [rsp + 0x18]
add r11d, dword [rsp + 0x1c]
add r12d, dword [rsp + 0x30]
add r13d, dword [rsp + 0x34]
add r14d, dword [rsp + 0x38]
add r15d, dword [rsp + 0x3c]
cmp rbp, 0x40
jb 0x14001b960
xor eax, dword [rsi]
xor ebx, dword [rsi + 4]
xor ecx, dword [rsi + 8]
xor edx, dword [rsi + 0xc]
mov dword [rdi], eax
mov eax, dword [rsp + 0x20]
mov dword [rdi + 4], ebx
mov ebx, dword [rsp + 0x24]
mov dword [rdi + 8], ecx
mov ecx, dword [rsp + 0x28]
mov dword [rdi + 0xc], edx
mov edx, dword [rsp + 0x2c]
xor r8d, dword [rsi + 0x10]
add ecx, dword [rsp + 8]
xor r9d, dword [rsi + 0x14]
add edx, dword [rsp + 0xc]
xor r10d, dword [rsi + 0x18]
xor r11d, dword [rsi + 0x1c]
xor eax, dword [rsi + 0x20]
xor ebx, dword [rsi + 0x24]
xor ecx, dword [rsi + 0x28]
xor edx, dword [rsi + 0x2c]
xor r12d, dword [rsi + 0x30]
xor r13d, dword [rsi + 0x34]
xor r14d, dword [rsi + 0x38]
xor r15d, dword [rsi + 0x3c]
lea rsi, [rsi + 0x40]
add dword [rsp + 0x30], 1
mov dword [rdi + 0x10], r8d
mov dword [rdi + 0x14], r9d
mov dword [rdi + 0x18], r10d
mov dword [rdi + 0x1c], r11d
mov dword [rdi + 0x20], eax
mov dword [rdi + 0x24], ebx
mov dword [rdi + 0x28], ecx
mov dword [rdi + 0x2c], edx
mov dword [rdi + 0x30], r12d
mov dword [rdi + 0x34], r13d
mov dword [rdi + 0x38], r14d
mov dword [rdi + 0x3c], r15d
lea rdi, [rdi + 0x40]
mov r15, qword [rsp + 8]
sub rbp, 0x40
jne 0x14001b680
jmp 0x14001b9c9
mov dword [rsp], eax
mov eax, dword [rsp + 8]
mov dword [rsp + 4], ebx
mov ebx, dword [rsp + 0xc]
mov dword [rsp + 8], ecx
add eax, dword [rsp + 0x28]
mov dword [rsp + 0xc], edx
add ebx, dword [rsp + 0x2c]
mov dword [rsp + 0x10], r8d
mov dword [rsp + 0x14], r9d
mov dword [rsp + 0x18], r10d
mov dword [rsp + 0x1c], r11d
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x2c], ebx
xor rbx, rbx
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x34], r13d
mov dword [rsp + 0x38], r14d
mov dword [rsp + 0x3c], r15d
movzx eax, byte [rsi + rbx]
movzx edx, byte [rsp + rbx]
lea rbx, [rbx + 1]
xor eax, edx
mov byte [rdi + rbx - 1], al
dec rbp
jne 0x14001b9b2
lea rsi, [rsp + 0x88]
mov r15, qword [rsi - 0x30]
mov r14, qword [rsi - 0x28]
mov r13, qword [rsi - 0x20]
mov r12, qword [rsi - 0x18]
mov rbp, qword [rsi - 0x10]
mov rbx, qword [rsi - 8]
lea rsp, [rsi]
mov rdi, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
repz ret