Function at 0x8b7d30
Capabilities:
Encrypt data using speck

Disassembly:
mov dword [ecx + esi - 0x7857ffff], eax
adc cx, cx
jmp edi
call fcn.00718e12
shld ax, dx, cl
rol dword [esp], 0x73
mov word [ebp], ax
mov edx, 0x59a3c62f
lea esi, [edx + esi - 0x59a3c633]
mov eax, edx
mov ecx, dword [esi + eax - 0x59a3c62f]
jb 0x84cb6e
push ebp
mov dword [esp + 0xc], 0x2d18cb4f
mov edx, dword [esp + 8]
mov ebp, 0xbab81934
jl 0x821030
mov dx, word [esi]
mov cx, word [esi + 2]
mov eax, 0x761db380
or eax, 0x5c937f37
lea esi, [esi + eax - 0x7e9fffb5]
push eax
js 0xb9bff6
and dx, cx
ror byte [esp + eax - 0x7e9fffb5], 0xe7
or dword [esp + eax - 0x7e9fffb7], 0x99fc035
not dx
xadd dword [esp + eax - 0x7e9fffb7], eax
mov word [eax + esi - 0x7fbfffb7], dx
mov edx, 0xf2132123
shr al, 0x22
mul dl
mov edx, dword [eax + ebp - 0x7fbf0627]
jae 0xbb642e
lea ebp, [eax + ebp - 0x7fbf0623]
mov ecx, dword [esp + eax - 0x7fbf0627]
push eax
bswap eax
xor edx, ebx
jmp fcn.00bb33b6
lea ebp, [ebp*2 + 0x16242ea2]
mov ebp, dword [esp + ebp + 0x746b9ef6]
jle 0x7d173c
cdq
xor ecx, ebx
cwde
not ecx
mul edx
xor dl, dl
or edx, 0x4992c8b0
rol ecx, 1
not ecx
add edx, dword [esp + eax*2]
xadd dword [esp + eax*4], edx
bswap ecx
sbb ecx, eax
mov byte [esp + eax + 3], ah
rol dl, 0x44
xor ebx, ecx
add edi, ecx
ror al, 0xa5
sub byte [esp + eax*4], ah
mov dword [esp + eax*2], edi
ret
push edx
pushfd
mov edx, 0x589b3aa8
or edx, 0xef0694a9
ja 0x81e603
mov ecx, 0x9a289701
movsx edx, cl
movzx ecx, byte [esi + edx - 1]
xor cl, bl
movzx eax, dx
add cl, dl
xor cl, 0x3c
bt edx, 9
mov esi, eax
btr edx, esi
not cl
xadd ax, dx
shr al, 0x41
adc cl, dl
sub esi, edx
rol cl, 1
push edx
xor bl, cl
mov dword [esp + edx - 1], 0xa53b179e
lea ecx, [esp + ecx + 4]
mov edx, dword [edx + ecx - 1]
lea ecx, [esi*4 - 0x27bc1f4]
shr byte [esp + esi*2 + 2], 0xc4
mov ecx, edx
movzx edx, word [esp + eax*2 - 2]
btr esi, eax
xchg ecx, edi
cwde
not al
push eax
xor esi, ecx
and byte [esp + eax*4 - 0x3f6], al
call fcn.008721cc
shl ax, 1
sar ax, 0xcd
xor ebx, ecx
imul dl
pop eax
adc edi, ecx
mov ecx, eax
cdq
mov eax, dword [esi + edx]
sal edx, 0xb3
xor edx, dword [esi + edx + 4]
lea esi, [ecx + esi - 0x2c0013a1]
shr ecx, 0xc1
and eax, edx
movsx edx, cl
ror cl, 3
bswap edx
not eax
imul ecx, ecx
ror byte [edi], 1
scasd eax, dword es:[edi]
leave
xchg dx, cx
jo 0x7c97ad
cwde
pop eax
mov al, byte [0x50217b1f]
movsb byte es:[edi], byte [esi]
mov ecx, 0x80217ce3
dec esp
jno 0x8b7ddf
jl 0x8b7e1f
and eax, ebp
mov cl, bh
jecxz 0x8b7e7f
call 0x7d6f778b
and dword [eax + 0x40], esp
or ebx, esp
jl 0x8b7e2b
mov al, 0xb8
stc
jecxz 0x8b7e8b
and eax, esp
mov al, byte [0x217ce3f1]
dec eax
pop esp
jno 0x8b7dfd
jl 0x8b7e3d
sub byte [ecx], dh
daa
daa
inc esi
sar dword [ebx], 3
in eax, dx
mov ebp, 0x8fb87961
mov cl, byte [esi + 4]
mov es, word [eax + eax]
add byte [eax], al
adc eax, 0x72051691
sal dword [0xcde1851f], cl
xchg edi, eax
fnstenv [eax]
test dword [ebp + 0x4c], ebx
out dx, eax
fnstenv [eax]
test dword [ebp + 0x44], edi
invalid
xor byte [ebp - 0x2610b3a3], al
xor byte [ebp - 0x2638bb83], al
xor byte [ebp - 0x26d84b0f], al
xor byte [ebp - 0x2658bbe7], al
xor byte [ebp - 0x2648326b], al
xor byte [ebp - 0x26c0fadf], al
xor byte [ebp + 0x6d79b5fd], al
pop esi
add ebp, dword [ebx + 0x217b1f77]
inc edi
or esp, dword [esi - 0x1d]
jl 0x8b7e96
inc dword [edi + 0x7e]
jecxz 0x8b7ef6
and edi, esp
salc
jecxz 0x8b7efc
jl 0x8b7ea2
and edi, ecx
scasd eax, dword es:[edi]
out 0xe3, al
jl 0x8b7ea8
iretd
mov edi, 0x7ce3a6c7
and dword [edi + 0x7ce35e77], edi
jl 0x8b7eae
mov edi, 0x7ce35e77
and edi, esp
invalid
jecxz 0x8b7f14
and dword [edi + 0x46275436], ebp
sar dword [esp + esi*4 - 0x13], 0xbd
popal
into
jg 0x900d35
mov ebp, 0x8f0fce61
mov cl, byte [esi + 4]
mov es, word [eax + eax]
add byte [eax], al
mov byte [0xc5051691], al
les esi, [0x5b36851f]
xchg ecx, eax
push ss
add eax, 0x1f35c4c5
test dword [esi], esi
pop ebx
test al, 0xd9
xor byte [ebp - 0x265f0d5e], al
xor byte [ebp - 0x2637f4ce], al
xor byte [ebp - 0x2627b4fa], al
xor byte [ebp - 0x26cf85ba], al
xor byte [ebp - 0x265f2d32], al
xor byte [ebp - 0x26ef346e], al
xor byte [ebp + 0x6df6722e], al
pop esi
call 0x3f2dc8a1
stc
shr eax, 1
loop 0x8b7e92
fidiv word [ecx - 0x78]
dec edx
cwde
mov byte [edx + 0x26], cl
cwde
xor byte ds:[edx], 0x16
cli
cwde
xchg byte [edi], al
out dx, al
fcom st(7)
or bl, byte [ebx]
hlt
jecxz 0x8b7f1d
pop es
mov ebp, 0xcb332725
adc byte [esi + 0x6b], cl
pop ecx
les ecx, [ebp + 0x7d60b712]
sub eax, 0xed7c2010
jecxz 0x8b7f86
imul ebx, dword [ecx - 0x3c], 0xffffff8d
adc dh, byte [edi + 0x102d7d60]
and byte [ebp + ebp*8 - 0x1d], bh
pop edx
sbb esp, dword [edi + 0x6273bf9c]
adc eax, 0x5389e894
inc esp
movsb byte es:[edi], byte [esi]
and dword [esi + eax*2 + 0x45], ebx
div dword [ecx + 0x58d79d8d]
pop ss
jbe 0x8b7ef2
lea ebx, [ebp + 0x761758d7]
lodsb al, byte [esi]
mov byte [edx - 0x6d], bl
dec esp
jb 0x8b7fae
inc esp
mov ch, 0x4a
jne 0x8b7f3f
fmul st(1), st(0)
std
out 0x1a, al
les esi, [edx + 0x62]
mov edx, edx
mov edi, 0x72632cb3
inc edx
popal
pop edx
retf
loop 0x8b7f15
cwde
ja 0x8b7f96
cdq
jecxz 0x8b7f63
lodsd eax, dword [esi]
pushal
dec ebp
cmp ch, byte [esi - 0x61]
inc ebx
lahf
inc cx
xchg dword [ebp - 0x49a84f24], ebx
les ebx, [ebp + 0x6269c141]
add eax, 0x30837f5a
arpl word [esi - 0x34b9ae36], dx
hlt
inc esi
retf
push 0x40
js 0x900db2
fnstsw word [0xcd743d23]
mov ebp, esi
call 0x5bd773a8
retf
or dword [esi], 0xfc77776
in eax, 0xc5
rcl dword [eax - 0x84563ac], 0xc2
sub al, 0x60
das
test dword [esi + 0x3dc74810], ebp
insb byte es:[edi], dx
ficomp dword [edx + 0x7c32cbfa]
fdivr dword [esi]
xor dword [edi + 0x7f], eax
out 0xe8, eax
adc bh, byte [eax - 0xa]
mov byte [0x90d0cd1f], al
scasb al, byte es:[edi]
pushfd
sbb byte [esi], bl
jp 0x900e1b
jo 0x900dc3
adc byte [ebp + 0x27], bh
test al, 0x90
mov cl, 0
mov bl, 0x64
xchg byte [edi - 0x7ad6d081], dl
test dword [0x90740b84], ebp
sub dword [eax], esp
cld
mov word [edx - 0x1ca185d4], gs
clc
jnp 0x900e7d
xor dword [eax], edi
pop ecx
jp 0x900e3a
push edx
xor dword [edi + 0x1d], 0x75d2b91
sbb eax, 0x8e8895f4
stosb byte es:[edi], al
inc esi
out dx, al
and eax, 0x31bbf937
dec edx
in al, 0x69
mov gs, word [edx + 0x3725ee46]
stc
mov ebx, 0x69e44a31
push es
adc al, 5
pushfd
xchg esi, esp
ficom dword [edx + edi*8]
dec esi
pop esp
add edx, dword [eax - 0x651e5efd]
retf
xchg bl, dl
shl dword [edi], cl
cmpsd dword [esi], dword es:[edi]
or ch, 0xb0
clc
int1
jno 0x900e76
xchg esi, eax
jno 0x900e5c
loop 0x900e8d
stc
cmc
mov dword [edi + 0x1cd45659], ecx
pop edx
inc ebx
fcmove st(0), st(4)
dec esp
popfd
cmpsb byte [esi], byte es:[edi]
dec esi
push 0x63
cmp eax, dword es:[esi - 0x34]
fbld tbyte [bx + si + 0x607f]
push ebp
add ebx, dword [ecx + ebp*2 + 0x5c11e3d7]
js 0x900eb5
xor byte [0xff743261], 0xd2
call edx
jmp 0x900e81
xchg ebx, eax
jne 0x900e6f
pop ecx
pop ecx
pushal
invalid
mov ecx, 0x753c288
mov dl, al
push ebx
pop es
mov edi, 0x7dcf61cd
mov esi, 0x94a8f67a
mov ebp, 0xa94741de
int1
and dh, byte [ebx]
in eax, 0xb8
aam 0x9b
add byte [eax], bh
mov bl, 0xbe
cmc
les esp, [eax]
adc cl, byte [eax - 0x38]
call [ebp - 0x46]
jns 0x900ee6
pop esi
loop 0x900f2d
mov bh, 0xf0
push 0x2e282b19
sbb ch, dl
test al, 0x9d
lea ebp, [ebp - 0x4c5afa2a]
stosd dword es:[edi], eax
jp 0x900e8c
mov ah, 0x37
jmp 0x821cf973
fisttp word [edx - 0x43a81cea]
packuswb mm7, mm6
push ss
nop
int3
invalid
and dword [esp], ecx
xor al, 0x91
or edx, dword [esp]
sbb al, dl
push edx
rol al, 1
xadd cl, ch
push edx
dec dx
xor al, 9
not edx
or dword [esp + edx*2 - 1], edx
or cl, ch
ror al, 1
xor bl, al
bswap edx
rol edx, 0xee
lea eax, [esp + eax + 0xc]
sbb dword [esp + edx - 0x38], ecx
xchg ecx, edx
and dl, dh
mov edx, dword [eax + ecx*2 - 0x80]
lea eax, [ecx*8 + 0x1e078018]
lea edi, [eax + edi - 0x1e07821c]
or ecx, dword [esp + ecx - 0x3c]
sub byte [esp + eax - 0x1e078218], cl
mov dword [eax + edi - 0x1e078218], edx
ror word [esp + eax - 0x1e078218], 0x48
btr eax, ecx
movzx edx, cx
pop ecx
pop eax
pop ecx
jae fcn.007a41b7
shr ax, 0xc5
ror eax, 0xbe
rol edx, 3
not ecx
xor ebx, edx
cbw
add ebp, edx
ror cx, cl
adc ecx, ecx
rdtsc
and cl, ch
lea ecx, [ecx*4 - 0x71465f]
jle 0xc048c0
dec ebp
or dword [ebx], esi
cmp byte [eax - 0x1f], al
mov dl, 0x8a
xor al, 0xbf
fimul word [edx + 0x6e]
xor esi, dword [edi + edi*4]
fisubr word [edx - 0x3a]
jmp 0xbb64a0
ret
sbb edi, 8
mov dword [edi + 4], eax
lea eax, [ecx*8 - 0x15e56ae8]
ror ecx, 0xb2
sub ecx, 0xda8c99aa
mov dword [eax + edi - 0x4e71e220], edx
xor eax, eax
sbb eax, ecx
jbe fcn.007a41b7