Function at 0x1800ec8e0
Capabilities:
Encode data using xor
Encrypt data using des

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
mov r10d, dword [rcx]
lea rsi, [r8 + 0xc]
mov r11d, dword [rdx]
lea r14, [0x18034ab00]
mov rbx, rdx
mov rdi, rcx
mov ebp, 4
nop dword [rax]
nop word [rax + rax]
mov edx, r11d
mov r9d, r11d
xor edx, dword [rsi - 8]
mov eax, edx
ror r9d, 4
xor r9d, dword [rsi - 0xc]
shr eax, 8
and eax, 0x3f
add eax, 0x140
movzx eax, byte [rax + r14]
imul r8d, eax, 0x841018
mov eax, r9d
shr eax, 8
and eax, 0x3f
add eax, 0x100
and r8d, 0x20404010
movzx eax, byte [rax + r14]
imul ecx, eax, 0x912140
mov eax, edx
shr eax, 0x10
and eax, 0x3f
add eax, 0xc0
and ecx, 0x42080100
xor r8d, ecx
movzx eax, byte [rax + r14]
imul ecx, eax, 0x60221
mov eax, edx
shr eax, 0x18
and edx, 0x3f
and eax, 0x3f
add edx, 0x1c0
add eax, 0x40
and ecx, 0x802081
xor r8d, ecx
movzx eax, byte [rax + r14]
imul ecx, eax, 0x2012020
mov eax, r9d
shr eax, 0x10
and eax, 0x3f
sub eax, 0xffffff80
and ecx, 0x80108020
xor r8d, ecx
movzx eax, byte [rax + r14]
imul ecx, eax, 0x901048
mov eax, r9d
shr rax, 0x18
and r9d, 0x3f
and eax, 0x3f
add r9d, 0x180
and ecx, 0x8020208
movzx eax, byte [rax + r14]
xor r8d, ecx
imul ecx, eax, 0x41106
movzx eax, byte [rdx + r14]
and ecx, 0x1010404
xor r8d, ecx
imul ecx, eax, 0x212240
movzx eax, byte [r9 + r14]
and ecx, 0x10041040
xor r8d, ecx
imul ecx, eax, 0x120202
and ecx, 0x4200802
xor r8d, ecx
xor r10d, r8d
mov edx, r10d
mov r9d, r10d
xor edx, dword [rsi]
mov eax, edx
ror r9d, 4
xor r9d, dword [rsi - 4]
shr eax, 8
and eax, 0x3f
add eax, 0x140
movzx eax, byte [rax + r14]
imul r8d, eax, 0x841018
mov eax, r9d
shr eax, 8
and eax, 0x3f
and r8d, 0x20404010
add eax, 0x100
movzx eax, byte [rax + r14]
imul ecx, eax, 0x912140
mov eax, edx
shr eax, 0x10
and eax, 0x3f
add eax, 0xc0
and ecx, 0x42080100
xor r8d, ecx
movzx eax, byte [rax + r14]
imul ecx, eax, 0x60221
mov eax, edx
shr eax, 0x18
and edx, 0x3f
and eax, 0x3f
add edx, 0x1c0
add eax, 0x40
and ecx, 0x802081
xor r8d, ecx
movzx eax, byte [rax + r14]
imul ecx, eax, 0x2012020
mov eax, r9d
shr eax, 0x10
and eax, 0x3f
sub eax, 0xffffff80
and ecx, 0x80108020
xor r8d, ecx
movzx eax, byte [rax + r14]
imul ecx, eax, 0x901048
mov eax, r9d
shr rax, 0x18
and r9d, 0x3f
and eax, 0x3f
add r9d, 0x180
and ecx, 0x8020208
movzx eax, byte [rax + r14]
xor r8d, ecx
imul ecx, eax, 0x41106
movzx eax, byte [rdx + r14]
and ecx, 0x1010404
xor r8d, ecx
imul ecx, eax, 0x212240
movzx eax, byte [r9 + r14]
and ecx, 0x10041040
xor r8d, ecx
imul ecx, eax, 0x120202
and ecx, 0x4200802
xor r8d, ecx
xor r11d, r8d
mov edx, r11d
mov r9d, r11d
xor edx, dword [rsi + 8]
mov eax, edx
ror r9d, 4
xor r9d, dword [rsi + 4]
shr eax, 8
and eax, 0x3f
add eax, 0x140
movzx eax, byte [rax + r14]
imul r8d, eax, 0x841018
mov eax, r9d
shr eax, 8
and eax, 0x3f
add eax, 0x100
and r8d, 0x20404010
movzx eax, byte [rax + r14]
imul ecx, eax, 0x912140
mov eax, edx
shr eax, 0x10
and eax, 0x3f
add eax, 0xc0
and ecx, 0x42080100
xor r8d, ecx
movzx eax, byte [rax + r14]
imul ecx, eax, 0x60221
mov eax, edx
shr eax, 0x18
and eax, 0x3f
add eax, 0x40
and ecx, 0x802081
xor r8d, ecx
movzx eax, byte [rax + r14]
imul ecx, eax, 0x2012020
and ecx, 0x80108020
mov eax, r9d
shr eax, 0x10
xor r8d, ecx
and eax, 0x3f
and edx, 0x3f
sub eax, 0xffffff80
add edx, 0x1c0
movzx eax, byte [rax + r14]
imul ecx, eax, 0x901048
mov eax, r9d
shr rax, 0x18
and r9d, 0x3f
and eax, 0x3f
add r9d, 0x180
and ecx, 0x8020208
movzx eax, byte [rax + r14]
xor r8d, ecx
imul ecx, eax, 0x41106
movzx eax, byte [rdx + r14]
and ecx, 0x1010404
xor r8d, ecx
imul ecx, eax, 0x212240
movzx eax, byte [r9 + r14]
and ecx, 0x10041040
xor r8d, ecx
imul ecx, eax, 0x120202
and ecx, 0x4200802
xor r8d, ecx
xor r10d, r8d
mov edx, r10d
mov r9d, r10d
xor edx, dword [rsi + 0x10]
mov eax, edx
ror r9d, 4
xor r9d, dword [rsi + 0xc]
shr eax, 8
and eax, 0x3f
add eax, 0x140
movzx eax, byte [rax + r14]
imul r8d, eax, 0x841018
mov eax, r9d
shr eax, 8
and eax, 0x3f
add eax, 0x100
and r8d, 0x20404010
movzx eax, byte [rax + r14]
imul ecx, eax, 0x912140
mov eax, edx
shr eax, 0x10
and eax, 0x3f
add eax, 0xc0
and ecx, 0x42080100
xor r8d, ecx
movzx eax, byte [rax + r14]
imul ecx, eax, 0x60221
mov eax, edx
shr eax, 0x18
and eax, 0x3f
add eax, 0x40
and ecx, 0x802081
xor r8d, ecx
movzx eax, byte [rax + r14]
imul ecx, eax, 0x2012020
mov eax, r9d
shr eax, 0x10
and eax, 0x3f
sub eax, 0xffffff80
and ecx, 0x80108020
xor r8d, ecx
movzx eax, byte [rax + r14]
imul ecx, eax, 0x901048
mov eax, r9d
shr rax, 0x18
and eax, 0x3f
and ecx, 0x8020208
movzx eax, byte [rax + r14]
xor r8d, ecx
imul ecx, eax, 0x41106
and ecx, 0x1010404
xor r8d, ecx
and edx, 0x3f
lea rsi, [rsi + 0x20]
and r9d, 0x3f
add edx, 0x1c0
add r9d, 0x180
movzx eax, byte [rdx + r14]
imul ecx, eax, 0x212240
movzx eax, byte [r9 + r14]
and ecx, 0x10041040
xor r8d, ecx
imul ecx, eax, 0x120202
and ecx, 0x4200802
xor r8d, ecx
xor r11d, r8d
sub rbp, 1
jne 0x1800ec920
mov rbp, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x20]
mov dword [rdi], r10d
mov rdi, qword [rsp + 0x28]
mov dword [rbx], r11d
mov rbx, qword [rsp + 0x10]
pop r14
ret