Function at 0x1400bf980
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x50
mov rsi, rcx
mov rcx, qword [rcx]
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400bf9a0
cmp rcx, 0xffffffffffffffff
je 0x1400bfc13
lea r8, [rcx + 1]
lea r9, [rcx + rcx]
mov r10d, 4
nop dword [rax]
mov eax, dword [0x141dd55b0]
xor edx, edx
div dword [0x141dd55b4]
imul rdx, rax, 0x21fde703
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1e
or eax, 0xab1d88dc
imul eax, eax, 0x7da5df46
cmp r9, r8
mov rdi, r8
cmova rdi, r9
cmp rdi, 5
cmovb rdi, r10
cmp eax, 0x121573f9
jb 0x1400bf9c0
mov r8d, 0x28
nop dword [rax]
mov eax, dword [0x141dd55b8]
or eax, dword [0x141dd55bc]
imul r9d, eax, 0x3f1a808d
mov rax, rdi
mul r8
mov rbx, rax
seto al
cmp r9d, 0xe7c46d9f
je 0x1400bfa10
movabs rdx, 0x7ffffffffffffff8
nop word cs:[rax + rax]
mov r8d, dword [0x141dd55c0]
add r8d, dword [0x141dd55c4]
imul r9d, r8d, 0xd6c50da5
add r9d, 0x48285ae1
cmp rbx, rdx
seta r8b
cmp r9d, 0x4676fdd1
jb 0x1400bfa50
or al, r8b
jne 0x1400bfc13
nop word cs:[rax + rax]
mov eax, dword [0x141dd55c8]
xor edx, edx
div dword [0x141dd55cc]
add eax, 0xff3f0101
imul rax, rax, 0xbb6304b
shr rax, 0x3a
and eax, 1
cmp eax, 0x80c291ed
ja 0x1400bfa90
nop dword [rax + rax]
mov eax, dword [0x141dd55d0]
xor edx, edx
div dword [0x141dd55d4]
add eax, 0x8737f274
and eax, 0x9a763b24
cmp eax, 0x7151eaf4
jb 0x1400bfac0
test rcx, rcx
je 0x1400bfb02
mov rax, qword [rsi + 8]
shl rcx, 3
lea rcx, [rcx + rcx*4]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x30], rcx
mov r14d, 8
jmp 0x1400bfb05
xor r14d, r14d
mov eax, dword [0x141dd55d8]
imul eax, dword [0x141dd55dc]
add eax, 0xccb3ee07
or eax, 0xfbceff2f
cmp eax, 0xde41d686
jb 0x1400bfb6b
mov eax, dword [0x141dd55e0]
xor eax, dword [0x141dd55e4]
and eax, 0xf503b93b
imul r15, rax, 0x74a2e211
shr r15, 0x3e
add r15d, 0x891a27bf
mov qword [rsp + 0x28], r14
lea rcx, [rsp + 0x38]
lea r9, [rsp + 0x20]
mov edx, 8
mov r8, rbx
call fcn.1400c0b80
cmp r15d, 0xaf9db1f7
jbe 0x1400bfb89
mov qword [rsp + 0x28], r14
lea rcx, [rsp + 0x38]
lea r9, [rsp + 0x20]
mov edx, 8
mov r8, rbx
call fcn.1400c0b80
jmp 0x1400bfb23
cmp qword [rsp + 0x38], 0
jne 0x1400bfbc0
mov eax, dword [0x141dd55f8]
or eax, dword [0x141dd55fc]
imul eax, eax, 0x817240c
or eax, 0x5eb93f8
cmp eax, 0x9ddd2370
jne 0x1400bfc15
jmp 0x1400bfc44
mov eax, dword [0x141dd55e8]
and eax, dword [0x141dd55ec]
or eax, 0x4fe1f3b1
xor eax, 0x806cbc9f
add eax, 0x5b740228
cmp eax, 0x1dbb5e87
jb 0x1400bfbc0
nop word cs:[rax + rax]
mov eax, dword [0x141dd55f0]
xor eax, dword [0x141dd55f4]
imul eax, eax, 0x41825c81
add eax, 0x7a0db2f8
and eax, 0x57201004
cmp eax, 0x670d455d
je 0x1400bfbf0
ud2
mov rax, qword [rsp + 0x40]
mov qword [rsi + 8], rax
mov eax, dword [0x141dd5600]
sub eax, dword [0x141dd5604]
imul eax, eax, 0x3ca10f0b
add eax, 0xb5735d65
or eax, 0x61109d74
mov qword [rsi], rdi
cmp eax, 0xe10dafec
jne 0x1400bfc60
mov rax, qword [rsp + 0x40]
mov qword [rsi + 8], rax
mov qword [rsi], rdi
jmp 0x1400bfc15
mov eax, dword [0x141dd5608]
imul eax, dword [0x141dd560c]
add eax, 0x63edaee4
or eax, 0x63965075
xor eax, 0x9b8ca6c
cmp eax, 0x6c3bea64
jb 0x1400bfc60
add rsp, 0x50
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret