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

Disassembly:
sub esp, 8
push ebx
push ebp
push esi
mov esi, dword [esp + 0x18]
push edi
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ebp, eax
push 2
mov ebx, ebp
call fcn.00445f00
mov edi, eax
add esp, 4
test edi, edi
je 0x44f209
mov byte [edi], 0
mov al, byte [esp + 0x24]
test al, al
jne 0x44f29c
cmp ebp, 0x14
jge 0x44f21f
mov ebx, 0x14
lea esi, [ebx + 2]
lea eax, [esi + 1]
push edi
call fcn.00445f60
mov edx, eax
add esp, 4
test edx, edx
mov dword [esp + 0x10], edx
je 0x44f23c
mov byte [esi + edx], 0
mov ecx, esi
shr ecx, 2
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
mov ecx, esi
mov esi, dword [esp + 0x1c]
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp + 1]
mov eax, ecx
shr ecx, 2
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor ecx, ecx
test ebx, ebx
mov dword [esp + 0x14], edx
jle 0x44f292
nop
xor edx, edx
mov eax, ecx
mov esi, 0x14
div esi
mov esi, dword [esp + 0x10]
mov al, byte [ecx + esi]
mov dl, byte [edx + 0x4f3864]
xor al, dl
mov byte [ecx + esi], al
inc ecx
cmp ecx, ebx
jl 0x44f270
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov ebp, ebx
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx]
lea ebp, [ebp + ebp*2 + 0xd]
lea eax, [ebp + ebp + 2]
push edx
call fcn.00445f60
mov ecx, dword [esp + 0x24]
add esp, 4
test eax, eax
mov dword [ecx], eax
je 0x44f2c3
mov word [eax + ebp*2], 0
mov ebp, dword [ecx]
mov word [ebp], 0
add ebp, 2
mov word [ebp], 0
cmp byte [esi], 0
jne 0x44f2f9
test edi, edi
je 0x44f2ef
mov eax, dword [0x51927c]
add edi, 0xfffffff8
push edi
push 0
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 8
ret
mov dl, byte [esp + 0x24]
test dl, dl
jne 0x44f30a
mov word [ebp], 0x23
add ebp, 2
lea eax, [ebx + esi]
mov word [ebp], 0
movzx ebx, byte [esi]
mov dword [esp + 0x1c], eax
inc esi
mov cl, 8
jmp 0x44f323
mov dl, byte [esp + 0x24]
cmp cl, 6
jge 0x44f330
test cl, cl
jle 0x44f38b
cmp esi, eax
jne 0x44f38d
mov al, bl
and al, 0x3f
test dl, dl
je 0x44f343
movzx eax, al
mov al, byte [eax + str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_]
jmp 0x44f369
test al, al
jne 0x44f34b
mov al, 0x2b
jmp 0x44f369
cmp al, 1
jne 0x44f353
mov al, 0x2f
jmp 0x44f369
cmp al, 0xc
jae 0x44f35b
add al, 0x2e
jmp 0x44f369
cmp al, 0x26
jae 0x44f363
add al, 0x35
jmp 0x44f369
cmp al, 0x40
jae 0x44f369
add al, 0x3b
movzx ax, al
mov word [ebp], ax
mov eax, dword [esp + 0x1c]
add ebp, 2
shr ebx, 6
add cl, 0xfa
jns 0x44f323
mov word [ebp], 0x3d
add ebp, 2
jmp 0x44f323
cmp esi, eax
jae 0x44f3b8
movzx edx, byte [esi]
shl edx, cl
add cl, 8
or ebx, edx
inc esi
cmp esi, eax
jae 0x44f3b8
movzx edx, byte [esi]
shl edx, cl
add cl, 8
or ebx, edx
inc esi
cmp esi, eax
jae 0x44f3b8
movzx edx, byte [esi]
shl edx, cl
or ebx, edx
inc esi
add cl, 8
test cl, cl
jg 0x44f31f
test edi, edi
mov eax, dword [esp + 0x20]
mov word [ebp], 0
mov esi, dword [eax]
je 0x44f3e3
mov ecx, dword [0x51927c]
add edi, 0xfffffff8
push edi
push 0
push ecx
call dword [sym.imp.KERNEL32.dll_HeapFree]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 8
ret