Function at 0x48fc94
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffec
push ebx
push esi
push edi
mov dword [ebp - 8], ecx
mov edi, edx
mov dword [ebp - 4], eax
mov esi, dword [ebp + 8]
cmp dword [ebp - 8], 0
je 0x48fec0
mov eax, dword [ebp - 8]
mov ecx, 3
xor edx, edx
div ecx
lea eax, [eax + eax*2]
mov dword [ebp - 0x10], eax
mov eax, dword [edi]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x10]
add dword [ebp - 0xc], eax
jmp 0x48fd88
mov eax, dword [edi]
mov edx, dword [ebp - 4]
xor ebx, ebx
mov bl, byte [edx + eax]
inc dword [edi]
shl ebx, 8
mov eax, dword [edi]
mov edx, dword [ebp - 4]
movzx eax, byte [edx + eax]
or ebx, eax
inc dword [edi]
shl ebx, 8
mov eax, dword [edi]
mov edx, dword [ebp - 4]
movzx eax, byte [edx + eax]
or ebx, eax
inc dword [edi]
mov eax, ebx
and eax, 0x3f
mov al, byte [eax + 0x4d3920]
mov byte [ebp - 0x11], al
shr ebx, 6
mov eax, ebx
and eax, 0x3f
mov al, byte [eax + 0x4d3920]
mov byte [ebp - 0x12], al
shr ebx, 6
mov eax, ebx
and eax, 0x3f
mov al, byte [eax + 0x4d3920]
mov byte [ebp - 0x13], al
shr ebx, 6
mov al, byte [ebx + 0x4d3920]
mov byte [ebp - 0x14], al
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov cl, byte [ebp - 0x14]
mov byte [eax + edx - 1], cl
inc dword [esi]
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov cl, byte [ebp - 0x13]
mov byte [eax + edx - 1], cl
inc dword [esi]
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov cl, byte [ebp - 0x12]
mov byte [eax + edx - 1], cl
inc dword [esi]
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov cl, byte [ebp - 0x11]
mov byte [eax + edx - 1], cl
inc dword [esi]
mov eax, dword [edi]
cmp eax, dword [ebp - 0xc]
jb 0x48fcd4
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
dec eax
je 0x48fda8
dec eax
je 0x48fe28
jmp 0x48fec0
mov eax, dword [edi]
mov edx, dword [ebp - 4]
xor ebx, ebx
mov bl, byte [edx + eax]
inc dword [edi]
shl ebx, 4
mov eax, ebx
and eax, 0x3f
mov al, byte [eax + 0x4d3920]
mov byte [ebp - 0x13], al
shr ebx, 6
mov al, byte [ebx + 0x4d3920]
mov byte [ebp - 0x14], al
mov byte [ebp - 0x12], 0x3d
mov bl, 0x3d
mov byte [ebp - 0x11], bl
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov cl, byte [ebp - 0x14]
mov byte [eax + edx - 1], cl
inc dword [esi]
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov cl, byte [ebp - 0x13]
mov byte [eax + edx - 1], cl
inc dword [esi]
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov cl, byte [ebp - 0x12]
mov byte [eax + edx - 1], cl
inc dword [esi]
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov byte [eax + edx - 1], bl
inc dword [esi]
jmp 0x48fec0
mov eax, dword [edi]
mov edx, dword [ebp - 4]
xor ebx, ebx
mov bl, byte [edx + eax]
inc dword [edi]
shl ebx, 8
mov eax, dword [edi]
mov edx, dword [ebp - 4]
movzx eax, byte [edx + eax]
or ebx, eax
inc dword [edi]
shl ebx, 2
mov eax, ebx
and eax, 0x3f
mov al, byte [eax + 0x4d3920]
mov byte [ebp - 0x12], al
shr ebx, 6
mov eax, ebx
and eax, 0x3f
mov al, byte [eax + 0x4d3920]
mov byte [ebp - 0x13], al
shr ebx, 6
mov al, byte [ebx + 0x4d3920]
mov byte [ebp - 0x14], al
mov bl, 0x3d
mov byte [ebp - 0x11], bl
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov cl, byte [ebp - 0x14]
mov byte [eax + edx - 1], cl
inc dword [esi]
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov cl, byte [ebp - 0x13]
mov byte [eax + edx - 1], cl
inc dword [esi]
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov cl, byte [ebp - 0x12]
mov byte [eax + edx - 1], cl
inc dword [esi]
mov eax, dword [ebp + 0xc]
call fcn.00404dd8
mov edx, dword [esi]
mov byte [eax + edx - 1], bl
inc dword [esi]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8