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

Disassembly:
sar dx, 0x45
lea edi, [edi + edx - 0x2ea2fc98]
pop ecx
xor eax, ebx
call fcn.01a2b479
inc esp
xor ch, dl
inc sp
xadd ecx, ecx
dec ecx
sub ecx, 0x6b99107
dec eax
lea edx, [esp + edx + 8]
inc esp
mov ecx, dword [edx + edi*2 - 0x7e76493a]
shl word [esp + edi - 0x3f3b249d], 0x43
dec ebp
lea esi, [esi + ecx*4 + 0x19290da0]
cdq
not dword [esp + edi - 0x3f3b249d]
cmovp eax, esi
inc ebp
mov dword [esi + edi*2 - 0x7e76493a], ecx
dec ebp
lea edx, [edx + edi*2 - 0x7e76493e]
movsx ebx, word [esp + edi - 0x3f3b2499]
inc ecx
mov ebp, dword [edx + edi*2 - 0x7e76493a]
neg byte [esp + ecx + 0x64a4370]
inc ecx
mov eax, 0x920d1124
inc ecx
xor ebp, ebp
ror bl, 0x66
inc esp
movzx esp, si
sbb ebp, edx
rol ebp, 3
xor ebp, edx
sub ebp, edx
add ebx, dword [esp + ecx + 0x64a436a]
dec eax
sbb dword [esp + edi - 0x3f3b249d], 0xa421c30f
adc esi, esi
xor ebp, 0x1e84658c
dec esi
lea ecx, [edi + 0x3b04e80d]
dec esp
mov dword [esp + ecx*2 + 0xc9486d2], ebp
cwde
xor dword [esp + edi - 0x3f3b249d], ebp
ror esi, cl
inc ecx
pop ebp
dec eax
imul ecx
dec eax
arpl bp, bp
inc ecx
sal ecx, 0x3c
dec esp
adc edi, ebp
dec eax
lea ebp, [esi*8 + 0x31167d26]
inc ecx
inc eax
jl fcn.0103455b
mov edx, 0x2ea29397
mov eax, dword [esi + edx*2 - 0x5d45272e]
mov ecx, dword [esi + edx*2 - 0x5d45272a]
inc edx
or dl, dl
lea esi, [edx + esi - 0x2ea29390]
jnp 0xf422a3
syscall
push ebp
pushfd
dec eax
mov ebp, 0x830384b5
cwde
push ebp
sub esi, esi
dec eax
sub ebp, 0xcb047c23
dec eax
mov ebp, dword [esp + 8]
dec eax
mov dword [esp + 8], 0x308cdcb8
push dword [esp]
popfd
dec eax
lea esp, [esp + 8]
call fcn.01189bc7
lea ecx, [eax + eax*8 + 0xe15aa2c]
lea edi, [edi + ecx*4 - 0x2ac4af5b]
movsd dword es:[edi], dword [esi]
push eax
cmp edx, ebp
xor dl, bl
bt ecx, eax
not cl
bswap eax
dec dl
not dl
neg dl
not dl
bts eax, ecx
sbb dl, 0x90
sub eax, 0x4eb6f884
call fcn.01a32dc3
mov edx, dword [esi]
mov eax, 0xc19b78a
mov cl, byte [esi + eax*8 - 0x60cdbc4c]
rol ax, 0xea
adc eax, eax
sal ax, 1
lea esi, [eax + esi - 0x1832ab76]
setp al
add eax, eax
shl edx, cl
mov dword [esi + eax*2 - 0x60caac04], edx
btc eax, eax
mov eax, dword [eax + edi - 0x30655606]
mov ecx, 0x4c247eb5
call fcn.01a1d6ec
pop esi
popal
push ebx
adc dl, ah
push cs
pop eax
and ebp, dword [eax]
jno 0xd77b53
push ss
ja 0xd77bc8
salc
cmpsd dword [esi], dword es:[edi]
insd dword es:[edi], dx
js 0xd77ad8
leave
jmp 0xcc8d8116
add eax, 0xe056cbb6
sub al, byte [esi + 0x1ba018c9]
cwde
das
pop ss
lahf
retf
invalid
shld dx, ax, cl
mov eax, 0x1e28c932
lea ecx, [eax + eax*4 - 0x27fd5bd5]
mov word [eax + ebp - 0x1e28c932], dx
inc ecx
mov dword [esp + eax*4 - 0x78a324c8], esi
ret 0x14
push 0x8a5736
adc ebp, 3
push 0xb500f39c
jmp 0xe76087
mov edx, dword [edi + ecx*4 - 0x17c]
xor ecx, eax
adc cx, cx
mov ecx, dword [edi + 4]
call fcn.0112e5f0
mov dword ss:[eax + edx - 0x2ea29398], ecx
push edx
mov eax, edx
jne 0x120b3a9
jbe 0xee74eb
dec ecx
sub edx, 1
push 0xa01e7323
inc ecx
movzx edx, byte [edx]
mov esi, 0xe705fd37
mov edi, 0x3f3b249e
inc ecx
xor dl, ch
dec edi
rol dl, 1
movzx eax, di
dec dl
push esi
inc eax
or bh, bh
cwde
neg dl
dec eax
lea ecx, [eax*8 - 0x64bdb74]
not dl
dec eax
xchg dword [esp + edi*2 - 0x7e764932], eax
dec eax
xor dword [esp + edi - 0x3f3b249c], esi
dec dl
inc esp
mov ecx, eax
ror dl, 1
dec dl
dec eax
sar dword [esp + edi*2 - 0x7e764932], 0xe
pop eax
jp 0xd779ac
mov ecx, 0x1e34e01b
mov edx, ecx
lea esi, [esi + ecx - 0x1e34e01f]
lea eax, [ecx + ecx*4 + 0x4c1ad32d]
mov eax, dword [esi + ecx - 0x1e34e01b]
xor eax, ebx
sal edx, 0x98
bts edx, 0x25
add dx, dx
dec eax
xchg dx, cx
sub cx, cx
bswap eax
je 0x11ae2cc
setae cl
jne 0xe15dc0
sbb eax, 0x7a8e460a
btr edx, 0xbc
bswap eax
not eax
ror cx, 0xa9
shl dl, 0x45
xor ebx, eax
dec dl
btr ecx, ecx
sbb ecx, ecx
adc ebp, eax
lea eax, [ecx*2 - 0x97e315d]
xor cl, dl
ja 0xf35c8d
not edx
sal ecx, 0x64
xor dword [esp + 4], ecx
ror edx, 3
add ecx, 0xfd97ff19
cwde
or eax, dword [esp + eax]
neg edx
neg cx
xor ebx, edx
add ebp, edx
mov dword [esp + eax - 0x63a4bb95], ebp
ret 4
mov eax, dword [edi + edx*2 - 0x5d452730]
jl 0xcf772a
mov edx, 0xb7b563ba
add edx, edx
shr edx, 0xf6
mov edx, dword [edx + edi - 0x1bd]
call fcn.00e1bdf2
into
invalid