Function at 0x14f3b55
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
xor ecx, ebx
ror ecx, 1
dec word [esp + edx - 0x19]
xor ecx, 0x76bf6eb3
xor dx, 0x818a
bswap ecx
div word [esp + edx*4 - 0x20643]
mul eax
neg ecx
ror edx, 0xfd
sar ax, 0x26
sub dword [esp + eax - 0x8150089], 0x4a241584
xor ebx, ecx
or dword [esp + eax*2 - 0x102a0110], eax
pop edx
mov dword [eax + ebp - 0x815008c], ecx
lea ebp, [ebp + eax*2 - 0x102a0116]
not eax
btr eax, 0x3c
inc edx
pop edx
jbe fcn.015b9a99
bt eax, 0x33
xor ebx, edx
btc cx, 0x80
adc word [esp + ecx*2 - 0x7c0d4d12], 0x7686
lea eax, [ecx*8 - 0x778adf5]
add edi, edx
mov dword [esp + ecx - 0x3e06a68c], 0x1b8fce86
mov ecx, dword [esi + ecx - 0x3e06a694]
add esi, 0xfffffff8
movzx edx, byte [esp + 3]
inc byte [esp + edx*2 - 0x33]
jns 0xccba98
salc
add eax, 0x8bb6021d
sar dword [esi + esi], 1
cmp al, 0x36
sti
dec ebx
xchg esi, eax
std
and byte [esi], dh
sti
dec ebx
cmpsd dword [esi], dword es:[edi]
fnsave dword [esi + esi - 5]
dec ebx
sal byte [ebp + 0x4bfb3654], 0xae
xor byte [edi - 0x1e], al
loope 0x14f3b9e
ror ch, 1
cmpsb byte [esi], byte es:[edi]
mov ebp, 0xcdc1ff98
xchg ebx, eax
and dword [esi], esi
inc eax
and al, 0xe5
int1
xor dword [ecx + eax*2 - 0x5efc315a], esi
cmpsb byte [esi], byte es:[edi]
mov eax, dword [0xeffbceb8]
sti
out dx, eax
mov eax, dword [0xe52bceb8]
out dx, al
mov eax, dword [0x8b47ceb8]
cmp dword [ebp + 0x4f], ecx
mov esi, 0xa078db0c
aas
ja 0x14f3c05
rcl byte [ebx + 0x59], cl
ret 0x7328
fisub word [ebp + 0x326d4387]
test al, 4
jnp 0x14f3c6a
std
pop ebp
push eax
add esi, dword [esi + 0x23a0bf43]
in eax, 0xf1
and esp, ebp
int1
fldcw word [esi + eax*2 - 0x5a]
into
xor edx, dword [edx - 0x5a]
mov eax, 0x239cfce
cmpsb byte [esi], byte es:[edi]
mov eax, 0xe256bce
cmpsb byte [esi], byte es:[edi]
mov eax, 0xe977efce
dec edx
dec edi
mov esi, 0x9eb36ef
invalid
out dx, al
pushfd
ja 0x14f3bd5
test ebp, ebp
xchg esp, eax
xor eax, 0x9f858d77
lahf
adc dword [edx - 0x5d], esp
xchg edi, eax
sub bh, byte [ecx - 0x103fede7]
and eax, 0x8aaeb9e8
adc byte [ebx], ch
call 0x4d6f325b
sub ebp, eax
cmc
cmc
pop ds
dec esp
mov ah, 0xe6
push cs
sahf
push ecx
mov ah, 0x76
loopne 0x14f3c6d
jbe 0x14f3c4f
std
jp 0x14f3cf1
sub byte [ebp + 0x5efdd14b], 9
pop edx
push ds
xchg esp, eax
mov edx, 0x2a6e98de
pop ecx
stc
je 0x14f3c60
cmpsd dword [esi], dword es:[edi]
fbstp tbyte [ecx + 0x7b]
das
movsb byte es:[edi], byte [esi]
jmp 0x14f3c17
jae 0x14f3c1f
nop
push ds
invalid
fdivr qword [edi + 0x74]
lds eax, [ebx + 0x74e9654b]
cmp edx, dword [edx]
mov ss, word [0xc8d08206]
pop esp
jnp 0x14f3c43
test dh, cl
into
jecxz 0x14f3c9c
jle 0x14f3c6d
adc edi, dword [eax - 0x6e]
mov ah, 0xed
xor al, 0xf3
outsd dx, dword [esi]
rep outsd dx, dword [esi]
or al, 0xee
jmp 0xa032bbbd
push edx
xchg ebp, eax
jae 0x14f3cb2
int1
or byte [ebp - 0xbe4474d], dl
lodsd eax, dword [esi]
jg 0x14f3cbd
pop edi
inc edi
retf 0x3451
cwde
add dword [ecx + 0xf], eax
pop ebx
cmpsd dword [esi], dword es:[edi]
daa
push edx
std
jl 0x14f3d56
cmp bl, byte [edx - 0x1c80ccb3]
mov word [ebx - 0x58272b78], cs
inc edi
jecxz 0x14f3c8f
mov ecx, dword [eax + 0x47a7d8d4]
fimul dword [edi]
in al, dx
int1
or al, 0xb1
jbe 0x14f3d01
ja 0x14f3cd0
invalid
imul ecx, dword [0x95aa1f4b], 0xffffffd6
wrmsr
mov eax, eax
stc
popfd
cmp byte [edi + 0x17], 0x32
xchg ebp, eax
dec esp
cmp dword [ebx], esp
mov eax, 0x7340a4af
mov byte [0xb0a4b4bd], al
mov bl, 0xd3
xor byte [ebx - 0x35], al
scasd eax, dword es:[edi]
popfd
mov bl, 0x55
ror byte [edi*2 + 0x39826438], cl
inc esp
pop ds
imul esi, dword [esi], 0x8da1f714
pop es
adc al, 5
cmp ebp, eax
lds edx, [eax]
int3