Function at 0x1400dc790
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov rdi, r9
movabs rbx, 0x7ffffffffffffffe
mov r13, r9
shr r13, 1
lea rbp, [r13 + 1]
lea r15, [r13*2 + 2]
mov r9, rdx
mov rsi, rcx
nop word cs:[rax + rax]
cmp r15, rbx
seta al
test rbp, rbp
sets cl
mov edx, dword [0x141f45d10]
xor edx, dword [0x141f45d14]
or edx, 0x25c46a90
shr edx, 3
imul rdx, rdx, 0xceb78b3
shr rdx, 0x37
xor edx, 0xc25923e5
cmp edx, 0x7b4123d4
jb 0x1400dc7d0
or cl, al
jne 0x1400dc8c2
mov eax, dword [0x141f45d28]
xor edx, edx
div dword [0x141f45d2c]
mov eax, dword [0x141f45d30]
xor eax, dword [0x141f45d34]
or eax, 0x4196ebcb
add eax, 0x5d9a3745
imul rax, rax, 0x15c56757
shr rax, 0x3b
cmp eax, 0x9b9ffcce
je 0x1400dc820
nop dword [rax + rax]
mov eax, dword [0x141f45d38]
sub eax, dword [0x141f45d3c]
add eax, 0x97d48169
shr eax, 8
imul rax, rax, 0x109063
shr rax, 0x2b
cmp eax, 0x1c916527
ja 0x1400dc850
test r15, r15
je 0x1400dc8b7
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r8
mov eax, dword [0x141f45d40]
imul eax, dword [0x141f45d44]
xor eax, 0xd534d8f8
add eax, 0xd3e6d493
imul rax, rax, 0x41747bb5
shr rax, 0x3d
cmp eax, 0x7d492675
jbe 0x1400dca19
jmp 0x1400dca3e
mov r12d, 2
xor r15d, r15d
jmp 0x1400dc914
mov eax, dword [0x141f45d18]
imul eax, dword [0x141f45d1c]
and eax, 0x8b8101d
xor eax, 0x28145116
or eax, 0x9743a4e0
cmp eax, 0xcf7a1852
jbe 0x1400dc8f0
ud2
mov eax, dword [0x141f45d20]
xor edx, edx
div dword [0x141f45d24]
imul eax, eax, 0xcc0b541e
or eax, 0x7f55e6d7
ud2
mov qword [rsp + 0x30], 0
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov rcx, r9
mov rdx, r8
mov r8, r12
mov r9, rdi
call qword [0x140108208]
test eax, eax
je 0x1400dc9c6
cmp qword [rsp + 0x30], rdi
jne 0x1400dc9da
mov eax, dword [0x141f45d68]
xor eax, dword [0x141f45d6c]
add eax, 0xa2431fe2
and eax, 0xb27803ea
cmp eax, 0xa7c5271e
jbe 0x1400dc97b
mov word [r12 + r13*2], 0
mov qword [rsi], r15
mov qword [rsi + 8], r12
mov qword [rsi + 0x10], rbp
xor eax, eax
nop dword [rax]
mov word [r12 + r13*2], 0
mov qword [rsi], r15
mov qword [rsi + 8], r12
mov qword [rsi + 0x10], rbp
test al, al
jne 0x1400dc980
nop word cs:[rax + rax]
mov eax, dword [0x141f45d70]
xor edx, edx
div dword [0x141f45d74]
add eax, 0x270c9ae8
or eax, 0xe19116a5
and eax, 0xeb93f6a5
cmp eax, 0x3681ef23
jb 0x1400dc9a0
jmp 0x1400dca07
call qword [0x1401082a8]
mov eax, 0x1b
lea rcx, [0x141f25e3a]
jmp 0x1400dc9e6
mov eax, 0x3a
lea rcx, [0x141f25e00]
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], rax
add rbx, 2
mov qword [rsi], rbx
mov rcx, qword [0x141f49060]
xor edx, edx
mov r8, r12
call qword [0x1401082d0]
nop
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [0x141f45d48]
xor eax, dword [0x141f45d4c]
and eax, 0x89ba544d
imul eax, eax, 0xf3d20b7e
movzx ecx, byte [0x141f49078]
cmp eax, 0xcb5e0b49
jne 0x1400dca47
movzx eax, byte [0x141f49078]
jmp 0x1400dca19
mov eax, dword [0x141f45d50]
sub eax, dword [0x141f45d54]
imul eax, eax, 0x7f18f401
add eax, 0x6a52064d
xor eax, 0x55f12033
cmp eax, 0x89df1e46
jb 0x1400dca7c
xor r14d, r14d
xor ecx, ecx
mov rdx, r15
call fcn.1400c6170
test r14b, r14b
je 0x1400dca88
xor ecx, ecx
mov rdx, r15
call fcn.1400c6170
jmp 0x1400dca6a
mov r12, rax
nop dword [rax + rax]
mov eax, dword [0x141f45d58]
xor edx, edx
div dword [0x141f45d5c]
imul eax, eax, 0xe0dd5113
add eax, 0x10b34da3
cmp eax, 0xb8f5077
jb 0x1400dca90
mov r15, rbp
test r12, r12
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x38]
jne 0x1400dc914
ud2