Function at 0x419440
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4711dd
mov eax, dword fs:[0]
push eax
sub esp, 0x24
push ebx
push esi
push edi
mov eax, dword [0x4d100c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 4], 0
mov ebx, dword [ebp + 0x18]
mov dword [ebp - 0x2c], ebx
test bl, 3
je 0x4194bc
nop word [eax + eax]
mov ecx, dword [ebp + 0x1c]
cmp ebx, ecx
jae 0x41949f
lea eax, [ebx + 1]
cmp ecx, 0x10
mov dword [ebp + 0x18], eax
lea eax, [ebp + 8]
cmovae eax, dword [ebp + 8]
mov word [eax + ebx], 0x3d
jmp 0x4194b1
push 0x3d
mov byte [ebp - 0x2c], 0
push dword [ebp - 0x2c]
push ecx
lea ecx, [ebp + 8]
call fcn.004211f0
mov ebx, dword [ebp + 0x18]
test bl, 3
jne 0x419480
mov dword [ebp - 0x2c], ebx
cmp dword [ebp + 0x1c], 0x10
lea esi, [ebp + 8]
push 0xc
cmovae esi, dword [ebp + 8]
call fcn.004511c8
mov ecx, ebx
mov dword [ebp - 0x1c], 0
shr ecx, 2
mov edi, eax
add esp, 4
mov dword [ebp - 0x14], edi
lea ecx, [ecx + ecx*2]
mov dword [edi], 0
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov dword [ebp - 0x24], ecx
test ecx, ecx
je 0x419509
push ecx
push ecx
mov ecx, edi
call fcn.004221c0
mov eax, dword [edi]
test ebx, ebx
je 0x4196eb
lea ecx, [ebx - 4]
mov dword [ebp - 0x30], ecx
lea ecx, [eax + 2]
mov dword [ebp - 0x20], ecx
lea eax, [esi + 2]
mov ecx, 0xfffffffe
mov dword [ebp - 0x18], eax
sub ecx, esi
mov esi, 0x3f
mov dword [ebp - 0x28], ecx
mov dl, byte [eax - 2]
xor ecx, ecx
mov bl, byte [eax - 1]
mov bh, byte [eax]
mov ah, byte [eax + 1]
mov al, dl
sub al, 0x41
mov byte [ebp - 0xd], ah
cmp al, 0x19
ja 0x419554
movsx ecx, dl
sub ecx, 0x41
jmp 0x419586
mov al, dl
sub al, 0x61
cmp al, 0x19
ja 0x419564
movsx ecx, dl
sub ecx, 0x47
jmp 0x419586
mov al, dl
sub al, 0x30
cmp al, 9
ja 0x419574
movsx ecx, dl
add ecx, 4
jmp 0x419586
cmp dl, 0x2b
jne 0x419580
mov ecx, 0x3e
jmp 0x419586
cmp dl, 0x2f
cmove ecx, esi
mov al, bl
xor edi, edi
sub al, 0x41
cmp al, 0x19
ja 0x419598
movsx edi, bl
sub edi, 0x41
jmp 0x4195ca
mov al, bl
sub al, 0x61
cmp al, 0x19
ja 0x4195a8
movsx edi, bl
sub edi, 0x47
jmp 0x4195ca
mov al, bl
sub al, 0x30
cmp al, 9
ja 0x4195b8
movsx edi, bl
add edi, 4
jmp 0x4195ca
cmp bl, 0x2b
jne 0x4195c4
mov edi, 0x3e
jmp 0x4195ca
cmp bl, 0x2f
cmove edi, esi
mov al, bh
xor esi, esi
sub al, 0x41
cmp al, 0x19
ja 0x4195dc
movsx esi, bh
sub esi, 0x41
jmp 0x419613
mov al, bh
sub al, 0x61
cmp al, 0x19
ja 0x4195ec
movsx esi, bh
sub esi, 0x47
jmp 0x419613
mov al, bh
sub al, 0x30
cmp al, 9
ja 0x4195fc
movsx esi, bh
add esi, 4
jmp 0x419613
cmp bh, 0x2b
jne 0x419608
mov esi, 0x3e
jmp 0x419613
cmp bh, 0x2f
mov edx, 0x3f
cmove esi, edx
mov al, ah
xor edx, edx
sub al, 0x41
cmp al, 0x19
ja 0x419625
movsx edx, ah
sub edx, 0x41
jmp 0x41965c
mov al, ah
sub al, 0x61
cmp al, 0x19
ja 0x419635
movsx edx, ah
sub edx, 0x47
jmp 0x41965c
mov al, ah
sub al, 0x30
cmp al, 9
ja 0x419645
movsx edx, ah
add edx, 4
jmp 0x41965c
cmp ah, 0x2b
jne 0x419651
mov edx, 0x3e
jmp 0x41965c
cmp ah, 0x2f
mov eax, 0x3f
cmove edx, eax
shl ecx, 6
or ecx, edi
mov edi, dword [ebp - 0x20]
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edx
mov eax, ecx
mov byte [edi], cl
shr eax, 0x10
mov byte [edi - 2], al
mov eax, ecx
shr eax, 8
mov byte [edi - 1], al
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x30]
jne 0x4196c7
cmp bh, 0x3d
jne 0x419697
mov eax, 2
jmp 0x4196a6
cmp byte [ebp - 0xd], 0x3d
mov ecx, 1
mov eax, dword [ebp - 0x1c]
cmove eax, ecx
mov esi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x24]
sub ebx, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], ebx
mov edi, dword [esi + 4]
mov ecx, edi
mov edx, dword [esi]
sub ecx, edx
cmp ebx, ecx
jae 0x419713
lea eax, [edx + ebx]
mov dword [esi + 4], eax
mov edi, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
mov esi, 0x3f
add dword [ebp - 0x20], 3
add eax, 4
mov dword [ebp - 0x18], eax
add eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
jb 0x419534
mov edx, dword [ebp + 0x1c]
cmp edx, 0x10
jb 0x41974e
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x419744
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x419762
jmp 0x419744
jbe 0x4196c7
mov eax, dword [esi + 8]
sub eax, edx
cmp ebx, eax
jbe 0x419729
push ecx
push ebx
mov ecx, esi
call fcn.004221c0
jmp 0x4196c7
mov esi, ebx
sub esi, ecx
push esi
push 0
push edi
call fcn.00452b60
lea eax, [esi + edi]
add esp, 0xc
mov edi, dword [ebp - 0x14]
mov dword [edi + 4], eax
jmp 0x4196ca
push edx
push ecx
call fcn.00451449
add esp, 8
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00460976
int3