Function at 0x27de1b15f20
Capabilities:
Contain obfuscated stackstrings
Encrypt data using rc4 prga
Encrypt data using salsa20 or chacha

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], rsi
mov qword [r11 + 0x20], rdi
push rbp
lea rbp, [r11 - 0x5f]
sub rsp, 0xc0
mov rax, qword [0x27de1b3d008]
xor rax, rsp
mov qword [rbp + 0x47], rax
mov esi, edx
xorps xmm0, xmm0
mov dword [rbp - 0x39], 0x5a716657
mov rdi, rcx
mov dword [rbp - 0x1e], 0x6f553346
mov dword [rbp - 0x32], 0x57584935
mov word [rbp - 0x35], 0x3650
mov byte [rbp - 0x33], 0x6a
mov word [rbp - 0x2d], 0x585a
mov byte [rbp - 0x2e], 0x61
mov word [rbp - 0x2a], 0x3079
mov byte [rbp - 0x2b], 0x4a
mov dword [rbp - 0x27], 0x31685679
mov dword [rbp - 0x23], 0x6150464b
mov byte [rbp - 0x28], 0x4b
mov byte [rbp - 0x1f], reloc.WS2_32.dll_WSACleanup
mov word [rbp - 0x1a], 0x64
movups xmmword [rbp - 0x11], xmm0
test rcx, rcx
je 0x27de1b1619e
movzx eax, byte [0x27de1b3db18]
mov byte [rbp - 0x11], al
movzx eax, byte [0x27de1b3db19]
mov byte [rbp - 0x10], al
movzx eax, byte [0x27de1b3db1a]
mov byte [rbp - 0xf], al
movzx eax, byte [0x27de1b3db1b]
mov byte [rbp - 0xe], al
movzx eax, byte [0x27de1b3db1c]
mov byte [rbp - 0xd], al
movzx eax, byte [0x27de1b3db1d]
mov byte [rbp - 0xc], al
movzx eax, byte [0x27de1b3db1e]
mov byte [rbp - 0xb], al
movzx eax, byte [0x27de1b3db1f]
mov qword [r11 + 0x10], rbx
mov ebx, dword [0x27de1b3edac]
mov byte [rbp - 0xa], al
test bl, 0x3f
je 0x27de1b160b6
mov ecx, ebx
mov dword [rbp - 0x49], 0x61707865
shr ecx, 6
lea r8, [rbp + 8]
mov eax, ecx
mov byte [rbp - 9], cl
shr eax, 8
mov byte [rbp - 8], al
mov eax, ecx
shr eax, 0x10
shr ecx, 0x18
mov byte [rbp - 7], al
xor r9d, r9d
mov byte [rbp - 6], cl
mov dword [rbp - 0x45], 0x3320646e
mov dword [rbp - 0x41], 0x79622d32
mov dword [rbp - 0x3d], 0x6b206574
nop dword [rax]
mov eax, 0xcccccccd
lea r8, [r8 + 0x14]
mul r9d
add r9d, 0x14
shr edx, 4
lea rcx, [rdx*4]
movzx eax, byte [rbp + rcx - 0x49]
mov byte [r8 - 0x15], al
movzx eax, byte [rbp + rcx - 0x48]
mov byte [r8 - 0x14], al
movzx eax, byte [rbp + rcx - 0x47]
mov byte [r8 - 0x13], al
movzx eax, byte [rbp + rcx - 0x46]
mov byte [r8 - 0x12], al
cmp r9d, 0x40
jl 0x27de1b16050
movups xmm0, xmmword [rbp - 0x39]
lea rcx, [rbp + 7]
movups xmm1, xmmword [rbp - 0x29]
movups xmmword [rbp + 0xb], xmm0
movups xmm0, xmmword [rbp - 0x11]
movups xmmword [rbp + 0x33], xmm1
movups xmmword [rbp + 0x1f], xmm0
call fcn.27de1b15a50
test esi, esi
je 0x27de1b16192
nop
test bl, 0x3f
jne 0x27de1b16176
mov ecx, ebx
mov dword [rbp - 0x49], 0x61707865
shr ecx, 6
lea r8, [rbp + 8]
mov eax, ecx
mov byte [rbp - 9], cl
shr eax, 8
mov byte [rbp - 8], al
mov eax, ecx
shr eax, 0x10
shr ecx, 0x18
mov byte [rbp - 7], al
xor r9d, r9d
mov byte [rbp - 6], cl
mov dword [rbp - 0x45], 0x3320646e
mov dword [rbp - 0x41], 0x79622d32
mov dword [rbp - 0x3d], 0x6b206574
nop word [rax + rax]
mov eax, 0xcccccccd
lea r8, [r8 + 0x14]
mul r9d
add r9d, 0x14
shr edx, 4
lea rcx, [rdx*4]
movzx eax, byte [rbp + rcx - 0x49]
mov byte [r8 - 0x15], al
movzx eax, byte [rbp + rcx - 0x48]
mov byte [r8 - 0x14], al
movzx eax, byte [rbp + rcx - 0x47]
mov byte [r8 - 0x13], al
movzx eax, byte [rbp + rcx - 0x46]
mov byte [r8 - 0x12], al
cmp r9d, 0x40
jl 0x27de1b16110
movups xmm0, xmmword [rbp - 0x39]
lea rcx, [rbp + 7]
movups xmm1, xmmword [rbp - 0x29]
movups xmmword [rbp + 0xb], xmm0
movups xmm0, xmmword [rbp - 0x11]
movups xmmword [rbp + 0x33], xmm1
movups xmmword [rbp + 0x1f], xmm0
call fcn.27de1b15a50
mov rax, rbx
inc ebx
and eax, 0x3f
movzx eax, byte [rbp + rax + 7]
xor byte [rdi], al
inc rdi
sub rsi, 1
jne 0x27de1b160c0
mov rbx, qword [rsp + 0xd8]
xor eax, eax
jmp 0x27de1b161a3
mov eax, 1
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.27de1b161e0
lea r11, [rsp + 0xc0]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret