Function at 0x4b6820
Capabilities:
Encode data using base64

Disassembly:
sub esp, 0x120
mov eax, dword [0x78f694]
xor eax, esp
mov dword [esp + 0x11c], eax
push ebx
mov ebx, dword [esp + 0x128]
push ebp
mov ebp, dword [esp + 0x130]
push esi
mov esi, dword [ecx + 4]
mov dword [esp + 0x1c], ecx
lea ecx, [ebp*4 + 8]
mov eax, 0xaaaaaaab
mul ecx
mov ecx, edx
push edi
mov edi, dword [esp + 0x13c]
shr ecx, 1
test esi, esi
mov dword [esp + 0x10], edi
je 0x4b687b
lea eax, [ecx + ecx]
xor edx, edx
div esi
lea ecx, [ecx + eax + 3]
jmp 0x4b687e
add ecx, 3
push ecx
mov ecx, edi
call fcn.00485140
test al, al
jne 0x4b6891
xor al, al
jmp 0x4b6aaa
test ebp, ebp
je 0x4b6aa8
test ebx, ebx
je 0x4b6aa8
mov eax, 0xaaaaaaab
mul ebp
xor ecx, ecx
xor esi, esi
shr edx, 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], edx
je 0x4b69c7
movzx eax, byte [ebx + esi]
movzx edi, byte [ebx + esi + 1]
mov edx, eax
sar edx, 2
and edx, 0x3f
movzx edx, byte [edx + 0x6d86b0]
mov byte [esp + ecx + 0x24], dl
add esi, 1
movzx ebp, byte [ebx + esi + 1]
mov edx, edi
sar edx, 4
and edx, 0xf
and eax, 3
shl eax, 4
or edx, eax
movzx eax, byte [edx + 0x6d86b0]
add esi, 1
and edi, 0xf
mov edx, ebp
sar edx, 6
mov byte [esp + ecx + 0x25], al
add ecx, 1
and edx, 3
add edi, edi
add edi, edi
or edx, edi
movzx eax, byte [edx + 0x6d86b0]
add ecx, 1
mov byte [esp + ecx + 0x24], al
mov eax, dword [esp + 0x18]
and ebp, 0x3f
movzx edx, byte [ebp + 0x6d86b0]
add ecx, 1
mov byte [esp + ecx + 0x24], dl
mov edx, dword [esp + 0x20]
add eax, 4
add esi, 1
add ecx, 1
cmp eax, dword [edx + 4]
mov dword [esp + 0x18], eax
jb 0x4b6967
mov byte [esp + ecx + 0x24], 0xd
add ecx, 1
mov byte [esp + ecx + 0x24], 0xa
add ecx, 1
mov dword [esp + 0x18], 0
cmp ecx, 0x100
jl 0x4b6988
push ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x28]
push eax
call fcn.004854b0
test al, al
je 0x4b688a
xor ecx, ecx
mov eax, dword [esp + 0x1c]
add eax, 1
cmp eax, dword [esp + 0x14]
mov dword [esp + 0x1c], eax
jb 0x4b68c0
test ecx, ecx
je 0x4b69b8
push ecx
lea ecx, [esp + 0x28]
push ecx
mov ecx, dword [esp + 0x18]
call fcn.004854b0
test al, al
je 0x4b688a
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x138]
lea edx, [edx + edx*2]
sub ebp, edx
sub ebp, 0
mov al, 1
je 0x4b6a90
sub ebp, 1
je 0x4b6a3e
sub ebp, 1
jne 0x4b6aaa
movzx ebp, byte [ebx + esi]
movzx esi, byte [ebx + esi + 1]
mov eax, ebp
sar eax, 2
and eax, 0x3f
movzx ecx, byte [eax + 0x6d86b0]
push ecx
mov ecx, edi
call fcn.00487e40
test al, al
je 0x4b6aaa
mov edx, esi
sar edx, 4
and ebp, 3
and edx, 0xf
shl ebp, 4
or edx, ebp
movzx eax, byte [edx + 0x6d86b0]
push eax
mov ecx, edi
call fcn.00487e40
test al, al
je 0x4b6aaa
and esi, 0xf
movzx ecx, byte [esi*4 + 0x6d86b0]
push ecx
jmp 0x4b6a78
movzx esi, byte [ebx + esi]
mov edx, esi
sar edx, 2
and edx, 0x3f
movzx eax, byte [edx + 0x6d86b0]
push eax
mov ecx, edi
call fcn.00487e40
test al, al
je 0x4b6aaa
and esi, 3
shl esi, 4
movzx ecx, byte [esi + 0x6d86b0]
push ecx
mov ecx, edi
call fcn.00487e40
test al, al
je 0x4b6aaa
push 0x3d
mov ecx, edi
call fcn.00487e40
test al, al
je 0x4b6aaa
push 0x3d
mov ecx, edi
call fcn.00487e40
test al, al
je 0x4b6aaa
push 0xd
mov ecx, edi
call fcn.00487e40
test al, al
je 0x4b6aaa
push 0xa
mov ecx, edi
call fcn.00487e40
jmp 0x4b6aaa
mov al, 1
mov ecx, dword [esp + 0x12c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0062cbd3
add esp, 0x120
ret 0xc