Function at 0x14005e6f0
Capabilities:
Encode data using xor
Encrypt data using blowfish

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], rbp
push rsi
sub rsp, 0x20
movsxd rbp, r8d
mov rsi, rdx
mov rbx, rcx
cmp ebp, 0x38
jg 0x14005ebb1
mov qword [rsp + 0x30], rdi
mov rcx, rbp
mov rdi, rbp
call fcn.14029a210
mov r10, rax
test ebp, ebp
jle 0x14005e740
mov rdx, rax
sub rsi, rax
nop
movzx ecx, byte [rsi + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rdi, 1
jne 0x14005e730
xor edi, edi
lea r11, [0x1403d2308]
mov r9d, edi
lea rsi, [0x1403d2350]
nop dword [rax]
nop word [rax + rax]
mov eax, r9d
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 - 8], r8d
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 - 4], r8d
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
add r8d, ecx
shl r8d, 8
lea eax, [r9 + 3]
cdq
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
idiv ebp
xor dword [r11], r8d
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 + 4], r8d
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 + 8], r8d
idiv ebp
mov eax, edx
mov r9d, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
shl r8d, 8
cdq
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 + 0xc], r8d
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 + 0x10], r8d
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
add r8d, ecx
xor dword [r11 + 0x14], r8d
lea eax, [r9 + 4]
cdq
idiv ebp
mov r9d, edx
mov eax, edx
cdq
idiv ebp
movsxd rax, edx
movzx r8d, byte [rax + r10]
lea eax, [r9 + 1]
cdq
shl r8d, 8
idiv ebp
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 2]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 3]
cdq
add r8d, ecx
idiv ebp
shl r8d, 8
movsxd rax, edx
movzx ecx, byte [rax + r10]
lea eax, [r9 + 4]
cdq
add r8d, ecx
xor dword [r11 + 0x18], r8d
add r11, 0x24
idiv ebp
mov r9d, edx
cmp r11, rsi
jl 0x14005e760
mov qword [rbx + 4], rdi
lea rsi, [0x1403d2348]
lea rdi, [0x1403d2300]
mov rcx, rbx
call fcn.14005ebd0
mov eax, dword [rbx + 4]
mov dword [rdi], eax
mov eax, dword [rbx + 8]
mov dword [rdi + 4], eax
add rdi, 8
cmp rdi, rsi
jl 0x14005eac4
lea rdi, [0x1403d2730]
lea rsi, [0x1403d2b30]
nop
mov rcx, rbx
call fcn.14005ebd0
mov eax, dword [rbx + 4]
mov dword [rdi], eax
mov eax, dword [rbx + 8]
mov dword [rdi + 4], eax
add rdi, 8
cmp rdi, rsi
jl 0x14005eaf0
lea rdi, [0x1403d2b30]
lea rsi, [0x1403d2f30]
nop word [rax + rax]
mov rcx, rbx
call fcn.14005ebd0
mov eax, dword [rbx + 4]
mov dword [rdi], eax
mov eax, dword [rbx + 8]
mov dword [rdi + 4], eax
add rdi, 8
cmp rdi, rsi
jl 0x14005eb20
lea rdi, [0x1403d3330]
lea rsi, [0x1403d3730]
nop word [rax + rax]
mov rcx, rbx
call fcn.14005ebd0
mov eax, dword [rbx + 4]
mov dword [rdi], eax
mov eax, dword [rbx + 8]
mov dword [rdi + 4], eax
add rdi, 8
cmp rdi, rsi
jl 0x14005eb50
lea rdi, [0x1403d2f30]
lea rsi, [0x1403d3330]
nop word [rax + rax]
mov rcx, rbx
call fcn.14005ebd0
mov eax, dword [rbx + 4]
mov dword [rdi], eax
mov eax, dword [rbx + 8]
mov dword [rdi + 4], eax
add rdi, 8
cmp rdi, rsi
jl 0x14005eb80
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x48]
add rsp, 0x20
pop rsi
ret
lea rdx, [0x1403c8c40]
mov dword [rsp + 0x40], gethostname
lea rcx, [rsp + 0x40]
call fcn.1402a0890
int3