Function at 0x42a310
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x74
mov eax, dword [0x5f0a00]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x18]
push esi
mov esi, dword [ebp + 8]
push edi
push dword [ecx + edx*8 + 4]
mov dword [ebp - 0x64], ecx
push dword [ecx + edx*8]
mov dword [ebp - 0x68], eax
mov ecx, esi
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x60], esi
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x6c], eax
call fcn.0042a550
mov edi, dword [esi]
mov eax, dword [edi + 0xc]
sub eax, dword [edi + 4]
inc eax
cmp eax, dword [edi + 0x18]
jbe 0x42a364
push eax
mov ecx, edi
call fcn.00429670
mov eax, dword [edi + 0xc]
push ebx
mov byte [ebp - 5], 0
mov byte [eax], 0x3a
mov eax, dword [ebp + 0x14]
inc dword [edi + 0xc]
mov ebx, dword [eax]
mov ecx, dword [eax + 4]
mov eax, ebx
or eax, ecx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ecx
jne 0x42a392
mov byte [ebp - 6], 0x30
lea ebx, [eax + 0x3d]
jmp 0x42a426
mov esi, 0x3e
mov eax, ebx
mov edx, 0xcccccccd
mul edx
mov eax, ebx
mov edi, edx
mov edx, 0xcccccccc
mul edx
mov ebx, eax
mov dword [ebp - 0x5c], edx
mov eax, ecx
mov ecx, 0xcccccccd
mul ecx
mov ecx, eax
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x48]
mov edx, 0xcccccccc
mul edx
add ecx, edi
mov dword [ebp - 0x48], edx
mov edx, dword [ebp - 0x70]
adc edx, 0
mov dword [ebp - 0x54], eax
add ebx, ecx
mov ecx, dword [ebp - 0x5c]
mov ebx, dword [ebp - 0x54]
adc ecx, 0
xor eax, eax
add edx, ecx
adc eax, eax
add ebx, edx
mov edx, dword [ebp - 0x48]
adc edx, eax
shrd ebx, edx, 3
mov al, bl
shr edx, 3
shl al, 2
mov dword [ebp - 0x48], edx
lea ecx, [eax + ebx]
mov eax, dword [ebp - 0x4c]
add cl, cl
mov dword [ebp - 0x4c], ebx
sub al, cl
mov ecx, edx
add al, 0x30
mov byte [ebp + esi - 0x44], al
mov eax, ebx
dec esi
or eax, edx
jne 0x42a397
mov dword [ebp - 0x54], esi
mov esi, dword [ebp - 0x60]
mov ebx, dword [ebp - 0x54]
mov edi, dword [esi]
inc ebx
mov eax, 0x3f
sub eax, ebx
mov dword [ebp - 0x4c], eax
sub eax, dword [edi + 4]
add eax, dword [edi + 0xc]
cmp eax, dword [edi + 0x18]
jbe 0x42a446
push eax
mov ecx, edi
call fcn.00429670
push dword [ebp - 0x4c]
lea eax, [ebp - 0x44]
add eax, ebx
push eax
push dword [edi + 0xc]
call fcn.005577f0
mov eax, dword [ebp - 0x4c]
add esp, 0xc
add dword [edi + 0xc], eax
mov edi, dword [esi]
mov eax, dword [edi + 0xc]
sub eax, dword [edi + 4]
inc eax
cmp eax, dword [edi + 0x18]
jbe 0x42a476
push eax
mov ecx, edi
call fcn.00429670
mov eax, dword [edi + 0xc]
mov ecx, esi
mov ebx, dword [ebp - 0x64]
mov byte [eax], 0x2c
mov eax, dword [ebp - 0x50]
inc dword [edi + 0xc]
push dword [ebx + eax*8 + 0xc]
push dword [ebx + eax*8 + 8]
call fcn.0042a550
mov edi, dword [esi]
mov eax, dword [edi + 0xc]
sub eax, dword [edi + 4]
inc eax
cmp eax, dword [edi + 0x18]
jbe 0x42a4aa
push eax
mov ecx, edi
call fcn.00429670
mov eax, dword [edi + 0xc]
mov byte [eax], 0x3a
mov eax, dword [ebp - 0x68]
inc dword [edi + 0xc]
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x42a4c1
mov eax, dword [eax]
push ecx
push eax
mov ecx, esi
call fcn.0042a550
mov edi, dword [esi]
mov eax, dword [edi + 0xc]
sub eax, dword [edi + 4]
inc eax
cmp eax, dword [edi + 0x18]
jbe 0x42a4e0
push eax
mov ecx, edi
call fcn.00429670
mov eax, dword [edi + 0xc]
mov ecx, esi
mov byte [eax], 0x2c
mov eax, dword [ebp - 0x50]
inc dword [edi + 0xc]
push dword [ebx + eax*8 + 0x14]
push dword [ebx + eax*8 + 0x10]
call fcn.0042a550
mov edi, dword [esi]
pop ebx
mov eax, dword [edi + 0xc]
sub eax, dword [edi + 4]
inc eax
cmp eax, dword [edi + 0x18]
jbe 0x42a512
push eax
mov ecx, edi
call fcn.00429670
mov eax, dword [edi + 0xc]
mov byte [eax], 0x3a
mov eax, dword [ebp - 0x6c]
inc dword [edi + 0xc]
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x42a529
mov eax, dword [eax]
push ecx
push eax
mov ecx, esi
call fcn.0042a550
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.00551e44
mov esp, ebp
pop ebp
ret