Function at 0x17a3558
Capabilities:
Encode data using base64

Disassembly:
inc al
xchg byte [esp + ecx*8 - 0x10838], ch
movzx eax, byte [esi + ecx*2 - 0x700e]
jp 0x1240133
mov eax, 0xdc1679b3
movsx edx, al
mov edx, dword [ebp]
mov cl, byte [ebp + 4]
shl eax, 0x4d
adc ebp, 6
mov byte [edx], cl
jmp 0x12500b5
xor al, bl
inc al
dec byte [esp + ecx*4 - 0xe01b]
shr ecx, cl
ror al, 1
sub al, 0x91
rol al, 1
call fcn.0135deb7
dec esp
mov dword [esp + eax*2 - 0xab000], ebx
inc ebp
mov esi, ebp
inc esp
xor dword [esp + eax - 0x55800], eax
inc ecx
pop ebx
inc ecx
push esi
inc cx
neg ebp
dec ebp
arpl ax, ax
call fcn.017cbeb3
movzx ecx, byte [esi - 1]
mov eax, 0x2792d439
xor cl, bl
movsx edx, al
dec al
neg cl
shl eax, 0x70
sbb al, 0x3a
ror eax, 1
adc cl, 0xaa
or eax, eax
sar ax, 0x61
neg cl
dec al
jg 0x17890c1
ja 0x134017e
inc edx
xor bl, cl
add edx, eax
call fcn.0138e05e
add cl, 0xbb
not eax
sal al, 0xa1
sar edx, 0x3e
not cl
jbe 0x1357f60
inc ecx
bswap eax
dec eax
mov dword [esp + eax - 0xab], edx
sal eax, 0xcb
dec ebp
lea ebp, [esp + 0x60a3a431]
inc edi
lea eax, [ebp + eax + 0x7a5df095]
jp 0x1247922
mov edx, 0xeeb93029
not dl
lea ecx, [edx*4 + 0x6b1a2e9c]
lea esi, [esi + ecx - 0x25fef1f8]
mov ecx, dword [esi + ecx*2 - 0x4bfde3e8]
movsx eax, dx
or edx, eax
xor ecx, ebx
dec dx
or edx, 0x1ab6e888
not ecx
dec eax
dec dx
sbb ecx, 0xb2ae863e
neg eax
call fcn.0139211e
call fcn.017a21fa
and ax, 0x2195
lea ebp, [ebp + ecx - 0x2105]
or eax, 0xffffdefb
setne byte [esp + ecx*2 - 0x420c]
lea esi, [ecx + esi - 0x2108]
jae 0x123f635
mov edi, 0x4d7797c7
pop eax
das
je 0x17a3616
fldcw word [ebp + 0x728bec4f]
in eax, 0xed
in al, dx
mov esi, dword [edx - 0x1b]
in eax, dx
aaa
in al, dx
mov esi, dword [edx - 0xf]
ror dword [edi], 1
in al, dx
mov esi, dword [edx - 0x23]
rep movsd dword es:[edi], dword [esi]
fst dword [ebx + 0x33]
fst qword [esi]
jno 0x17a367d
in eax, dx
sbb dword [0xf323780], edi
scasb al, byte es:[edi]
pop edx
dec ebp
retf 0x8b7a
mov ah, 0xcb
xor al, 0xbf
or dword [ebp + 0x35], edx
jbe 0x17a35ec
sal byte [ecx + 0x5e], 1
scasb al, byte es:[edi]
or al, 0x6f
pushal
aam 0x38
out 0x70, al
in eax, dx
aad 0
jge 0x17a35c6
sahf
fdiv st(6), st(0)
or ah, dh
adc esp, dword [ebp - 0x33]
push ecx
ficomp word [eax + 0x59a4c847]
test dword [esi + 0x47], ecx
sub ch, dh
lodsd eax, dword [esi]
and cl, byte [esi - 0x6259e6fe]
clc
daa
inc dword [edx - 0x64]
mov bh, 0xe7
mov byte [0x3f001c56], al
or esi, 9
sal byte [edx - 0x44], 0xf3
ja 0x17a36ae
add dword [0x97b05e4a], edx
inc edi
or dword [edx], 0x92356952
cmp bh, byte [edx - 0x7d]
insb byte es:[edi], dx
les eax, [ebp + 0x55]
push edx
imul esi, dword [0x837a3a92], 0x5545c46c
int1
cld
sub dword [esi], 0x5df3453e
cmp ch, byte [edx - 0x4e]
fnstsw word [edx - 0x7e]
shl dl, 0xe2
and dh, byte [edx - 0x3f7d8523]
loop 0x17a3669
inc edi
fbstp tbyte gs:[eax + 0x53]
xchg dword [ebp + 0x16cb224f], ebp
and cl, bl
push ss
add eax, 0xa0d3532c
and dword [edi - 0x334ddab5], ecx
sub esi, dword [ebx - 0x74]
push edi
sal bl, 0xdc
xchg ebx, eax
fcmovbe st(0), st(2)
dec ebx
imul esi, dword [ebp + 0x63adc286], 0x75
fcompi st(0)
push ds
mov edi, 0x1aaee1d8
test al, 0x7e
mov dl, 0x48
dec ebx
or ebx, ebp
dec ecx
pop eax
mov byte [0x564db0ef], al
pop esp
add al, 0xc9
out dx, eax
sahf
rcr byte [ecx + ebx*4 + 0x59], 0x52
or eax, 0x5a84ce66
sahf
mov dh, 0xce
add al, 0xc0
mov eax, dword [esi + 0x56f43cb8]
js 0x17a367f
jne 0x17a368f
invalid
imul esi, dword [eax + 0x49], 0x8daae176
xchg ecx, eax
test dword [ecx], ebp
lcall 0xe516, 0xfb4b8019
sub eax, 0xf476ee6c
push eax
adc eax, 0x46ff11c4
test byte [eax + 0x7cda74d4], bh
xchg ecx, eax
in eax, dx
imul eax, dword [esi - 0x28292c3c], 0x252b9337
xor eax, 0xa86e0783
mov ecx, 0x21375bda
pop ds
invalid