Function at 0x15dc65f
Capabilities:
Encrypt data using speck

Disassembly:
mov cx, word [ebp]
lea edx, [eax - 0x7ee18acb]
or eax, eax
mov dword [esp + edx - 0xdc65b49], edx
mov ax, word [ebp + edx*8 - 0x6e32da46]
lea ebp, [ebp + edx*4 - 0x37196d22]
adc cx, ax
or byte [esp + edx*8 - 0x6e32da47], dh
inc word [esp + edx - 0xdc65b49]
mov word [ebp + edx*4 - 0x37196d24], cx
lea esi, [esi + edx*2 - 0x1b8cb696]
mov edx, dword [esi + edx*2 - 0x1b8cb692]
xor edx, ebx
not dword [esp]
call fcn.00f96402
inc esp
xadd bh, dh
dec ecx
xadd esp, edi
xor al, bl
not al
inc ecx
movsx edx, di
dec eax
sub ecx, 0x45370b37
dec ecx
rol edi, 0x23
neg al
inc bp
sub edi, esi
dec ecx
xchg esi, edi
call fcn.00f62845
xor ecx, ebx
bswap eax
lea ecx, [ecx + edx + 0x5f07e81e]
dec edx
rol ecx, 1
ror eax, 0x98
dec ecx
rol dl, 0x46
jb 0x17308f5
lea esi, [esi + edx - 0x1436]
sal byte [esp + edx*2 - 0x285e], 0xe5
or dword [esp + edx*8 - 0xa18c], 0xfeac53af
lea ecx, [edx + edx*2 + 0x4931e184]
mov eax, dword [esi + edx - 0x1432]
sbb dword [esp + edx - 0x1432], ecx
sete cl
rol ecx, 0x3b
xor eax, ebx
push ecx
bswap eax
dec eax
rol eax, 2
xchg ch, cl
xor eax, 0x4b2fef12
shl ecx, 0xfa
shl cx, 0x2f
xor ebx, eax
sar dl, 0x41
sar word [esp + edx*2 - 0x282a], 0xf
add edi, eax
shr dword [esp + edx - 0x1416], 0xd6
or word [esp + edx - 0x1416], 0x58a9
movzx eax, cx
mov dword [esp + edx*2 - 0x2832], edi
ret 8
xor ecx, 0xb713bb99
xor al, 0xa
or eax, edx
xor ebx, ecx
and al, al
xchg dh, dl
sar eax, 0x8c
adc esi, ecx
sal al, 2
ja fcn.00ef1ac1
xor ecx, ebx
ror ecx, 1
dec ecx
mov edx, 0x2ba99727
ror ecx, 1
inc dl
sub edx, edx
movsx eax, dl
bswap ecx
ror al, 0x85
lea ecx, [ecx + edx + 0x5812b429]
xor ebx, ecx
inc ax
sub dx, 0xf01f
dec edx
add edi, ecx
movzx edx, byte [edx + esi - 0xfe5]
sal al, 1
movzx ecx, ax
push ecx
lea esi, [esi + eax*4 - 0xd]
lea eax, [eax*8 + 0x2c2bfc16]
xor dl, bl
shl ax, 0x86
sub dl, 0x22
neg dl
neg byte [esp + ecx*2 - 2]
pop eax
sbb eax, ecx
not dl
adc cx, cx
xor dl, 2
xor ecx, eax
sar al, 0x21
xor bl, dl
ror ecx, cl
jae 0xf7e5ce
out 0x83, eax
mov dword [ebp + 0x72], ebp
insb byte es:[edi], dx
sub eax, 0x3b1fca16
jne 0x17309c6
sar byte [edx + 0x386d170f], 0xc0
mov edx, 0x3841331f
sar byte [edx + 0x90f2f33], 0x13
xchg edi, eax
push esi
jae 0x173095e
cdq
mov dh, 0xf7
xor eax, 0xa0c3112f
add ebp, edi
loope 0x1730a1b
aam 0x7f
popfd
int1
mov ah, 0xa4
push dword [ecx]
mov word [esi + 0xf91fbcb], cs
inc esp
push cs
fild word [edi + 0xe440f8d]
inc esp
push cs
xor eax, dword [eax - 0x57]
cmove ecx, dword [esi]
sti
daa
popfd
cmove ecx, dword [esi]
jae 0x1730981
ucomiss xmm0, xmm4
pop ecx
pop ds
xor eax, 0x227554b6
and al, 0x27
add ebp, dword [ebp + 0x68]
iretd
push 0x54
mov dword [0x74f19d25], eax
push eax
cmp esi, dword [edx]
mov word [esi + 0xc553f0f], cs
inc esp
push cs
div dword [ebx]
imul ecx, dword [esp + eax*2], 0x61886b0e
or al, 0x44
push cs
xor ecx, dword [edi + 0x75]
or al, 0x44
xor ebp, dword [ecx + 0xc]
inc esp
push cs
imul ecx, dword [eax + 0xe440c61], 0x33
dec edi
jne 0x1730a36
inc esp
push cs
wait
inc ebx
ucomiss xmm0, dword fs:[ebx]
sub al, 0x4b
dec esi
jns 0x1730a08
rcr dword [ecx - 0x795da92f], 1
call 0x93ad0ccd
lcall 0x9824, 0xde30c1b2
cdq
rcl dword [esi - 0x5e]
xchg al, ch
mov word [edx], es
cmp dl, byte [edx + 0x30c1b29a]
fisub word [eax + ebx*4]
inc esi
cli
mov edi, 0x2760f1eb
mov cl, 0xe2
fild dword [ebx]
push ds
fcmovbe st(0), st(2)
fbld tbyte [ecx + ebx*2 - 0x6b]
out dx, al
dec esp
lcall 0xa173, 0x5d85f52c
or eax, 0xfc6ce002
push ds
mov word [ebp + 0x20], gs
mov esp, 0x1872f455
das
invalid