Function at 0xb5cab5
Capabilities:
Encrypt data using speck

Disassembly:
call fcn.00c2c097
mov ebx, 0xf9b31d92
inc esp
movsx ecx, bx
inc ecx
mov eax, 0xc988f9b3
dec edi
lea ebx, [ebx + ecx*2 - 0x3b28]
movzx ebp, bl
dec eax
sar ebp, 0x64
inc ebp
movzx edx, al
inc ebx
mov edx, dword [ebx + ecx*8 - 0xec90]
inc ecx
xor edx, ebp
dec esp
or edx, ebx
call fcn.00b042de
mov eax, 0xc196e294
lea edx, [eax*8 + 0x7831429c]
movzx eax, byte [ebp]
lea edx, [edx - 0x5351025b]
lea ebp, [ebp + edx*2 - 0x632ea9c1]
call fcn.007e9dca
push 0xfb80df26
dec ebx
call fcn.00b7b8b3
movzx cx, byte [eax]
mov word [ebp - 2], cx
lea eax, [edx*4 + 0x1b9b229c]
inc edx
movzx ecx, word [esi + eax*4 - 0x266b3957]
xor cx, bx
add cx, 0x5317
mov dword [esp + eax*8 - 0x4cd672a0], eax
call fcn.00841af9
ror dword [esp + edx*4 - 0x3a6f9fc], 0xa
xor ebx, ecx
neg dx
sbb eax, eax
add edi, ecx
lea edx, [edx*4 - 0x31d13dc2]
pop edx
sub edx, edx
jbe fcn.0074a1b4
not cl
sar ebp, 0x92
inc ecx
pop edx
inc ecx
xadd edx, ebp
and dl, cl
inc ecx
mov ecx, 0x8b8a7797
inc sp
xor eax, edx
dec eax
add ebx, 0xb1a59f00
inc bp
movzx eax, al
call fcn.00cedfa6
mov eax, 0x3d0fb929
mov ax, word [esi + eax - 0x3d0fb929]
mov edx, 0x5405e1b3
mov ecx, 0x8ab77cb6
mov cl, byte [esi + edx - 0x5405e1b1]
or dx, dx
lea esi, [esi + edx - 0x5405e1b1]
shl dl, 0x81
sal ax, cl
xchg dh, dl
lea ecx, [edx*2 + 0x936b91a]
shr cl, 0xa1
mov word [esi + edx - 0x540566e1], ax
ja 0x728006
shl dword [0x927a00f3], 0xf0
add ch, byte [ebp + 0x76]
outsb dx, byte [esi]
xchg esi, eax
lock add ch, byte [ebp + 0x7e]
or ah, dl
lock add ch, byte [ebp + 0x76]
inc esi
invalid
xor al, bl
push ecx
jmp 0xb37760
mov dword [edi + 4], eax
lea ecx, [edx*2 - 0x14c5b04d]
movzx eax, dl
inc edx
mov eax, dword [ebp + eax*8 - 0x580]
call fcn.007559be
bswap ecx
lea eax, [eax*4 - 0x49eb69f0]
sbb ecx, 0xa3ad171c
call fcn.00c07322
xadd ecx, edx
not al
ror al, 1
call fcn.00b21577
push ebp
call fcn.00b3ca1c
lea edx, [edx + eax + 0x620a12dc]
mov dword [esp + eax - 0xa1ae7d4], eax
not edx
and al, 0x2a
setle al
xor ebx, edx
ror cx, 0xe5
pop ecx
add edi, edx
sal ecx, cl
lea esi, [esi + eax*4 - 0x286b9c05]
neg ecx
movsx edx, cx
shr al, 0xa7
movzx eax, byte [esi + eax*2 - 0x1435ce00]
shl edx, 0x68
je 0x78522d
jns 0xcbacaf
lea edx, [edx + edx*4 - 0x52e9f550]
not ecx
jp 0xca57bb
inc dl
and edx, edx
adc esi, 2
ror dl, 0x84
adc edx, 0x5334fdb5
not al
or dl, dl
or edx, edx
setnp dl
not cl
and edx, 0xe1a1b034
or al, cl
mov word [edx + esi - 0x21810000], ax
call fcn.00735225
mov ecx, 0xddbf7fa7
movzx edx, word [ebp]
add ebp, 2
and cl, 0xb
mov eax, ecx
xor dx, bx
inc ax
neg dx
neg cx
not dx
xor al, 0x2b
lea ecx, [eax + eax*8 + 0x2b09c524]
or ecx, ecx
rol dx, 1
shr ecx, 0x6b
neg dx
xchg ecx, eax
neg eax
and cx, cx
xor bx, dx
sub esi, 2
jmp 0xbff0a3
mov word [esi], dx
jmp 0xc14322
mov ecx, dword [ebp]
lea edx, [eax + eax*2 - 0x94516f3]
jmp 0xc397db
add ebp, 4
dec edx
xor ecx, ebx
not ecx
inc al
lea eax, [eax + edx*2 + 0x3e33fda7]
lea edx, [edx*8 + 0x36956a02]
xor ecx, 0x8d1e9287
or edx, 0xa8be1f3c
dec ecx
neg al
shr edx, 0xa8
not ecx
push edx
cmovs eax, edx
xor eax, 0xf99048ac
neg ecx
jmp 0x7641e4
shr dl, 0x84
mov cl, byte [esi + 2]
jp 0xbf4c1b
or eax, ecx
jmp 0xb2a92d
add edi, ecx
ror al, 0xe1
movzx ax, byte [esi]
jae 0xc66bb8
dec byte [esp + eax - 0x556d24ff]
movsx ecx, ax
neg edx
or byte [esp + eax - 0x556d24fe], 0x37
shl dword [esp + ecx*8 - 0x12800], 0xbd
xor ebx, edx
add edi, edx
and dword [esp + ecx - 0x2500], ecx
ror eax, 0xe2
or al, byte [esp + eax - 0x155b493f]
xor dword [esp + eax*4 - 0x556d2500], edi
ret