Function at 0x442cfc
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffe0
push ebx
push esi
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov byte [ebp - 1], al
mov eax, dword [ebp - 0xc]
shl eax, 2
mov ecx, 3
cdq
idiv ecx
mov edx, eax
add edx, 4
mov eax, dword [ebp + 8]
call fcn.004de6d8
mov eax, dword [ebp + 8]
call fcn.004de574
mov edx, 1
dec edx
cmp edx, dword [eax - 4]
jb 0x442d40
call fcn.004dd5b4
inc edx
lea eax, [eax + edx - 1]
push eax
mov eax, dword [ebp - 0xc]
shl eax, 2
mov ecx, 3
cdq
idiv ecx
mov edx, eax
add edx, 2
xor ecx, ecx
pop eax
call fcn.004dd2c8
cmp byte [ebp - 1], 0
jne 0x442da2
mov eax, dword [ebp + 8]
call fcn.004de574
mov edx, 1
dec edx
cmp edx, dword [eax - 4]
jb 0x442d7f
call fcn.004dd5b4
inc edx
mov cl, byte [ebp - 0xc]
dec ecx
and cl, 0x3f
add cl, 0x21
mov byte [eax + edx - 1], cl
mov eax, dword [ebp - 0xc]
add eax, 2
mov ecx, 3
cdq
idiv ecx
lea eax, [eax + eax*2]
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], 2
xor eax, eax
mov dword [ebp - 0x14], eax
xor eax, eax
mov dword [ebp - 0x18], eax
mov al, byte [ebp - 1]
sub al, 1
jb 0x442dc0
sub al, 2
jb 0x442dc9
jmp 0x442dd0
mov dword [ebp - 0x18], 2
jmp 0x442dd0
mov dword [ebp - 0x18], 1
mov eax, dword [ebp + 8]
call fcn.004de574
mov edx, dword [ebp - 0x18]
dec edx
cmp edx, dword [eax - 4]
jb 0x442de6
call fcn.004dd5b4
inc edx
mov byte [eax + edx - 1], 0
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0xc]
jge 0x442f56
cmp dword [ebp - 0x10], 0
jle 0x442e74
mov eax, dword [ebp + 8]
call fcn.004de574
mov edx, dword [ebp - 0x18]
dec edx
cmp edx, dword [eax - 4]
jb 0x442e14
call fcn.004dd5b4
inc edx
mov ecx, dword [ebp - 0x10]
mov ebx, 0x3f
shl ebx, cl
mov ecx, dword [ebp - 8]
mov esi, dword [ebp - 0x14]
movzx ecx, byte [ecx + esi]
and ebx, ecx
mov ecx, dword [ebp - 0x10]
shr ebx, cl
mov ecx, dword [ebp - 0x18]
mov esi, dword [ebp + 8]
mov esi, dword [esi]
dec ecx
cmp ecx, dword [esi - 4]
jb 0x442e43
call fcn.004dd5b4
inc ecx
or bl, byte [esi + ecx - 1]
mov byte [eax + edx - 1], bl
sub dword [ebp - 0x10], 6
inc dword [ebp - 0x18]
mov eax, dword [ebp + 8]
call fcn.004de574
mov edx, dword [ebp - 0x18]
dec edx
cmp edx, dword [eax - 4]
jb 0x442e69
call fcn.004dd5b4
inc edx
mov byte [eax + edx - 1], 0
jmp 0x442f4a
cmp dword [ebp - 0x10], 0
jge 0x442ee0
mov eax, dword [ebp - 0x10]
cdq
xor eax, edx
sub eax, edx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 8]
call fcn.004de574
mov edx, dword [ebp - 0x18]
dec edx
cmp edx, dword [eax - 4]
jb 0x442e9b
call fcn.004dd5b4
inc edx
mov ecx, dword [ebp - 0x10]
mov ebx, 0x3f
shr ebx, cl
mov ecx, dword [ebp - 8]
mov esi, dword [ebp - 0x14]
and bl, byte [ecx + esi]
mov ecx, dword [ebp - 0x10]
shl bl, cl
mov ecx, dword [ebp - 0x18]
mov esi, dword [ebp + 8]
mov esi, dword [esi]
dec ecx
cmp ecx, dword [esi - 4]
jb 0x442ec7
call fcn.004dd5b4
inc ecx
or bl, byte [esi + ecx - 1]
mov byte [eax + edx - 1], bl
mov eax, 8
sub eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
inc dword [ebp - 0x14]
jmp 0x442f4a
mov eax, dword [ebp + 8]
call fcn.004de574
mov edx, dword [ebp - 0x18]
dec edx
cmp edx, dword [eax - 4]
jb 0x442ef6
call fcn.004dd5b4
inc edx
mov ecx, dword [ebp - 0x18]
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
dec ecx
cmp ecx, dword [ebx - 4]
jb 0x442f0a
call fcn.004dd5b4
inc ecx
mov cl, byte [ebx + ecx - 1]
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x14]
mov bl, byte [ebx + esi]
and bl, 0x3f
or cl, bl
mov byte [eax + edx - 1], cl
inc dword [ebp - 0x18]
inc dword [ebp - 0x14]
mov eax, dword [ebp + 8]
call fcn.004de574
mov edx, dword [ebp - 0x18]
dec edx
cmp edx, dword [eax - 4]
jb 0x442f3d
call fcn.004dd5b4
inc edx
mov byte [eax + edx - 1], 0
mov dword [ebp - 0x10], 2
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0xc]
jl 0x442df8
mov al, byte [ebp - 1]
sub al, 1
jb 0x442f66
sub al, 2
jb 0x442fde
jmp 0x443072
cmp dword [ebp - 0x10], 2
jne 0x442f6f
dec dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
sub eax, 2
jl 0x443072
inc eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], 2
mov eax, dword [ebp + 8]
call fcn.004de574
mov edx, dword [ebp - 0x1c]
dec edx
cmp edx, dword [eax - 4]
jb 0x442f9c
call fcn.004dd5b4
inc edx
mov ecx, dword [ebp - 0x1c]
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
dec ecx
cmp ecx, dword [ebx - 4]
jb 0x442fb0
call fcn.004dd5b4
inc ecx
movzx ecx, byte [ebx + ecx - 1]
inc ecx
mov ebx, dword [0x506520]
dec ecx
cmp ecx, dword [ebx - 4]
jb 0x442fc8
call fcn.004dd5b4
inc ecx
mov cl, byte [ebx + ecx - 1]
mov byte [eax + edx - 1], cl
inc dword [ebp - 0x1c]
dec dword [ebp - 0x20]
jne 0x442f86
jmp 0x443072
cmp dword [ebp - 0x10], 2
jne 0x442fe7
dec dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
test eax, eax
jle 0x44306c
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], 1
mov eax, dword [ebp + 8]
call fcn.004de574
mov edx, dword [ebp - 0x1c]
dec edx
cmp edx, dword [eax - 4]
jb 0x44300e
call fcn.004dd5b4
inc edx
mov ecx, dword [ebp - 0x1c]
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
dec ecx
cmp ecx, dword [ebx - 4]
jb 0x443022
call fcn.004dd5b4
inc ecx
movzx ecx, byte [ebx + ecx - 1]
inc ecx
mov ebx, dword [0x506524]
dec ecx
cmp ecx, dword [ebx - 4]
jb 0x44303a
call fcn.004dd5b4
inc ecx
mov cl, byte [ebx + ecx - 1]
mov byte [eax + edx - 1], cl
inc dword [ebp - 0x1c]
dec dword [ebp - 0x20]
jne 0x442ff8
jmp 0x44306c
inc dword [ebp - 0x18]
mov eax, dword [ebp + 8]
call fcn.004de574
mov edx, dword [ebp - 0x18]
dec edx
cmp edx, dword [eax - 4]
jb 0x443066
call fcn.004dd5b4
inc edx
mov byte [eax + edx - 1], 0x3d
test byte [ebp - 0x18], 3
jne 0x44304d
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x18]
call fcn.004de6d8
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4