Function at 0x1400d8080
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
push rax
mov rbp, rsp
mov rsi, rcx
mov eax, dword [0x141dd8ae0]
xor eax, dword [0x141dd8ae4]
imul eax, eax, 0x9b98930a
add eax, 0x272faf4c
and eax, 0x3e2065c4
cmp eax, 0xefaab97c
ja 0x1400d80ef
mov eax, dword [0x141dd8ae8]
xor edx, edx
div dword [0x141dd8aec]
add eax, 0x5aeb8e7f
shr eax, 3
imul rcx, rax, 0x1118721b
shr rcx, 0x38
mov eax, 0x20
call fcn.1400ef3b0
sub rsp, rax
mov rdi, rsp
cmp ecx, 0xf9ee2a98
jne 0x1400d80fe
mov eax, 0x20
call fcn.1400ef3b0
sub rsp, rax
jmp 0x1400d80b6
mov eax, dword [0x141dd8af0]
add eax, dword [0x141dd8af4]
and eax, 0x76cbbcad
imul eax, eax, 0x581a239b
cmp eax, 0xb17d1c69
jne 0x1400d8130
mov eax, 0x20
call fcn.1400ef3b0
sub rsp, rax
nop dword [rax]
mov eax, dword [0x141dd8af8]
xor edx, edx
div dword [0x141dd8afc]
xor eax, 0x9c024062
and eax, 0x9e5e45e3
imul ecx, eax, 0xfc523b9f
mov eax, 0x20
call fcn.1400ef3b0
sub rsp, rax
mov rbx, rsp
cmp ecx, 0xef6c7eba
je 0x1400d8130
mov rcx, qword [rsi]
mov eax, 0xc66f246f
nop
mov edx, dword [0x141dd8b00]
mov r8d, dword [0x141dd8b04]
add edx, r8d
add edx, 0xb2e1d2ec
xor edx, 0xbe25323b
imul rdx, rax
shr rdx, 0x3f
cmp edx, 0xde94a03f
ja 0x1400d8170
cmp rcx, 0xffffffffffffffff
je 0x1400d8342
lea r8, [rcx + 1]
lea rax, [rcx + rcx]
cmp rax, r8
cmova r8, rax
mov r9d, 0x70
nop dword [rax + rax]
mov r10d, dword [0x141dd8b08]
xor r10d, dword [0x141dd8b0c]
add r10d, 0xa87d9c4e
and r10d, 0x7c6b3e44
xor r10d, 0x27ebd915
cmp r8, 5
mov r14d, 4
cmovae r14, r8
mov rax, r14
mul r9
mov r15, rax
seto al
cmp r10d, 0xc2d22667
ja 0x1400d81c0
movabs rdx, 0x7ffffffffffffff8
mov r8d, dword [0x141dd8b10]
sub r8d, dword [0x141dd8b14]
imul r9, r8, 0x2168b997
shr r9, 0x39
add r9d, 0x9ef95761
xor r9d, 0x4258e395
cmp r15, rdx
seta r8b
cmp r9d, 0x49d2403d
jb 0x1400d8210
or al, r8b
jne 0x1400d8342
test rcx, rcx
je 0x1400d826c
mov rax, qword [rsi + 8]
imul rcx, rcx, 0x70
mov qword [rdi], rax
mov qword [rdi + 0x10], rcx
mov r12d, 8
jmp 0x1400d826f
xor r12d, r12d
mov eax, dword [0x141dd8b18]
xor edx, edx
div dword [0x141dd8b1c]
imul eax, eax, 0x50e488b2
xor eax, 0x3125c3c5
imul rax, rax, 0x22682761
shr rax, 0x3d
cmp eax, 0x2ce04adc
ja 0x1400d82e7
mov eax, dword [0x141dd8b20]
add eax, dword [0x141dd8b24]
imul eax, eax, 0xc83913e3
xor eax, 0x1f7b4e01
mov r13d, 0x9523db2d
imul r13, rax
shr r13, 0x3f
mov qword [rdi + 8], r12
sub rsp, 0x20
mov edx, 8
mov rcx, rbx
mov r8, r15
mov r9, rdi
call fcn.1400c0b80
add rsp, 0x20
cmp r13d, 0x920e04f6
jbe 0x1400d8308
mov qword [rdi + 8], r12
sub rsp, 0x20
mov edx, 8
mov rcx, rbx
mov r8, r15
mov r9, rdi
call fcn.1400c0b80
add rsp, 0x20
jmp 0x1400d829a
cmp qword [rbx], 0
jne 0x1400d8342
mov rax, qword [rbx + 8]
mov ecx, dword [0x141dd8b38]
or ecx, dword [0x141dd8b3c]
xor ecx, 0xb17d7e4f
imul rcx, rcx, 0x25847d1
shr rcx, 0x39
imul ecx, ecx, 0x729c7522
cmp ecx, 0x841e3f7c
jne 0x1400d83a8
jmp 0x1400d83d5
mov eax, dword [0x141dd8b28]
xor eax, dword [0x141dd8b2c]
and eax, 0x8889b593
mov ecx, 0xae297fe5
imul rcx, rax
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
add eax, 0x7506dfbb
cmp eax, 0x36823f79
jae 0x1400d8380
ud2
mov eax, dword [0x141dd8b30]
imul eax, dword [0x141dd8b34]
xor eax, 0x60c50600
or eax, 0x9612116b
imul eax, eax, 0x2e3c55bf
ud2
mov ecx, dword [0x141dd8b40]
xor ecx, dword [0x141dd8b44]
or ecx, 0x6100c81
and ecx, 0x3f94ecf5
imul ecx, ecx, 0x8cc3f6c6
mov qword [rsi + 8], rax
mov qword [rsi], r14
cmp ecx, 0x10ac638c
jae 0x1400d83de
mov qword [rsi + 8], rax
mov qword [rsi], r14
jmp 0x1400d83a8
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret