Function at 0x100be160
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1034facb
mov eax, dword fs:[0]
push eax
sub esp, 0x30
mov eax, dword [0x103fbc90]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x3c], 0
lea ecx, [ebp - 0x28]
call fcn.1004ebf0
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 0xc]
call fcn.1007b060
add eax, 3
shr eax, 2
imul eax, eax, 3
push eax
lea ecx, [ebp - 0x28]
call fcn.100bec30
mov dword [ebp - 0x34], 0
mov ecx, dword [ebp + 0xc]
call fcn.1007b060
sub eax, dword [ebp - 0x34]
cmp eax, 3
jb 0x100be2b2
mov ecx, dword [ebp - 0x34]
push ecx
mov ecx, dword [ebp + 0xc]
call fcn.100bea70
mov dl, byte [eax]
movzx eax, dl
push eax
call fcn.100be9b0
add esp, 4
mov byte [ebp - 0x2a], al
mov ecx, dword [ebp - 0x34]
add ecx, 1
push ecx
mov ecx, dword [ebp + 0xc]
call fcn.100bea70
mov dl, byte [eax]
movzx eax, dl
push eax
call fcn.100be9b0
add esp, 4
mov byte [ebp - 0x2b], al
mov ecx, dword [ebp - 0x34]
add ecx, 2
push ecx
mov ecx, dword [ebp + 0xc]
call fcn.100bea70
mov dl, byte [eax]
movzx eax, dl
push eax
call fcn.100be9b0
add esp, 4
mov byte [ebp - 0x2c], al
movzx ecx, byte [ebp - 0x2a]
sar ecx, 2
movzx edx, byte [ecx + 0x1035d1a0]
push edx
lea ecx, [ebp - 0x28]
call fcn.10088b10
movzx eax, byte [ebp - 0x2a]
and eax, 3
shl eax, 4
movzx ecx, byte [ebp - 0x2b]
sar ecx, 4
or eax, ecx
movzx edx, byte [eax + 0x1035d1a0]
push edx
lea ecx, [ebp - 0x28]
call fcn.10088b10
movzx eax, byte [ebp - 0x2b]
and eax, 0xf
shl eax, 2
movzx ecx, byte [ebp - 0x2c]
sar ecx, 6
or eax, ecx
movzx edx, byte [eax + 0x1035d1a0]
push edx
lea ecx, [ebp - 0x28]
call fcn.10088b10
movzx eax, byte [ebp - 0x2c]
and eax, 0x3f
movzx ecx, byte [eax + 0x1035d1a0]
push ecx
lea ecx, [ebp - 0x28]
call fcn.10088b10
mov edx, dword [ebp - 0x34]
add edx, 3
mov dword [ebp - 0x34], edx
jmp 0x100be1bf
mov ecx, dword [ebp + 0xc]
call fcn.1007b060
sub eax, dword [ebp - 0x34]
mov dword [ebp - 0x38], eax
je 0x100be38b
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [ebp + 0xc]
call fcn.100bea70
mov cl, byte [eax]
movzx edx, cl
push edx
call fcn.100be9b0
add esp, 4
mov byte [ebp - 0x29], al
movzx eax, byte [ebp - 0x29]
sar eax, 2
movzx ecx, byte [eax + 0x1035d1a0]
push ecx
lea ecx, [ebp - 0x28]
call fcn.10088b10
cmp dword [ebp - 0x38], 1
jne 0x100be326
movzx edx, byte [ebp - 0x29]
and edx, 3
shl edx, 4
movzx eax, byte [edx + 0x1035d1a0]
push eax
lea ecx, [ebp - 0x28]
call fcn.10088b10
push 0x3d
lea ecx, [ebp - 0x28]
call fcn.10088b10
jmp 0x100be381
mov ecx, dword [ebp - 0x34]
add ecx, 1
push ecx
mov ecx, dword [ebp + 0xc]
call fcn.100bea70
mov dl, byte [eax]
movzx eax, dl
push eax
call fcn.100be9b0
add esp, 4
mov byte [ebp - 0x2d], al
movzx ecx, byte [ebp - 0x29]
and ecx, 3
shl ecx, 4
movzx edx, byte [ebp - 0x2d]
sar edx, 4
or ecx, edx
movzx eax, byte [ecx + 0x1035d1a0]
push eax
lea ecx, [ebp - 0x28]
call fcn.10088b10
movzx ecx, byte [ebp - 0x2d]
and ecx, 0xf
movzx edx, byte [ecx*4 + 0x1035d1a0]
push edx
lea ecx, [ebp - 0x28]
call fcn.10088b10
push 0x3d
lea ecx, [ebp - 0x28]
call fcn.10088b10
lea eax, [ebp - 0x28]
push eax
mov ecx, dword [ebp + 8]
call fcn.1004e930
mov ecx, dword [ebp - 0x3c]
or ecx, 1
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.1004e8e0
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10314cf5
mov esp, ebp
pop ebp
ret