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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbx, qword [rsp + 0x60]
lea rsi, [0x140305800]
mov ebp, dword [rcx]
add rbx, 0x78
mov r15d, dword [rdx]
mov r14, rcx
mov r12d, dword [r8]
mov edi, 8
mov r13d, dword [r9]
mov r11d, dword [rbx + 4]
mov r9d, r15d
ror r9d, 4
mov edx, r11d
xor r9d, dword [rbx]
xor edx, r15d
mov eax, edx
xor r11d, r13d
shr eax, 8
and eax, 0x3f
add eax, 0x140
movzx eax, byte [rax + rsi]
imul r8d, eax, 0x841018
mov eax, r9d
shr eax, 8
and eax, 0x3f
add eax, 0x100
and r8d, 0x20404010
movzx eax, byte [rax + rsi]
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 + rsi]
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 + rsi]
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 + rsi]
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 + rsi]
xor r8d, ecx
imul ecx, eax, 0x41106
movzx eax, byte [rdx + rsi]
and ecx, 0x1010404
xor r8d, ecx
imul ecx, eax, 0x212240
movzx eax, byte [r9 + rsi]
and ecx, 0x10041040
xor r8d, ecx
imul ecx, eax, 0x120202
mov eax, r11d
shr eax, 8
and eax, 0x3f
add eax, 0x140
and ecx, 0x4200802
xor r8d, ecx
xor ebp, r8d
mov r8d, r13d
movzx eax, byte [rax + rsi]
imul edx, eax, 0x841018
ror r8d, 4
xor r8d, dword [rbx]
mov eax, r8d
shr eax, 8
and eax, 0x3f
and edx, 0x20404010
add eax, 0x100
movzx eax, byte [rax + rsi]
imul ecx, eax, 0x912140
mov r9d, ebp
mov eax, r11d
ror r9d, 4
shr eax, 0x10
and eax, 0x3f
xor r9d, dword [rbx - 8]
add eax, 0xc0
and ecx, 0x42080100
xor edx, ecx
movzx eax, byte [rax + rsi]
imul ecx, eax, 0x60221
mov eax, r11d
shr eax, 0x18
and r11d, 0x3f
and eax, 0x3f
add r11d, 0x1c0
add eax, 0x40
and ecx, 0x802081
xor edx, ecx
movzx eax, byte [rax + rsi]
imul ecx, eax, 0x2012020
mov eax, r8d
shr eax, 0x10
and eax, 0x3f
sub eax, 0xffffff80
and ecx, 0x80108020
xor edx, ecx
movzx eax, byte [rax + rsi]
imul ecx, eax, 0x901048
mov eax, r8d
shr rax, 0x18
and r8d, 0x3f
and eax, 0x3f
add r8d, 0x180
and ecx, 0x8020208
movzx eax, byte [rax + rsi]
xor edx, ecx
imul ecx, eax, 0x41106
movzx eax, byte [r11 + rsi]
mov r11d, dword [rbx - 4]
and ecx, 0x1010404
xor edx, ecx
imul ecx, eax, 0x212240
movzx eax, byte [r8 + rsi]
and ecx, 0x10041040
xor edx, ecx
imul ecx, eax, 0x120202
and ecx, 0x4200802
xor edx, ecx
xor r12d, edx
mov edx, r11d
xor edx, ebp
mov eax, edx
shr eax, 8
and eax, 0x3f
add eax, 0x140
movzx eax, byte [rax + rsi]
imul r8d, eax, 0x841018
mov eax, r9d
shr eax, 8
and eax, 0x3f
add eax, 0x100
and r8d, 0x20404010
movzx eax, byte [rax + rsi]
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 + rsi]
imul ecx, eax, 0x60221
mov eax, edx
shr eax, 0x18
and eax, 0x3f
and ecx, 0x802081
xor r8d, ecx
add eax, 0x40
movzx eax, byte [rax + rsi]
imul ecx, eax, 0x2012020
and edx, 0x3f
add edx, 0x1c0
mov eax, r9d
shr eax, 0x10
xor r11d, r12d
and eax, 0x3f
sub eax, 0xffffff80
and ecx, 0x80108020
xor r8d, ecx
movzx eax, byte [rax + rsi]
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 + rsi]
xor r8d, ecx
imul ecx, eax, 0x41106
movzx eax, byte [rdx + rsi]
and ecx, 0x1010404
xor r8d, ecx
imul ecx, eax, 0x212240
movzx eax, byte [r9 + rsi]
and ecx, 0x10041040
xor r8d, ecx
imul ecx, eax, 0x120202
mov eax, r11d
shr eax, 8
and eax, 0x3f
add eax, 0x140
and ecx, 0x4200802
xor r8d, ecx
xor r15d, r8d
mov r8d, r12d
movzx eax, byte [rax + rsi]
imul edx, eax, 0x841018
ror r8d, 4
xor r8d, dword [rbx - 8]
mov eax, r8d
shr eax, 8
and eax, 0x3f
and edx, 0x20404010
add eax, 0x100
movzx eax, byte [rax + rsi]
imul ecx, eax, 0x912140
mov eax, r11d
shr eax, 0x10
and eax, 0x3f
add eax, 0xc0
and ecx, 0x42080100
xor edx, ecx
movzx eax, byte [rax + rsi]
imul ecx, eax, 0x60221
mov eax, r11d
shr eax, 0x18
and eax, 0x3f
add eax, 0x40
and ecx, 0x802081
xor edx, ecx
movzx eax, byte [rax + rsi]
imul ecx, eax, 0x2012020
mov eax, r8d
shr eax, 0x10
and eax, 0x3f
sub eax, 0xffffff80
and ecx, 0x80108020
xor edx, ecx
movzx eax, byte [rax + rsi]
imul ecx, eax, 0x901048
mov eax, r8d
shr rax, 0x18
and eax, 0x3f
and ecx, 0x8020208
movzx eax, byte [rax + rsi]
xor edx, ecx
imul ecx, eax, 0x41106
and ecx, 0x1010404
xor edx, ecx
and r11d, 0x3f
lea rbx, [rbx - 0x10]
and r8d, 0x3f
add r11d, 0x1c0
add r8d, 0x180
movzx eax, byte [r11 + rsi]
imul ecx, eax, 0x212240
movzx eax, byte [r8 + rsi]
and ecx, 0x10041040
xor edx, ecx
imul ecx, eax, 0x120202
and ecx, 0x4200802
xor edx, ecx
xor r13d, edx
sub rdi, 1
jne 0x140272ce2
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov dword [r14], ebp
mov dword [rsi], r15d
mov dword [rdi], r12d
mov dword [rbx], r13d
mov rbx, qword [rsp + 0x40]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret