Function at 0x97cb66
Capabilities:
Encode data using base64

Disassembly:
mov dword [esp + eax - 0x1340ecbf], ebp
ret
sal dword [esp], 0xf0
xor ecx, ebx
not dword [esp]
sal word [esp], 0x69
inc ecx
mov eax, 0x8fb625b0
ror dword [esp], 0x89
ror ecx, 1
or byte [esp + 3], al
xor eax, 0xf791259b
xor ecx, 0x4da1fb3c
lea ecx, [ecx + eax*2 - 0x64b7d4a9]
movsx edx, al
ror ax, 0xea
xor ebx, ecx
xor eax, eax
mov dword [esi + eax*2 - 4], ecx
lea ecx, [eax + esi - 4]
not edx
pop eax
mov dword [esi + eax + 0x4fe38c79], ecx
sbb al, 0x18
lea esi, [esi + eax + 0x4fe38c91]
cwde
jnp 0x903591
bswap eax
xor ebx, eax
shl dword [esp + ecx - 0x1448cf37], 0xb5
add ebp, eax
xadd ecx, edx
movzx dx, byte [edi + ecx*2 - 0x289369c4]
mov cl, byte [edi + ecx*4 - 0x5126d386]
adc edi, 2
shl dl, cl
mov eax, dword [esp]
mov word [edi + eax*4 - 0x4d000000], dx
not ax
xor ax, word [esp + eax*4 - 0x4d03fffa]
jne 0x773504
movzx ecx, al
shl ax, 0x41
rol edx, 3
div byte [esp + ecx*4 - 0x252]
sub edx, 0xe4846f0e
ror dword [esp + ecx - 0x95], 0x18
push ecx
xadd dword [esp + ecx*2 - 0x128], eax
neg edx
idiv byte [esp + eax - 0x2ffffffc]
ror word [esp + eax - 0x2ffffffa], 0x68
inc edx
lea eax, [eax + ecx - 0x5acfcf52]
lea eax, [eax + eax*2 - 0x41585f6b]
neg edx
xor ebx, edx
and al, ah
adc esi, edx
movzx edx, word [esp + eax - 0x3e383411]
shl word [esp + ecx - 0x90], 0xe8
mov dword [esp + ecx - 0x95], esi
ret 4
or edx, eax
sbb eax, 0x661deab5
xchg al, dl
sbb esi, 1
shr eax, 0x17
mov word [esi + eax*2 - 0x3cc], cx
mov eax, dword [ebp + eax - 0x1e6]
adc ebp, 4
movzx ecx, dx
push edx
xor eax, ebx
inc eax
and dl, cl
shr ecx, cl
sal dword [esp + ecx - 0x1fe], 0x4a
xor eax, 0x3a22d490
not cx
ror eax, cl
dec eax
ror eax, 2
lea eax, [ecx + eax + 0x12cd538]
mov ecx, dword [ebp + 4]
btr edx, 0xa6
push edx
adc ebp, 7
xor ecx, ebx
ror edx, 0x89
ror eax, 0xee
not ecx
inc eax
neg ecx
xadd word [esp + eax + 0x3263ffff], ax
xchg edx, eax
lea ecx, [ecx + eax*4 + 0x1b66b551]
cdq
rol ecx, 1
xor ebx, ecx
add edi, ecx
not word [esp + eax*2 + 0x6b000004]
shr dword [esp + eax*2 + 0x6b000002], 0x64
pop edx
jae fcn.00cfe987
shr dx, 0xd
xor cl, 0xbf
rol cl, 1
lea eax, [edx + edx + 0x4812779a]
dec eax
neg dx
not cl
ror eax, 0x9f
setne dl
call fcn.007ca60a
inc ecx
popfd
in al, dx
add ebx, eax
or al, 0x61
scasb al, byte es:[edi]
add byte [esi + edi*2 - 0x519e933d], al
add byte [eax + 0x61a4cb36], dl
scasb al, byte es:[edi]
add byte [esp + edx*4], bl
jnp 0x9035e8
popal
scasb al, byte es:[edi]
add byte [ebp + 0x2b], bh
adc eax, 0xa2cf9f9e
shr dh, cl
jp 0x90369f
out dx, eax
int3
clc
ror dword [ecx - 0x7eb1561], 0xc1
mov edi, edi
invalid
jbe 0x90367d
mov eax, esi
cwd
neg ecx
push edx
xchg edx, eax
xor ebx, ecx
add edi, ecx
mul edx
setb byte [esp + eax - 0x20316fbd]
mov dword [esp + eax*2 - 0x4062df86], eax
pop ecx
pop edx
pop ecx
jo fcn.007ab5dc
push 0xeb1c65b2
sar dword [esp], 0x4a
mov ecx, dword [ebp]
jb 0x89b4c9
jne 0x8315d2
jne 0x97cbd3
dec edx
aaa
leave
xchg edi, eax
xchg byte [esi - 1], ch
test dword [ebx - 0xb], edx
xchg edi, eax
xchg byte [esi - 1], ch
mov dword [ebx - 0x2b], ebx
mov dword [0xdfcf1ee], eax
xchg esp, ebx
mov esi, 0x680e85cf
leave
xor ecx, dword [edx]
test dword [eax + 0x48aae0ba], ecx
retf 0x8fc6
mov al, 0x99
pop ds
xor byte [ebp + 0x10143762], dl
call 0x49206655
stc
mov dh, 0x77
cmp eax, 0x27b5f23f
xchg esp, eax
push ss
adc edi, dword [esi]
out dx, al
popfd
push ss
mov ch, 0xbb
dec esi
ffree st(5)
pop esi
or al, 0xf7
outsd dx, dword [esi]
sub ebp, ebx
mov bl, 0xd4
fisttp dword fs:[esi]
add eax, 0xd73051fe
pushfd
jle 0x97cbf7
mov ch, 0xe0
mov byte [0x3d389648], al
out 0xd5, al
adc dword [edi], esi
dec eax
or dword [ebx], 0x80ecb55c
invalid