Function at 0x8ce5a1
Capabilities:
Encrypt data using speck

Disassembly:
shr eax, cl
movsx ecx, dx
sal dl, 0x42
xor ecx, ecx
mov dword [ecx + esi], eax
shl dl, 0x24
xor ecx, ebp
jmp ecx
mov eax, 0x2d047d12
lea eax, [eax - 0x34d0ff7]
mov eax, dword [ebp + eax - 0x29b76d1b]
jmp 0x7e4f7b
ror eax, 1
btc dx, dx
inc eax
call fcn.008c14ff
add ebx, dword [edx + 0x20174eb]
and dh, bh
xor ebx, dword [edi - 0x1dfd5d7]
xor ecx, dword [edi - 0x1dfe5e7]
xor edx, dword [ebx - 0x316114ff]
xor edx, dword [edx - 0x5d]
mov byte [0xc21fcc76], al
or bh, cl
mov word [ecx - 0x25], gs
out 0x85, eax
xchg ebp, eax
ret 0x1529
call fcn.0076d880
adc ebx, dword [ebp + 0x1590f7e7]
pop esi
pop ss
fdivr st(0)
clc
pop ebp
pop esi
pop ss
fmul st(6)
fdivr qword [ecx]
pop esi
pop ss
fdiv dword [eax + ebx*4 - 0x67fdcc39]
mov ch, 0x75
sahf
daa
sbb dh, dh
in eax, dx
add eax, eax
mov eax, 0xecf54957
jne 0x7e4f96
cwde
invalid
popal
mov cl, 0xbc
jns 0x7e5009
push cs
or al, 0xf6
retf
push cs
div dword [edx + 0x464f1a98]
fdiv dword [esi + 0x7d]
jmp [edi - 0x7875d73d]
shl al, 0xe1
lea edi, [edi + eax*4 - 0x3c4380ec]
xor edx, ebx
sal eax, cl
add eax, 0xe310f61d
sbb edx, 0xf0b55bb4
rol edx, 1
neg ecx
shl eax, cl
sar eax, 0x69
neg edx
sal al, 0xe2
and eax, 0xd798a03b
cwde
not edx
xor ebx, edx
and ecx, eax
rol eax, 0x37
adc ebp, edx
mov eax, dword [eax + esi - 0x7fffc0]
movsx edx, cx
add edx, edx
or cl, byte [esi + 4]
add esi, 2
lea edx, [edx + edx*4 - 0xeda0a49]
sar dl, 0x47
js 0x71ffa6
jmp 0x77e8b8
neg eax
sub edx, edx
jno 0xb4df39
neg cx
mov edx, dword [ecx + esi - 0x688636b]
bts ecx, ecx
mov dword [esp + ecx - 0x6886b6b], ecx
dec byte [esp + ecx*2 - 0xd10d6d5]
mov eax, dword ss:[edx + ecx*2 - 0xd10d6d6]
xadd word [esp + ecx*4 - 0x1a21adac], cx
mov edx, dword [esp + ecx*8 - 0x34435358]
sal cl, 0x41
mov dword [esi + ecx - 0x6886ad6], eax
setnp byte [esp + ecx - 0x6886ad6]
push edx
je 0xb7ad70
mov eax, dword [ecx + edi - 0x6886ad6]
xadd edx, ecx
adc ecx, 0xb88c0f26
lea edi, [edi + edx - 0xd1140a8]
cmovb ecx, dword [esp + edx*4 - 0x344502ac]
sar cx, 0x85
xor eax, ebx
jmp 0x8b2f8b
xor cl, ch
dec eax
sar dx, 0xe
shl edx, cl
bswap eax
bts edx, 0xbf
xor eax, 0x13329331
bt ecx, 0xb1
xor ebx, eax
call fcn.0083db15
mov edx, 0x55960db3
movzx eax, byte [edx + ebp - 0x55960db3]
mov ecx, edx
xor al, bl
rol al, 1
xadd cl, dh
or ecx, ecx
not al
bswap ecx
push edx
dec al
rol al, 1
xchg byte [esp + edx - 0x5596b3b3], cl
bt dx, cx
shr ecx, cl
xor bl, al
and byte [esp + ecx*2 - 0x3000], ch
lea eax, [esp + eax + 4]
movzx cx, byte [eax + ecx*2 - 0x3002]
mov word [esi + edx - 0x5596b3b5], cx
jl 0x83b026
mov edx, dword [ebp + edx - 0x5596b3b2]
inc dword [esp]
xor edx, ebx
rol edx, 1
push 0x8e95ad8d
mov ecx, dword [esp + 1]
shr cl, 0xa7
neg edx
dec edx
shl word [esp + ecx - 0x568e9501], cl
sub byte [esp + ecx - 0x568e94fe], ch
neg cx
rol edx, 1
inc byte [esp + ecx - 0x568e6afe]
movsx eax, cx
xor ebx, edx
lea eax, [ecx + 0x542dbca1]
bswap ecx
rol dword [esp + 3], cl
add edi, edx
add dword [esp + 4], eax
cwde
movzx eax, byte [ebp + eax*2 - 0x4f3b]
adc ebp, 5
shl byte [esp + 2], 6
movzx edx, cx
xor al, bl
rol al, 1
and dl, 0x33
or dword [esp + edx*2 - 0x11c22], 0xecac2c3c
inc ecx
not al
rol al, 1
not al
shl cx, 0xa1
rol al, 1
add al, 0x90
shl cl, 0xc1
adc word [esp + edx - 0x8e0d], cx
xchg word [esp + edx - 0x8e11], dx
xor bl, al
not dl
lea eax, [esp + eax + 8]
ror ecx, 0x99
shl cx, 0x6c
movzx dx, byte [edx + eax - 0x7ca3]
mov word [esi - 4], dx
movzx edx, byte [esp + 1]
lea esi, [esi + edx*2 - 0x28]
movzx eax, cl
sub dword [esp + edx - 0xe], edx
sub ecx, ecx
pop eax
pop eax
je fcn.008001e8
jmp 0xb7f803
inc al
mov eax, dword [ecx + eax - 0x5fa71a74]
lea edx, [edx*2 + 0x3a2aa79f]
movzx ecx, dx
setl cl
lea edi, [edi + edx - 0x2f77116f]
lea edx, [edx + edx*2 - 0x176f77fa]
xor edx, 0xb717a791
mov dword [edi + ecx - 0x1100], eax
mov eax, dword [esi + ecx - 0x1100]
not ecx
neg edx
adc edx, ecx
lea esi, [esi + edx - 0x3e1dd326]
or edx, edx
xor eax, ebx
rol cl, 0xc6
not eax
xadd dl, dh
adc cl, 0xae
jno 0x7c5ec0
lea esp, [esp + 8]
je 0x8497c2
mov eax, 0xb497b439
call fcn.0087fa5c
mov edx, 0x8189bb28
mov edx, dword [ebp]
mov eax, 0xf636bd14
movzx ecx, ax
mov eax, dword [ecx + ebp - 0xbd10]
push ecx
add cx, cx
add edx, eax
xor cl, byte [esp + ecx*4 - 0x1e8a0]
mov dword [ebp + ecx*4 - 0x1e8ec], edx
neg word [esp + ecx - 0x7a3c]
cmovns ecx, dword [esp + ecx - 0x7a3c]
movzx eax, word [ecx + esi - 0x42ee]
xor ax, bx
or word [esp + ecx*2 - 0x85d8], 0x969e
bt ecx, ecx
dec ax
xor ax, 0xa2a3
shl byte [esp + ecx - 0x42e9], 0xa3
sbb ax, 0xa439
sub ecx, dword [esp + ecx - 0x42ec]
rol ax, 1
lea edx, [ecx + ecx*4 - 0x7543bb72]
add dx, 0x2687
shl ecx, cl
xor bx, ax
neg cl
neg edx
bts edx, 0x92
mov word [edx + ebp - 0x75467943], ax
sbb dl, cl
not word [esp + edx - 0x75467944]
sbb cx, cx
lea ebp, [ebp + edx - 0x75467942]
mov eax, dword [esi + edx - 0x7546794a]
sbb word [esp + edx - 0x75467942], 0x8c2c
inc dx
not ecx
lea esi, [esi + ecx*2 - 0x4a0a0004]
xchg word [esp + edx - 0x75467943], cx
or dl, dl
xor eax, ebx
push edx
sar ecx, cl
xor eax, 0x33b0fe1d
inc eax
shr edx, 0x92
ror eax, 3
dec edx
not eax
cmovg dx, cx
shr cl, 1
bswap eax
xchg edx, ecx
call fcn.0073af58