Function at 0x8ffe49
Capabilities:
Encode data using base64

Disassembly:
pop ecx
mov edx, dword [edi + eax*2 - 2]
mov ecx, 0xf7bb8591
mov cl, byte [edi + eax + 3]
sal edx, cl
movsx ecx, ax
xor cl, al
mov dword [edi + eax + 1], edx
mov edx, 0x6e1df285
rol dword [esp + eax - 1], 0x52
add cx, word [eax + edi + 1]
lea edi, [eax + edi + 3]
and dl, 1
mov al, byte [eax + esi - 6]
pop edx
lea esi, [edx + esi - 0x4b380002]
xor edx, edx
xor al, bl
not al
add dl, 0xb5
sbb al, 0x1c
inc dl
neg edx
neg al
rol edx, 0xe8
xor al, dl
bt dx, dx
neg al
xor bl, al
sub edx, edx
adc eax, esp
sar edx, 0x74
mov word [eax + edx], cx
jb fcn.00930e54
push edx
js 0x99f473
add dword [esp + edx*8], ebp
ret
rol ecx, cl
bswap eax
inc eax
lea ecx, [edx*4 + 0x6f2efa21]
btr ecx, edx
neg eax
xor ecx, 0xa12ff10c
sub ecx, 0x53a99a22
sal edx, 0x95
bswap eax
ja 0x8fcc16
or edx, 0x928abb9a
and cl, dh
xor ebx, eax
or ecx, 0xab0a9820
bts ecx, ecx
or cl, dh
adc ebp, eax
movsx eax, dl
mov ecx, edi
sub edi, 2
cdq
neg edx
mov word [edi + edx*8 - 8], cx
sbb edx, 0x2c3be638
lea ecx, [eax - 0x78ea13ce]
jle fcn.009d640f
inc ecx
mov ecx, 0x869a4d13
inc ecx
movsx eax, cx
dec esi
mov ebx, dword [eax + edi - 0x4d13]
call fcn.00904f13
std
adc ebx, dword [ecx + 0x4963f09e]
add dx, 0xe9ae
xor eax, ebx
and ecx, ecx
jne 0x92cbe2
dec eax
sub edi, 4
mov eax, 0x8a339c02
inc esp
movzx esi, al
inc esi
mov esp, dword [edi + esi - 2]
inc ecx
mov ecx, esi
inc ebp
xor esp, edx
mov esi, 0xefa707ac
inc esp
movsx ebx, dh
dec eax
cdq
inc ecx
dec esp
inc cx
add eax, ebx
inc ecx
neg esp
push ecx
jmp 0x9cdae7
inc ecx
dec esp
dec ecx
lea ebx, [ebx + ecx*4 + 0x7e8ad598]
inc ecx
neg esp
call fcn.009f706d
pop esi
vpcmpeqd ymm2, ymm0, ymmword [0xed1d96d0]
jbe 0x9cdb7b
adc ecx, dword [esi + 0x7676c93f]
adc esp, dword [edi + ecx + 0x137676e1]
xchg esp, eax
das
leave
jbe 0x9cdb8d
adc eax, eax
or byte [ecx + 0xb], bh
stosb byte es:[edi], al
mov esp, ebp
mov bl, byte [ebp - 0x35]
notrack jmp 0xb4fcd6e7
out 0x67, al
add dword [esi + 0x71], 0x64
loop 0x9cdbbd
xchg ebx, eax
inc esi
jno 0x9cdbc0
invalid
les esi, [eax]
call 0x68ce7779
cmp eax, 0x398f645f
call 0x901977f9
cmp eax, ebp
dec ebp
inc edi
inc eax
invalid
invalid
call 0x8fdd22df
cmp eax, ebp
and eax, ecx
sub esp, dword [edx + 0x15]
sbb eax, 0x77e77467
cmp dword [bp + si], ebx
ja 0x9cdc06
cmp dword [edx], ebx
stosb byte es:[edi], al
dec edx
push 0x7302ce6b
jno 0x9cdb9d
sbb byte [edx - 0x47941f51], 0x16
jb 0x9cdb50
mov dl, ch
lea esi, [ecx]
sub ebx, dword [edx + 0x22]
sbb ch, ah
lodsb al, byte [esi]
adc eax, 0x4b4fa16b
daa
dec ecx
mov eax, dword [0x49274b4f]
jle 0x9cdb84
pop esi
je 0x9cdbed
mov ecx, 0x514b30ca
sbb eax, 0x5d77ddb6
lea edx, [esi + 0x35]
lea ebp, [esp + edi*2]
sbb ah, byte [edi - 0x4cc37f11]
jmp 0x84169f3a
mov ch, 3
jae 0x9cdc55
sahf
into
inc esi
jp 0x9cdc33
cmp eax, 0xdb2aa309
push edx
imul edi, dword [ecx + esi*8], 0xc9e065db
sahf
test eax, 0x4ff7922b
lcall 0x8681, 0x2bbf2395
mov dword [0x84dc7a40], eax
cmpsb byte [esi], byte es:[edi]
adc byte [esi - 0xf11c954], bl
iretd
or dword [ebx + 0x6952db2a], esp
cmp al, 0xf1
invalid
test dword [edi - 0x66], 0x2bbf2395
add dword [esi - 0x2385bf5d], 0x9e10a684
lodsb al, byte [esi]
out dx, al
invalid
and esp, dword [edx]
sub ch, ah
rol ebx, cl
aad 5
outsd dx, dword [esi]
jno 0x9cdbf5
movsd dword es:[edi], dword [esi]
jae 0x9cdc9b
add esp, dword [edi - 2]
mov al, byte [0xf814c8c1]
pushfd
push ebx
mov ch, 0xea
xchg esp, eax
xor al, 0x17
inc edi
inc edx
jmp 0x7c7e924b
loope 0x9cdcd2
adc eax, 0x78ae5b9b
lds ecx, [ebp + ebp*2 + 0x33]
sbb cl, ch
xchg esp, eax
ret 0xeff9
push esi
and ah, al
enter 0xffffffffffffa6f3, 0x52
out dx, al
fistp dword [ebp + 0x5670acd9]
pop ebx
xchg byte [esi - 0x611c3bc], dl
jno 0x9cdd1f
mov byte [0xfdfb8b6e], al
mov al, byte [0xa3d33f4f]
pop ds
mov esp, 0x851417c5
test al, 0x21
rcl dword [edi], 0x7e
clc
mov edx, 0x7e17d92d
clc
inc eax
pop ecx
cmp byte [edx - 0x22], ah
inc ebx
mov word [eax], es
sbb esp, 0x4ffea698
salc
adc al, 0x41
scasd eax, dword es:[edi]
inc esi
push ebp
invalid
xor al, byte [edi + 0x7b]
or ebx, ebx
ret 0xad9b