Function at 0x140005840
Capabilities:
Encrypt data using des

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0xf0
mov rax, qword [0x140021010]
xor rax, rsp
mov qword [rbp + 0x37], rax
cmp dword [rcx + 0x720], 1
mov rbx, rcx
jne 0x1400058dc
movzx eax, byte [rcx + 0x710]
xor al, byte [rdx]
mov byte [rbp - 0x79], al
movzx eax, byte [rcx + 0x711]
xor al, byte [rdx + 1]
mov byte [rbp - 0x78], al
movzx eax, byte [rcx + 0x712]
xor al, byte [rdx + 2]
mov byte [rbp - 0x77], al
movzx eax, byte [rcx + 0x713]
xor al, byte [rdx + 3]
mov byte [rbp - 0x76], al
movzx eax, byte [rcx + 0x714]
xor al, byte [rdx + 4]
mov byte [rbp - 0x75], al
movzx eax, byte [rcx + 0x715]
xor al, byte [rdx + 5]
mov byte [rbp - 0x74], al
movzx eax, byte [rcx + 0x716]
xor al, byte [rdx + 6]
mov byte [rbp - 0x73], al
movzx eax, byte [rcx + 0x717]
xor al, byte [rdx + 7]
mov byte [rbp - 0x72], al
mov rax, qword [rbp - 0x79]
mov qword [rdx], rax
xorps xmm0, xmm0
lea r8, [rbp - 0x29]
xorps xmm1, xmm1
movups xmmword [rbp - 0x29], xmm0
movups xmmword [rbp - 0x19], xmm0
movups xmmword [rbp - 9], xmm0
movups xmmword [rbp + 7], xmm0
movups xmmword [rbp - 0x69], xmm1
movups xmmword [rbp - 0x59], xmm1
movups xmmword [rbp - 0x49], xmm1
movups xmmword [rbp - 0x39], xmm1
call fcn.1400064e0
lea r8, [rbp - 0x69]
lea rdx, [rbp - 0x29]
call fcn.140006080
movaps xmm0, xmmword [rbp - 0x69]
xor esi, esi
movaps xmm1, xmmword [rbp - 0x59]
mov edi, esi
movups xmmword [rbp - 0x29], xmm0
movaps xmm0, xmmword [rbp - 0x49]
movups xmmword [rbp - 0x19], xmm1
movaps xmm1, xmmword [rbp - 0x39]
movups xmmword [rbp + 0x17], xmm0
movups xmmword [rbp + 0x27], xmm1
nop dword [rax]
mov r9d, edi
lea r8, [rbp + 0x17]
lea rdx, [rbp - 0x29]
mov rcx, rbx
call fcn.140005c20
inc edi
cmp edi, 0x10
jl 0x140005940
movups xmm0, xmmword [rbp + 0x17]
lea rdx, [0x14001da60]
movups xmm1, xmmword [rbp + 0x27]
movaps xmmword [rbp - 0x69], xmm0
movups xmm0, xmmword [rbp - 0x29]
movaps xmmword [rbp - 0x59], xmm1
movups xmm1, xmmword [rbp - 0x19]
movaps xmmword [rbp - 0x49], xmm0
movaps xmmword [rbp - 0x39], xmm1
movsx rax, byte [rsi + rdx]
movzx ecx, byte [rbp + rax - 0x6a]
mov byte [rsi + rbx + 0x604], cl
movsx rax, byte [rsi + rdx + 1]
movzx ecx, byte [rbp + rax - 0x6a]
mov byte [rbx + rsi + 0x605], cl
movsx rax, byte [rsi + rdx + 2]
movzx ecx, byte [rbp + rax - 0x6a]
mov byte [rbx + rsi + 0x606], cl
movsx rax, byte [rsi + rdx + 3]
movzx ecx, byte [rbp + rax - 0x6a]
mov byte [rbx + rsi + 0x607], cl
movsx rax, byte [rsi + rdx + 4]
movzx ecx, byte [rbp + rax - 0x6a]
mov byte [rbx + rsi + 0x608], cl
movsx rax, byte [rsi + rdx + 5]
movzx ecx, byte [rbp + rax - 0x6a]
mov byte [rbx + rsi + 0x609], cl
movsx rax, byte [rsi + rdx + 6]
movzx ecx, byte [rbp + rax - 0x6a]
mov byte [rbx + rsi + 0x60a], cl
movsx rax, byte [rsi + rdx + 7]
movzx ecx, byte [rbp + rax - 0x6a]
mov byte [rbx + rsi + 0x60b], cl
movsx rax, byte [rsi + rdx + 8]
movzx ecx, byte [rbp + rax - 0x6a]
mov byte [rbx + rsi + 0x60c], cl
movsx rax, byte [rsi + rdx + 9]
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0xa]
mov byte [rbx + rsi + 0x60d], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0xb]
mov byte [rbx + rsi + 0x60e], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0xc]
mov byte [rbx + rsi + 0x60f], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0xd]
mov byte [rbx + rsi + 0x610], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0xe]
mov byte [rbx + rsi + 0x611], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0xf]
mov byte [rbx + rsi + 0x612], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x10]
mov byte [rbx + rsi + 0x613], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x11]
mov byte [rbx + rsi + 0x614], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x12]
mov byte [rbx + rsi + 0x615], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x13]
mov byte [rbx + rsi + 0x616], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x14]
mov byte [rbx + rsi + 0x617], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x15]
mov byte [rbx + rsi + 0x618], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x16]
mov byte [rbx + rsi + 0x619], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x17]
mov byte [rbx + rsi + 0x61a], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x18]
mov byte [rbx + rsi + 0x61b], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x19]
mov byte [rbx + rsi + 0x61c], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x1a]
mov byte [rbx + rsi + 0x61d], cl
movzx ecx, byte [rbp + rax - 0x6a]
mov byte [rbx + rsi + 0x61e], cl
movsx rax, byte [rsi + rdx + 0x1b]
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x1c]
mov byte [rbx + rsi + 0x61f], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x1d]
mov byte [rbx + rsi + 0x620], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x1e]
mov byte [rbx + rsi + 0x621], cl
movzx ecx, byte [rbp + rax - 0x6a]
movsx rax, byte [rsi + rdx + 0x1f]
mov byte [rbx + rsi + 0x622], cl
movzx ecx, byte [rbp + rax - 0x6a]
mov byte [rbx + rsi + 0x623], cl
add rsi, 0x20
cmp rsi, 0x40
jl 0x140005981
lea rdx, [rbx + 0x684]
lea r8, [rbx + 0x604]
call fcn.140006950
cmp dword [rbx + 0x720], 1
jne 0x140005bf4
mov rax, qword [rdx]
mov qword [rbx + 0x710], rax
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1400071f0
mov rbx, qword [rsp + 0x120]
add rsp, 0xf0
pop rdi
pop rsi
pop rbp
ret