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

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x2f]
sub rsp, 0x90
mov rax, qword [0x1402bf7c0]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov rdi, r8
mov rbx, rcx
mov rdx, qword [rbp + 0x7f]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x29], rax
lea r8, str.initCrypt_blowfish
lea rcx, [rbp - 0x39]
call fcn.140054ae0
nop
mov eax, dword [rdi + 0x10]
cdq
and edx, 7
lea r14d, [rdx + rax]
sar r14d, 3
xorps xmm0, xmm0
movups xmmword [rbp - 0x21], xmm0
movups xmmword [rbp - 0x11], xmm0
movups xmmword [rbp - 1], xmm0
movups xmmword [rbp + 0xf], xmm0
lea rsi, [rdi + 0x18]
mov rcx, rsi
call fcn.140044dc0
mov rcx, rsi
cmp eax, 0x40
jbe 0x1401c0ace
call fcn.140044a90
test rax, rax
je 0x1401c0af9
mov rcx, rsi
call fcn.140044a90
mov r8d, 0x40
jmp 0x1401c0aed
call fcn.140044a90
test rax, rax
je 0x1401c0af9
mov rcx, rsi
call fcn.140044dc0
mov edi, eax
mov rcx, rsi
call fcn.140044a90
mov r8d, edi
mov rdx, rax
lea rcx, [rbp - 0x21]
call fcn.140014090
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be000]
mov dword [rcx], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be004]
mov dword [rcx + 4], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be008]
mov dword [rcx + 8], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be00c]
mov dword [rcx + 0xc], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be010]
mov dword [rcx + 0x10], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be014]
mov dword [rcx + 0x14], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be018]
mov dword [rcx + 0x18], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be01c]
mov dword [rcx + 0x1c], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be020]
mov dword [rcx + 0x20], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be024]
mov dword [rcx + 0x24], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be028]
mov dword [rcx + 0x28], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be02c]
mov dword [rcx + 0x2c], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be030]
mov dword [rcx + 0x30], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be034]
mov dword [rcx + 0x34], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be038]
mov dword [rcx + 0x38], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be03c]
mov dword [rcx + 0x3c], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be040]
mov dword [rcx + 0x40], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [0x1402be044]
mov dword [rcx + 0x44], eax
lea r15, [0x1402be054]
mov r10d, 8
sub r10, r15
mov esi, reloc.WS2_32.dll_inet_ntoa
mov r11d, esi
sub r11, r15
xor edi, edi
mov r8d, edi
nop dword [rax + rax]
mov r9d, 0x40
nop word [rax + rax]
lea rdx, [r8 + r15]
mov rcx, qword [rbx + 0xb8]
mov eax, dword [rdx - 4]
mov dword [r8 + rcx], eax
mov rcx, qword [rbx + 0xb8]
mov eax, dword [rdx]
mov dword [rcx + r8 + 4], eax
mov rcx, qword [rbx + 0xb8]
add rcx, rdx
mov eax, dword [rdx + 4]
mov dword [rcx + r10], eax
mov rcx, qword [rbx + 0xb8]
add rcx, rdx
mov eax, dword [rdx + 8]
mov dword [rcx + r11], eax
add r8, 0x10
sub r9, 1
jne 0x1401c0c50
cmp r8, 0x1000
jl 0x1401c0c40
mov r10d, edi
nop dword [rax + rax]
mov r9, qword [rbx + 0xb0]
lea eax, [r10 + 1]
cdq
idiv r14d
movsxd rax, edx
movzx r8d, byte [rbp + rax - 0x21]
movsxd rax, r10d
movzx ecx, byte [rbp + rax - 0x21]
shl ecx, 8
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 2]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 3]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
xor dword [r9 + rsi - 0xc], r8d
lea eax, [r10 + 4]
cdq
idiv r14d
movsxd r10, edx
mov r9, qword [rbx + 0xb0]
lea eax, [r10 + 1]
cdq
idiv r14d
movsxd rax, edx
movzx r8d, byte [rbp + rax - 0x21]
movzx ecx, byte [rbp + r10 - 0x21]
shl ecx, 8
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 2]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 3]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
xor dword [r9 + rsi - 8], r8d
lea eax, [r10 + 4]
cdq
idiv r14d
movsxd r10, edx
mov r9, qword [rbx + 0xb0]
lea eax, [r10 + 1]
cdq
idiv r14d
movsxd rax, edx
movzx r8d, byte [rbp + rax - 0x21]
movzx ecx, byte [rbp + r10 - 0x21]
shl ecx, 8
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 2]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 3]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
xor dword [r9 + rsi - 4], r8d
lea eax, [r10 + 4]
cdq
idiv r14d
movsxd r10, edx
mov r9, qword [rbx + 0xb0]
lea eax, [r10 + 1]
cdq
idiv r14d
movsxd rax, edx
movzx r8d, byte [rbp + rax - 0x21]
movzx ecx, byte [rbp + r10 - 0x21]
shl ecx, 8
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 2]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 3]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
xor dword [r9 + rsi], r8d
lea eax, [r10 + 4]
cdq
idiv r14d
movsxd r10, edx
mov r9, qword [rbx + 0xb0]
lea eax, [r10 + 1]
cdq
idiv r14d
movsxd rax, edx
movzx r8d, byte [rbp + rax - 0x21]
movzx ecx, byte [rbp + r10 - 0x21]
shl ecx, 8
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 2]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 3]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
xor dword [r9 + rsi + 4], r8d
lea eax, [r10 + 4]
cdq
idiv r14d
movsxd r10, edx
mov r9, qword [rbx + 0xb0]
lea eax, [r10 + 1]
cdq
idiv r14d
movsxd rax, edx
movzx r8d, byte [rbp + rax - 0x21]
movzx ecx, byte [rbp + r10 - 0x21]
shl ecx, 8
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 2]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 3]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
xor dword [r9 + rsi + 8], r8d
lea eax, [r10 + 4]
cdq
idiv r14d
movsxd r10, edx
mov r9, qword [rbx + 0xb0]
lea eax, [r10 + 1]
cdq
idiv r14d
movsxd rax, edx
movzx r8d, byte [rbp + rax - 0x21]
movzx ecx, byte [rbp + r10 - 0x21]
shl ecx, 8
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 2]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 3]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
xor dword [r9 + rsi + 0xc], r8d
lea eax, [r10 + 4]
cdq
idiv r14d
movsxd r10, edx
mov r9, qword [rbx + 0xb0]
lea eax, [r10 + 1]
cdq
idiv r14d
movsxd rax, edx
movzx r8d, byte [rbp + rax - 0x21]
movzx ecx, byte [rbp + r10 - 0x21]
shl ecx, 8
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 2]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
shl r8d, 8
lea eax, [r10 + 3]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
xor dword [r9 + rsi + 0x10], r8d
lea eax, [r10 + 4]
cdq
idiv r14d
movsxd r9, edx
lea eax, [r9 + 1]
cdq
idiv r14d
movsxd rax, edx
movzx r8d, byte [rbp + rax - 0x21]
movzx ecx, byte [rbp + r9 - 0x21]
shl ecx, 8
or r8d, ecx
shl r8d, 8
lea eax, [r9 + 2]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
shl r8d, 8
lea eax, [r9 + 3]
cdq
idiv r14d
movsxd rax, edx
movzx ecx, byte [rbp + rax - 0x21]
or r8d, ecx
mov rax, qword [rbx + 0xb0]
xor dword [rsi + rax + 0x14], r8d
lea eax, [r9 + 4]
cdq
idiv r14d
mov r10d, edx
add rsi, 0x24
cmp rsi, 0x54
jl 0x1401c0cb0
mov dword [rbp - 0x41], edi
mov dword [rbp - 0x3d], edi
mov rsi, rdi
nop word [rax + rax]
lea r8, [rbp - 0x3d]
lea rdx, [rbp - 0x41]
mov rcx, rbx
call fcn.1401bf620
mov rcx, qword [rbx + 0xb0]
mov eax, dword [rbp - 0x41]
mov dword [rsi + rcx], eax
mov rcx, qword [rbx + 0xb0]
mov eax, dword [rbp - 0x3d]
mov dword [rsi + rcx + 4], eax
add rsi, 8
cmp rsi, 0x48
jl 0x1401c1040
nop word [rax + rax]
mov esi, 0x80
nop word [rax + rax]
lea r8, [rbp - 0x3d]
lea rdx, [rbp - 0x41]
mov rcx, rbx
call fcn.1401bf620
mov rcx, qword [rbx + 0xb8]
mov eax, dword [rbp - 0x41]
mov dword [rdi + rcx], eax
mov rcx, qword [rbx + 0xb8]
mov eax, dword [rbp - 0x3d]
mov dword [rcx + rdi + 4], eax
add rdi, 8
sub rsi, 1
jne 0x1401c1090
cmp rdi, 0x1000
jl 0x1401c1080
lea rcx, [rbp - 0x39]
call fcn.140054c00
mov al, 1
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.1401da8c0
mov rbx, qword [rsp + 0xc8]
add rsp, 0x90
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret