Function at 0x449f70
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x124
mov eax, dword [0x676664]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x14]
push esi
mov esi, dword [ebp + 0xc]
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x120], edi
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], ecx
test esi, esi
je 0x44a211
test edi, edi
je 0x44a211
lea edx, [esi*4 + 8]
mov eax, 0xaaaaaaab
mul edx
push ebx
mov ebx, edx
shr ebx, 1
xor edx, edx
lea eax, [ebx + ebx]
div esi
lea eax, [ebx + eax + 3]
push eax
call fcn.00443d40
test al, al
je 0x44a1fe
mov eax, 0xaaaaaaab
mul esi
xor ecx, ecx
mov esi, edx
xor ebx, ebx
shr esi, 1
mov dword [ebp - 0x11c], ecx
mov dword [ebp - 0x124], esi
je 0x44a10e
jmp 0x44a01c
mov ebx, dword [ebp - 0x118]
mov edi, dword [ebp - 0x120]
movsx eax, byte [edi + ebx]
movsx esi, byte [edi + ebx + 1]
movsx edi, byte [edi + ebx + 2]
mov edx, dword [ebp - 0x114]
add ebx, 3
and eax, 0xff
mov dword [ebp - 0x118], ebx
mov ebx, eax
shr ebx, 2
and ebx, 0x3f
mov bl, byte [ebx + edx]
mov byte [ebp + ecx - 0x10c], bl
and esi, 0xff
and eax, 3
mov ebx, esi
shl eax, 4
shr ebx, 4
and ebx, 0xf
or ebx, eax
movzx eax, byte [ebx + edx]
mov byte [ebp + ecx - 0x10b], al
and edi, 0xff
and esi, 0xf
mov eax, edi
shr eax, 6
add esi, esi
and eax, 3
add esi, esi
or eax, esi
movzx eax, byte [eax + edx]
and edi, 0x3f
mov dl, byte [edi + edx]
mov byte [ebp + ecx - 0x10a], al
mov byte [ebp + ecx - 0x109], dl
add ecx, 4
cmp ecx, 0x100
jl 0x44a0c8
push ecx
mov ecx, dword [ebp - 0x110]
lea eax, [ebp - 0x10c]
push eax
call fcn.004441e0
test al, al
je 0x44a1fe
xor ecx, ecx
mov eax, dword [ebp - 0x11c]
mov esi, dword [ebp - 0x124]
inc eax
mov dword [ebp - 0x11c], eax
cmp eax, esi
jb 0x44a010
test ecx, ecx
je 0x44a102
push ecx
lea ecx, [ebp - 0x10c]
push ecx
mov ecx, dword [ebp - 0x110]
call fcn.004441e0
test al, al
je 0x44a1fe
mov ebx, dword [ebp - 0x118]
mov edi, dword [ebp - 0x120]
mov ecx, dword [ebp + 0xc]
lea edx, [esi + esi*2]
sub ecx, edx
dec ecx
mov al, 1
je 0x44a194
dec ecx
jne 0x44a1ed
movzx esi, byte [edi + ebx]
mov ecx, dword [ebp - 0x114]
movzx edi, byte [edi + ebx + 1]
mov ebx, dword [ebp - 0x110]
mov eax, esi
sar eax, 2
and eax, 0x3f
movzx edx, byte [eax + ecx]
push edx
mov ecx, ebx
call fcn.00446e90
test al, al
je 0x44a1fe
mov eax, edi
sar eax, 4
and esi, 3
and eax, 0xf
shl esi, 4
or eax, esi
mov esi, dword [ebp - 0x114]
movzx ecx, byte [eax + esi]
push ecx
mov ecx, ebx
call fcn.00446e90
test al, al
je 0x44a1fe
and edi, 0xf
movzx edx, byte [esi + edi*4]
push edx
mov ecx, ebx
call fcn.00446e90
test al, al
je 0x44a1fe
mov ecx, ebx
jmp 0x44a1e0
movzx esi, byte [edi + ebx]
mov ebx, dword [ebp - 0x114]
mov edi, dword [ebp - 0x110]
mov eax, esi
sar eax, 2
and eax, 0x3f
movzx ecx, byte [eax + ebx]
push ecx
mov ecx, edi
call fcn.00446e90
test al, al
je 0x44a1fe
and esi, 3
add esi, esi
movzx edx, byte [ebx + esi*8]
push edx
mov ecx, edi
call fcn.00446e90
test al, al
je 0x44a1fe
push 0x3d
mov ecx, edi
call fcn.00446e90
test al, al
je 0x44a1fe
mov ecx, edi
push 0x3d
call fcn.00446e90
test al, al
je 0x44a1fe
mov al, 1
pop ebx
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0059af98
mov esp, ebp
pop ebp
ret
pop ebx
pop edi
xor al, al
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0059af98
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
mov al, 1
pop esi
call fcn.0059af98
mov esp, ebp
pop ebp
ret