Function at 0x14003db98
Capabilities:
Encode data using xor

Disassembly:
mov r8d, r8d
jmp 0x14003db98
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x10
mov r11, r8
mov r10, rdx
mov r9d, ecx
test rdx, rdx
jne 0x14003dbc1
xor eax, eax
jmp 0x14003de90
lea r15, [0x140000000]
not r9d
cmp r8, 0x17
jb 0x14003de21
test r10b, 3
je 0x14003dbfd
movzx ecx, byte [r10]
mov eax, r9d
xor rcx, rax
shr r9d, 8
movzx eax, cl
inc r10
xor r9d, dword [r15 + rax*4 + 0x78950]
sub r11, 1
jne 0x14003dbd5
xor esi, esi
movabs rax, 0xcccccccccccccccd
mul r11
xor ebp, ebp
xor r14d, r14d
mov rbx, rdx
lea edi, [rsi + 4]
shr rbx, 4
xor r12d, r12d
lea rax, [rbx + rbx*4]
shl rax, 2
sub r11, rax
sub rbx, 1
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x68], rbx
je 0x14003dd84
xor r9d, dword [r10]
lea rdx, [0x140000000]
xor esi, dword [r10 + 4]
mov r13d, 1
xor r14d, dword [r10 + 0xc]
xor r12d, dword [r10 + 0x10]
xor ebp, dword [r10 + 8]
movzx eax, r9b
add r10, 0x14
mov r11d, r9d
mov ebx, esi
mov qword [rsp + 0x58], r10
mov r9d, dword [r15 + rax*4 + 0x79150]
movzx eax, sil
mov r10d, ebp
mov esi, dword [r15 + rax*4 + 0x79150]
movzx eax, bpl
mov ebp, dword [r15 + rax*4 + 0x79150]
mov eax, r14d
mov qword [rsp], rax
movzx eax, r14b
mov r14d, dword [r15 + rax*4 + 0x79150]
mov eax, r12d
mov qword [rsp + 8], rax
movzx eax, r12b
mov r12d, dword [r15 + rax*4 + 0x79150]
mov r15d, 0x100
lea eax, [r13*8]
inc r13d
movsxd r8, eax
mov rax, r11
mov rcx, r8
shr rax, cl
movzx ecx, al
mov rax, rbx
add rcx, r15
xor r9d, dword [rdx + rcx*4 + 0x79150]
mov rcx, r8
shr rax, cl
movzx ecx, al
mov rax, r10
add rcx, r15
xor esi, dword [rdx + rcx*4 + 0x79150]
mov rcx, r8
shr rax, cl
movzx edx, al
lea rax, [0x140000000]
add rdx, r15
xor ebp, dword [rax + rdx*4 + 0x79150]
mov rax, qword [rsp]
shr rax, cl
movzx edx, al
lea rax, [0x140000000]
add rdx, r15
xor r14d, dword [rax + rdx*4 + 0x79150]
lea rdx, [0x140000000]
mov rax, qword [rsp + 8]
shr rax, cl
movzx ecx, al
add rcx, r15
add r15, 0x100
xor r12d, dword [rdx + rcx*4 + 0x79150]
cmp r13d, edi
jl 0x14003dcbf
sub qword [rsp + 0x68], 1
lea r15, [0x140000000]
mov r10, qword [rsp + 0x58]
jne 0x14003dc3d
mov r11, qword [rsp + 0x60]
lea r15, [0x140000000]
xor r9d, dword [r10]
mov rdx, rdi
movzx ecx, r9b
shr r9d, 8
xor r9d, dword [r15 + rcx*4 + 0x78950]
sub rdx, 1
jne 0x14003dd8a
xor r9d, dword [r10 + 4]
mov rdx, rdi
xor r9d, esi
movzx ecx, r9b
shr r9d, 8
xor r9d, dword [r15 + rcx*4 + 0x78950]
sub rdx, 1
jne 0x14003ddaa
xor r9d, dword [r10 + 8]
mov rdx, rdi
xor r9d, ebp
movzx ecx, r9b
shr r9d, 8
xor r9d, dword [r15 + rcx*4 + 0x78950]
sub rdx, 1
jne 0x14003ddca
xor r9d, dword [r10 + 0xc]
mov rdx, rdi
xor r9d, r14d
movzx ecx, r9b
shr r9d, 8
xor r9d, dword [r15 + rcx*4 + 0x78950]
sub rdx, 1
jne 0x14003ddea
xor r9d, dword [r10 + 0x10]
xor r9d, r12d
movzx ecx, r9b
shr r9d, 8
xor r9d, dword [r15 + rcx*4 + 0x78950]
sub rdi, 1
jne 0x14003de07
add r10, 0x14
cmp r11, 8
jb 0x14003de63
mov rdx, r11
shr rdx, 3
imul rax, rdx, 0xfffffffffffffff8
add r11, rax
mov r8d, 8
movzx ecx, byte [r10]
mov eax, r9d
xor rcx, rax
shr r9d, 8
movzx eax, cl
inc r10
xor r9d, dword [r15 + rax*4 + 0x78950]
sub r8, 1
jne 0x14003de3b
sub rdx, 1
jne 0x14003de35
test r11, r11
je 0x14003de8a
movzx ecx, byte [r10]
mov eax, r9d
xor rcx, rax
shr r9d, 8
movzx eax, cl
inc r10
xor r9d, dword [r15 + rax*4 + 0x78950]
sub r11, 1
jne 0x14003de68
not r9d
mov eax, r9d
mov rbx, qword [rsp + 0x50]
add rsp, 0x10
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret