Function at 0x536fc8
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff4
push ebx
push esi
push edi
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00405238
mov edi, eax
mov ebx, 1
xor esi, esi
cmp edi, ebx
jl 0x537020
add ebx, 1
jno 0x536ff6
call fcn.00404010
cmp edi, ebx
jl 0x537012
add ebx, 1
jno 0x537004
call fcn.00404010
cmp edi, ebx
jl 0x537012
add ebx, 1
jno 0x537012
call fcn.00404010
add esi, 4
jno 0x53701c
call fcn.00404010
cmp edi, ebx
jge 0x536fec
mov eax, dword [ebp - 8]
mov edx, esi
call fcn.004055c4
mov ebx, 1
mov esi, 1
cmp edi, ebx
jl 0x5373b6
mov eax, dword [ebp - 4]
dec ebx
test eax, eax
je 0x537049
cmp ebx, dword [eax - 4]
jb 0x53704e
call fcn.00404008
inc ebx
mov al, byte [eax + ebx - 1]
mov byte [ebp - 9], al
add ebx, 1
jno 0x537060
call fcn.00404010
cmp edi, ebx
jl 0x5372d7
mov eax, dword [ebp - 4]
dec ebx
test eax, eax
je 0x537075
cmp ebx, dword [eax - 4]
jb 0x53707a
call fcn.00404008
inc ebx
mov al, byte [eax + ebx - 1]
mov byte [ebp - 0xa], al
add ebx, 1
jno 0x53708c
call fcn.00404010
cmp edi, ebx
jl 0x5371db
mov eax, dword [ebp - 4]
dec ebx
test eax, eax
je 0x5370a1
cmp ebx, dword [eax - 4]
jb 0x5370a6
call fcn.00404008
inc ebx
mov al, byte [eax + ebx - 1]
mov byte [ebp - 0xb], al
add ebx, 1
jno 0x5370b8
call fcn.00404010
mov eax, dword [ebp - 8]
call fcn.00405490
dec esi
test eax, eax
je 0x5370ca
cmp esi, dword [eax - 4]
jb 0x5370cf
call fcn.00404008
inc esi
xor edx, edx
mov dl, byte [ebp - 9]
shr edx, 2
cmp edx, 0x3f
jbe 0x5370e2
call fcn.00404008
mov dl, byte [edx + 0x6251a0]
mov byte [eax + esi - 1], dl
mov eax, dword [ebp - 8]
call fcn.00405490
mov edx, esi
add edx, 1
jno 0x537100
call fcn.00404010
dec edx
test eax, eax
je 0x53710a
cmp edx, dword [eax - 4]
jb 0x53710f
call fcn.00404008
inc edx
lea eax, [eax + edx - 1]
push eax
mov al, byte [ebp - 9]
and al, 3
and eax, 0xff
shl eax, 4
xor edx, edx
mov dl, byte [ebp - 0xa]
shr edx, 4
or eax, edx
cmp eax, 0x3f
jbe 0x537136
call fcn.00404008
mov al, byte [eax + 0x6251a0]
pop edx
mov byte [edx], al
mov eax, dword [ebp - 8]
call fcn.00405490
mov edx, esi
add edx, 2
jno 0x537153
call fcn.00404010
dec edx
test eax, eax
je 0x53715d
cmp edx, dword [eax - 4]
jb 0x537162
call fcn.00404008
inc edx
lea eax, [eax + edx - 1]
push eax
mov al, byte [ebp - 0xa]
and al, 0xf
and eax, 0xff
shl eax, 2
xor edx, edx
mov dl, byte [ebp - 0xb]
shr edx, 6
or eax, edx
cmp eax, 0x3f
jbe 0x537189
call fcn.00404008
mov al, byte [eax + 0x6251a0]
pop edx
mov byte [edx], al
mov eax, dword [ebp - 8]
call fcn.00405490
mov edx, esi
add edx, 3
jno 0x5371a6
call fcn.00404010
dec edx
test eax, eax
je 0x5371b0
cmp edx, dword [eax - 4]
jb 0x5371b5
call fcn.00404008
inc edx
mov cl, byte [ebp - 0xb]
and cl, 0x3f
and ecx, 0xff
cmp ecx, 0x3f
jbe 0x5371cc
call fcn.00404008
mov cl, byte [ecx + 0x6251a0]
mov byte [eax + edx - 1], cl
jmp 0x5373a4
mov eax, dword [ebp - 8]
call fcn.00405490
dec esi
test eax, eax
je 0x5371ed
cmp esi, dword [eax - 4]
jb 0x5371f2
call fcn.00404008
inc esi
xor edx, edx
mov dl, byte [ebp - 9]
shr edx, 2
cmp edx, 0x3f
jbe 0x537205
call fcn.00404008
mov dl, byte [edx + 0x6251a0]
mov byte [eax + esi - 1], dl
mov eax, dword [ebp - 8]
call fcn.00405490
mov edx, esi
add edx, 1
jno 0x537223
call fcn.00404010
dec edx
test eax, eax
je 0x53722d
cmp edx, dword [eax - 4]
jb 0x537232
call fcn.00404008
inc edx
lea eax, [eax + edx - 1]
push eax
mov al, byte [ebp - 9]
and al, 3
and eax, 0xff
shl eax, 4
xor edx, edx
mov dl, byte [ebp - 0xa]
shr edx, 4
or eax, edx
cmp eax, 0x3f
jbe 0x537259
call fcn.00404008
mov al, byte [eax + 0x6251a0]
pop edx
mov byte [edx], al
mov eax, dword [ebp - 8]
call fcn.00405490
mov edx, esi
add edx, 2
jno 0x537276
call fcn.00404010
dec edx
test eax, eax
je 0x537280
cmp edx, dword [eax - 4]
jb 0x537285
call fcn.00404008
inc edx
mov cl, byte [ebp - 0xa]
and cl, 0xf
and ecx, 0xff
shl ecx, 2
cmp ecx, 0x3f
jbe 0x53729f
call fcn.00404008
mov cl, byte [ecx + 0x6251a0]
mov byte [eax + edx - 1], cl
mov eax, dword [ebp - 8]
call fcn.00405490
mov edx, esi
add edx, 3
jno 0x5372bd
call fcn.00404010
dec edx
test eax, eax
je 0x5372c7
cmp edx, dword [eax - 4]
jb 0x5372cc
call fcn.00404008
inc edx
mov byte [eax + edx - 1], 0x3d
jmp 0x5373a4
mov eax, dword [ebp - 8]
call fcn.00405490
dec esi
test eax, eax
je 0x5372e9
cmp esi, dword [eax - 4]
jb 0x5372ee
call fcn.00404008
inc esi
xor edx, edx
mov dl, byte [ebp - 9]
shr edx, 2
cmp edx, 0x3f
jbe 0x537301
call fcn.00404008
mov dl, byte [edx + 0x6251a0]
mov byte [eax + esi - 1], dl
mov eax, dword [ebp - 8]
call fcn.00405490
mov edx, esi
add edx, 1
jno 0x53731f
call fcn.00404010
dec edx
test eax, eax
je 0x537329
cmp edx, dword [eax - 4]
jb 0x53732e
call fcn.00404008
inc edx
mov cl, byte [ebp - 9]
and cl, 3
and ecx, 0xff
shl ecx, 4
cmp ecx, 0x3f
jbe 0x537348
call fcn.00404008
mov cl, byte [ecx + 0x6251a0]
mov byte [eax + edx - 1], cl
mov eax, dword [ebp - 8]
call fcn.00405490
mov edx, esi
add edx, 2
jno 0x537366
call fcn.00404010
dec edx
test eax, eax
je 0x537370
cmp edx, dword [eax - 4]
jb 0x537375
call fcn.00404008
inc edx
mov byte [eax + edx - 1], 0x3d
mov eax, dword [ebp - 8]
call fcn.00405490
mov edx, esi
add edx, 3
jno 0x53738f
call fcn.00404010
dec edx
test eax, eax
je 0x537399
cmp edx, dword [eax - 4]
jb 0x53739e
call fcn.00404008
inc edx
mov byte [eax + edx - 1], 0x3d
add esi, 4
jno 0x5373ae
call fcn.00404010
cmp edi, ebx
jge 0x53703c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret