Function at 0x4af6c0
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x124
mov eax, dword [0x717f80]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 0x14]
push esi
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x120], ecx
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x124], ebx
test esi, esi
je 0x4af956
test ecx, ecx
je 0x4af956
lea ecx, [esi*4 + 8]
mov eax, 0xaaaaaaab
mul ecx
push edi
mov ecx, edx
xor edx, edx
shr ecx, 1
lea eax, [ecx + ecx]
add ecx, 3
div esi
add eax, ecx
mov ecx, ebx
push eax
call fcn.00498ac0
test al, al
je 0x4af943
mov eax, 0xaaaaaaab
xor ecx, ecx
mul esi
xor edi, edi
mov dword [ebp - 0x114], ecx
mov eax, edx
mov dword [ebp - 0x110], ecx
shr eax, 1
mov dword [ebp - 0x11c], eax
je 0x4af84b
nop dword [eax]
mov eax, dword [ebp - 0x114]
mov ebx, dword [ebp - 0x120]
movsx ecx, byte [ebx + eax]
movsx edx, byte [ebx + eax + 1]
movsx esi, byte [ebx + eax + 2]
add eax, 3
mov ebx, dword [ebp - 0x118]
mov dword [ebp - 0x114], eax
mov eax, ecx
shr eax, 2
and ecx, 3
and eax, 0x3f
shl ecx, 4
mov al, byte [eax + ebx]
mov byte [ebp + edi - 0x10c], al
mov eax, edx
shr eax, 4
and edx, 0xf
and eax, 0xf
shl edx, 2
or eax, ecx
mov ecx, ebx
mov ebx, dword [ebp - 0x124]
mov al, byte [eax + ecx]
mov byte [ebp + edi - 0x10b], al
mov eax, esi
shr eax, 6
and esi, 0x3f
and eax, 3
or eax, edx
mov al, byte [eax + ecx]
mov byte [ebp + edi - 0x10a], al
mov al, byte [esi + ecx]
mov byte [ebp + edi - 0x109], al
add edi, 4
cmp edi, 0x100
jl 0x4af808
push edi
lea eax, [ebp - 0x10c]
mov ecx, ebx
push eax
call fcn.00495ba0
test al, al
je 0x4af943
xor edi, edi
mov eax, dword [ebp - 0x110]
inc eax
mov dword [ebp - 0x110], eax
cmp eax, dword [ebp - 0x11c]
jb 0x4af760
test edi, edi
je 0x4af83c
push edi
lea eax, [ebp - 0x10c]
mov ecx, ebx
push eax
call fcn.00495ba0
test al, al
je 0x4af943
mov eax, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x114]
mov esi, dword [ebp + 0xc]
lea eax, [eax + eax*2]
mov dl, 1
sub esi, eax
sub esi, 1
je 0x4af8c5
sub esi, 1
jne 0x4af930
mov eax, dword [ebp - 0x120]
mov esi, dword [ebp - 0x118]
movzx edi, byte [eax + ecx]
movzx eax, byte [eax + ecx + 1]
mov ecx, ebx
mov dword [ebp - 0x110], eax
mov eax, edi
shr eax, 2
movzx eax, byte [eax + esi]
push eax
call fcn.004952a0
test al, al
je 0x4af92e
mov eax, dword [ebp - 0x110]
and edi, 3
shr eax, 4
mov ecx, ebx
shl edi, 4
or eax, edi
movzx eax, byte [eax + esi]
push eax
call fcn.004952a0
test al, al
je 0x4af92e
mov eax, dword [ebp - 0x110]
and eax, 0xf
movzx eax, byte [esi + eax*4]
push eax
jmp 0x4af901
mov eax, dword [ebp - 0x120]
mov esi, dword [ebp - 0x118]
movzx edi, byte [eax + ecx]
mov ecx, ebx
mov eax, edi
shr eax, 2
movzx eax, byte [eax + esi]
push eax
call fcn.004952a0
test al, al
je 0x4af92e
and edi, 3
mov ecx, ebx
add edi, edi
movzx eax, byte [esi + edi*8]
push eax
call fcn.004952a0
test al, al
je 0x4af92e
push 0x3d
mov ecx, ebx
call fcn.004952a0
test al, al
je 0x4af92e
push 0x3d
mov ecx, ebx
call fcn.004952a0
test al, al
je 0x4af92e
pop edi
mov dl, 1
pop esi
mov al, dl
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00622073
mov esp, ebp
pop ebp
ret
xor dl, dl
pop edi
pop esi
mov al, dl
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00622073
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor al, al
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00622073
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov al, 1
pop esi
xor ecx, ebp
pop ebx
call fcn.00622073
mov esp, ebp
pop ebp
ret