Function at 0x9ce189
Capabilities:
Encode data using base64
Encrypt data using aes mixcolumns step

Disassembly:
adc eax, edx
mov dword [ebp - 4], eax
add dword [esp], 0xc6039735
call fcn.00779aa5
arpl word [ebx], cx
mov edi, 0xa33d6d71
movsd dword es:[edi], dword [esi]
in al, 0x74
mov ebp, 0x1638a95b
mov es, word [edx + 0x4f]
add cl, al
xchg ebp, eax
push esp
movsx eax, cx
movzx ax, byte ss:[edx + eax*4 - 0xa294]
add esi, 2
dec cx
jno 0x9713da
pop ss
cmc
pushfd
cmpsb byte [esi], byte es:[edi]
sbb eax, 0x9441f203
or eax, 0x85f37075
push 0xfffffffffffffff5
test dword [edx - 0xb], ebp
jne 0x710540
aad 0xc4
jne 0x71054a
jo 0x7104ca
or eax, 0x70758d2a
test eax, 0x7075f560
inc ebp
out 0x6d, al
jne 0x710558
xchg ecx, eax
push esi
int 0x75
jo 0x7104e2
loop 0x710553
mov dl, 0xb2
mov cl, 0xb9
inc esp
push 0x742c8c4b
jb 0x71048c
out dx, al
and eax, 0x34737700
inc esp
xchg ebp, eax
call [edi - 0x6abb5b0d]
push dword [esi - 0x6abb9b7d]
inc esp
xchg ebp, eax
invalid
xor al, 0x4e
xor dword [0xaef2031d], ebx
add esi, edx
scasb al, byte es:[edi]
sub dword [esi], 0x75
jo 0x71053b
into
jmp 0x7105a9
pop esi
jne 0x7105bd
jle 0x71051b
outsb dx, byte [esi]
jne 0x7105c3
in eax, dx
jne 0x7105c9
jo 0x71054d
push 0xffffffffffffffd5
push 0xffffffffffffffd5
inc esi
jne 0x7105cf
repe scasb al, byte es:[edi]
std
dec esi
jne 0x7105d5
sahf
mov ebp, 0xf3707516
cmp dword [edx - 0x4e], esp
mov dl, 0x70
pop esi
xlatb
push 0xb70f8c4b
jb 0x710509
xchg esi, eax
sbb al, bl
invalid
xchg ebp, eax
dec dword [eax + edi*8 + 0x7f]
inc esp
xchg ebp, eax
invalid
fild word [ebp + edx*4 - 1]
je 0x710580
mov bh, 0x44
xchg ebp, eax
invalid
stosb byte es:[edi], al
inc eax
or dword [eax - 0x1ff3c1e9], edi
or al, 0xe0
pop ebp
clc
pop ss
or al, 4
or al, 4
jns 0x71058d
pop ss
or al, 0xac
or al, 0xac
sbb eax, dword [eax + 0x380c3e17]
or al, 0x38
mov ebx, 0xc3e1728
test bh, al
js 0x7105f7
or al, 0x6c
iretd
invalid
inc cx
rol ebp, 0x46
dec esp
xor esp, ebx
inc sp
and esi, eax
bswap esi
jbe 0x95f6b2
mov edx, 0x60110da5
adc ecx, ecx
xor eax, ebx
btc edx, 2
jb 0x95a50f
ror cl, 0x83
add esi, eax
movsx eax, cl
mov eax, dword [edi + ecx*2 - 0x7b96dffc]
call fcn.007f6f8b
bswap eax
rol ecx, 1
bt edx, eax
bswap ecx
rol ecx, 3
xor ebx, ecx
add ebp, ecx
jmp ebp
setae cl
bswap eax
add ax, word [edx + eax - 0x3000000]
rol cl, 0x45
shr ecx, 0x79
lea ebp, [ebp + ecx*2 - 0x98]
rol ecx, cl
movzx edx, cx
imul ecx, edx
mov word [ebp + ecx*4 - 0x10000000], ax
shr dl, 0x41
or dl, 0x8a
jmp esi
bts ax, cx
xor edx, 0xae9e1492
inc eax
xor ebx, edx
dec cx
shr ax, 0x21
add esi, edx
inc ecx
bts eax, ecx
movzx edx, cx
mov edx, dword [ebp + eax*4 - 0xc]
jae 0x7322d5
btc edx, 0x36
call fcn.009c8201
pop eax
add edx, esp
jmp 0x946d04
sar eax, cl
not edx
bts ecx, 0xa8
sub ax, ax
ror edx, 2
xor eax, eax
jp 0x7e6fc7
call fcn.0073c7a1
xor edx, ebx
call fcn.00cb461a
dec eax
arpl dx, dx
dec ecx
lea eax, [eax + ebx + 0x3fbf8fa6]
dec esp
adc ebx, edx
inc ebp
mov edi, ebp
dec esi
lea edx, [ebx + edx - 0x3b540000]
dec eax
mul ecx
inc ecx
sal cl, 0xc6
dec ebx
mov ebx, dword [edx + esi - 0xfff8]
inc cx
bts edi, 0x20
dec ecx
xor ebx, esp
dec ecx
sal ecx, cl
inc ecx
movsx esi, si
dec eax
inc ebx
inc ecx
div ch
jmp 0x9cd9a7
ror ax, 0xe7
inc ax
mov word [edx], cx
mov ecx, dword [esi]
sar ax, 0x24
movsx edx, al
not dl
lea esi, [edx + esi - 0xe9]
xor ecx, ebx
push eax
imul eax
and byte [esp + eax*8 - 0x7c000a1f], al
bswap ecx
adc al, dh
not eax
sub byte [esp + edx - 0x4d1c3fb], dl
dec ecx
shl eax, 0x90
shl eax, 0xf6
bswap ecx
neg eax
ror byte [esp + eax*4 + 2], 0xe1
setae al
neg ecx
xor ebx, ecx
xor word [esp + eax*2 - 1], 0xd330
bt eax, 0x13
adc edi, ecx
mov dword [esp + eax - 1], edi
ret
xor ecx, ecx
bswap eax
rol eax, 1
neg eax
bswap ecx
or cx, 0xd72f
xor eax, 0xe9038b2a
not eax
or dx, cx
bswap eax
lea edx, [ecx*4 - 0x4556dbdf]
dec eax
and cl, 0x8a
shr cx, cl
xor ebx, eax
dec cx
sub cx, 0x7100
add ebp, eax
mov dx, word [esi + ecx*4 - 0x23cd0]
movsx eax, cx
ror cx, 0x4a
sub eax, ecx
mov ax, word [esi + ecx - 0xcd21]
sbb ecx, ecx
bt ecx, 0x2d
shr cl, 0x23
or cl, byte [esi + ecx + 4]
push 0x7e3e1790
sar dword [esp], 0x9a
adc esi, 3
shrd dx, ax, cl
push 0x33981121
pop eax
sub dword [esp + eax - 0x33981121], eax
mov word [esi + eax*2 - 0x67302242], dx
movzx edx, ax
sar dword [esp + eax - 0x33981121], 0x83
pop ecx
jmp ebp
dec edx
lea edi, [edi + esi*4 - 8]
dec eax
sar ebp, cl
dec ecx
mov dword [esi + edi], ebx
sbb ebp, eax
inc sp
xadd ebp, esi
inc cx
sar ecx, 0x2b
jp fcn.008c5046
sub edi, 4
mov ecx, 0x9a129ea2
mov edx, dword [edi]
movsx eax, cx
xor edx, ebx
btr eax, eax
neg edx
dec cx
lea edx, [ecx + edx - 0x22d7701c]
rol edx, cl
and eax, eax
jl 0x8ee425
mov edx, ecx
mov word [esi], ax
btr edx, ecx
movzx eax, dx
bts eax, eax
lea ebp, [ebp + eax*4 - 0xa2d4]
mov edx, dword [ebp + eax*2 - 0x5168]
push ecx
bts eax, eax
jae 0x90335b
inc ecx
mul eax
dec eax
not ebx
inc ecx
neg ch
dec eax
neg ebx
dec ecx
mul esi
ror eax, cl
ror eax, cl
dec eax
adc ebx, edx
inc cx
mul ecx
jno 0x732157
mov ecx, 0xe39e28a5
mov edx, dword [esi]
jmp 0x7104a2
shrd edx, eax, cl
mov eax, 0x7318793c
ror ax, 0x81
movzx ecx, al
mov dword [esi + eax - 0x73183c9e], edx
call fcn.008ac7da
shl edx, 2
bts ax, ax
mov eax, ebp
push 0xeb321803
jb 0x956ec6
jae 0x708446
mov ebx, 0xc4ac1028
dec ecx
sub edx, 4
movsx edx, bx
inc ecx
mov edx, dword [edx + edx*4 - 0x40a0]
sar bx, 0xa9
neg ebx
inc ecx
xor edx, esp
lea edx, [ebx + edx - 0x3d80cf8d]
rol edx, 1
inc esp
movzx esi, bx
xor edx, 0x3f2ac60e
inc ecx
push esi
dec esp
lea ecx, [ebx*8 + 0x7e14d20f]
rol edx, 1
inc ecx
movzx ebp, si
inc esp
movzx ebp, byte [esp + ebx - 0x3b53fff8]
dec esi
mov dword [esp + esi - 0xfff8], esp
xor dword [esp + ebx - 0x3b53fff8], edx
inc ecx
movsx ecx, cx
dec edi
lea eax, [ebp + ebp - 0x3f41b647]
dec eax
or ebx, ebp
inc ecx
pop esp
ja 0x91eb7c
int1
add esp, dword [eax + ebx]
cli
out dx, al
xlatb
in al, 0x4b
xchg edx, eax
popfd
retf