Function at 0x47b070
Capabilities:
Encode data using base64

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx]
ja 0x47b08f
xor edi, edi
mov eax, 0x1c
call fcn.0042a440
jmp fcn.0047b070
sub esp, 0x18
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
cmp edx, 0
jne 0x47b0a7
add esp, 0x18
ret
cmp edx, 0
jle 0x47b1cf
cmp ecx, 0
jbe 0x47b227
mov byte [eax], 0
cmp ecx, 1
jbe 0x47b3c3
mov ebx, eax
inc ebx
mov byte [ebx], 0
cmp ecx, 2
jbe 0x47b3bc
mov ebx, eax
add ebx, 2
mov byte [ebx], 0
cmp ecx, 3
jbe 0x47b3b5
mov ebx, eax
add ebx, 3
mov byte [ebx], 0
cmp edx, 1
jne 0x47b27b
cmp ecx, 1
jbe 0x47b274
mov ebx, eax
inc ebx
movzx ebp, byte [ebx]
mov edi, ebp
cmp edx, 0
jbe 0x47b26d
mov ebx, dword [esp + 0x2c]
movzx ebp, byte [ebx]
mov esi, ebp
shl esi, 4
and esi, 0x3f
or esi, edi
cmp ecx, 1
jbe 0x47b266
mov ebx, eax
inc ebx
xchg esi, eax
mov byte [ebx], al
xchg esi, eax
cmp ecx, 0
jbe 0x47b25f
movzx ebp, byte [eax]
mov esi, ebp
cmp edx, 0
jbe 0x47b258
mov ebx, dword [esp + 0x2c]
movzx ebp, byte [ebx]
mov ebx, ebp
shr bl, 2
or ebx, esi
cmp ecx, 0
jbe 0x47b251
mov byte [eax], bl
xor edi, edi
cmp edi, 4
jge 0x47b1ab
cmp edi, ecx
jae 0x47b24a
lea ebp, [eax + edi]
movzx ebp, byte [ebp]
mov ebx, dword [esp + 0x1c]
cmp ebp, dword [ebx + 4]
jae 0x47b243
mov esi, dword [ebx]
lea esi, [esi + ebp]
movzx ebp, byte [esi]
mov esi, ebp
cmp edi, ecx
jae 0x47b23c
lea ebp, [eax + edi]
mov dword [esp + 0x14], ebp
mov ebx, dword [esp + 0x14]
xchg esi, eax
mov byte [ebx], al
xchg esi, eax
inc edi
cmp edi, 4
jl 0x47b168
cmp edx, 3
jge 0x47b1e1
cmp ecx, 3
jbe 0x47b1da
mov ebx, eax
add ebx, 3
mov byte [ebx], 0x3d
cmp edx, 2
jge 0x47b1cf
cmp ecx, 2
jbe 0x47b1d3
mov ebx, eax
add ebx, 2
mov byte [ebx], 0x3d
add esp, 0x18
ret
call fcn.004116c0
ud2
call fcn.004116c0
ud2
mov esi, dword [esp + 0x34]
cmp edx, 3
jb 0x47b235
mov ebx, dword [esp + 0x2c]
add ebx, 3
mov dword [esp + 0x2c], ebx
sub edx, 3
mov ebx, esi
sub ebx, 3
mov dword [esp + 0x34], ebx
mov ebp, dword [esp + 0x28]
cmp ecx, 4
jb 0x47b22e
add eax, 4
sub ecx, 4
mov ebx, ebp
sub ebx, 4
mov dword [esp + 0x28], ebx
cmp edx, 0
jle 0x47b1cf
cmp ecx, 0
ja 0x47b0b9
call fcn.004116c0
ud2
call fcn.004116f0
ud2
call fcn.004116f0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
cmp edx, 2
jne 0x47b31a
cmp ecx, 2
jbe 0x47b313
mov ebx, eax
add ebx, 2
movzx ebp, byte [ebx]
mov edi, ebp
cmp edx, 1
jbe 0x47b30c
mov ebx, dword [esp + 0x2c]
inc ebx
movzx ebp, byte [ebx]
mov esi, ebp
shl esi, 2
and esi, 0x3f
or esi, edi
cmp ecx, 2
jbe 0x47b305
mov ebx, eax
add ebx, 2
xchg esi, eax
mov byte [ebx], al
xchg esi, eax
cmp ecx, 1
jbe 0x47b2fe
mov ebx, eax
inc ebx
movzx ebp, byte [ebx]
mov esi, ebp
cmp edx, 1
jbe 0x47b2f7
mov ebx, dword [esp + 0x2c]
inc ebx
movzx ebp, byte [ebx]
mov ebx, ebp
shr bl, 4
or ebx, esi
mov esi, ebx
cmp ecx, 1
jbe 0x47b2f0
mov ebx, eax
inc ebx
xchg esi, eax
mov byte [ebx], al
xchg esi, eax
jmp 0x47b0f6
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
cmp ecx, 3
jbe 0x47b3ae
mov ebx, eax
add ebx, 3
movzx ebp, byte [ebx]
mov edi, ebp
cmp edx, 2
jbe 0x47b3a7
mov ebx, dword [esp + 0x2c]
add ebx, 2
movzx ebp, byte [ebx]
mov esi, ebp
and esi, 0x3f
or esi, edi
cmp ecx, 3
jbe 0x47b3a0
mov ebx, eax
add ebx, 3
xchg esi, eax
mov byte [ebx], al
xchg esi, eax
cmp ecx, 2
jbe 0x47b399
mov ebx, eax
add ebx, 2
movzx ebp, byte [ebx]
mov esi, ebp
cmp edx, 2
jbe 0x47b392
mov ebx, dword [esp + 0x2c]
add ebx, 2
movzx ebp, byte [ebx]
mov ebx, ebp
shr bl, 6
or ebx, esi
mov esi, ebx
cmp ecx, 2
jbe 0x47b38b
mov ebx, eax
add ebx, 2
xchg esi, eax
mov byte [ebx], al
xchg esi, eax
jmp 0x47b284
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2
call fcn.004116c0
ud2