Function at 0xfde548
Capabilities:
Encrypt data using speck

Disassembly:
jne 0x100eb8a
mov ecx, 0x58a6f628
movsx edx, cl
mov ecx, dword [edx + ebp - 0x28]
movzx eax, dx
lea ebp, [edx + ebp - 0x24]
push edx
pop edx
btc ax, dx
xor ecx, ebx
xor edx, edx
adc ecx, 0xfb395914
bt ax, dx
cwde
sar al, 0xc3
bswap ecx
idiv eax
rol eax, 0xc
adc ecx, 0x88197cb3
ror ecx, 3
rol eax, 0x2c
xor ebx, ecx
xor eax, 0x89f8ca3
fnstenv [0x89f8ca3]
cmovnp dx, ax
not dl
adc edi, ecx
mov ecx, eax
mul ax
dec ax
movzx ecx, byte [ebp + edx*8 - 0x26a10]
sub eax, 0x6bbc7dbb
lea ebp, [ebp + edx*2 - 0x9a83]
btr edx, edx
shr eax, 0xe8
sbb eax, eax
xor cl, bl
ror edx, 0xf9
xor dl, ah
rol cl, 1
call fcn.00f423b6
mov al, byte [0x7bc1cd81]
inc eax
jb 0xcf0eb7
jge 0xcf0f70
invalid
mov eax, 0xb03deede
mov ebp, edx
mov bh, 0x1c
dec edi
jne 0xcf0ee3
test byte cs:[esp + edi*2 + 0x73], bl
vunpcklpd xmm0, xmm0, xmmword [ebp - 0x3b]
outsd dx, dword [esi]
out 0x8b, al
jge 0xcf0ef1
mov eax, 0x7727ae0f
aad 0x3a
movsb byte es:[edi], byte [esi]
jbe 0xcf0f64
xor bl, byte [0x1c0fbe51]
out 0xcd, al
jmp [ecx + 0x4d]
ja 0xcf0f09
inc eax
sbb byte [ebx], 0x6d
mov dh, 0x6e
and eax, 0x8d8f83cb
std
push eax
out 0xdf, al
add ch, ah
inc bh
salc
add dh, byte [eax]
and dword ds:[ebp + 0x33], edx
dec ebx
lock add cl, byte [eax + ebx*2]
and al, 0x5f
aaa
shl dh, 1
dec ebp
jle 0xcf0fcf
invalid
fcmovnb st(0), st(7)
pop ecx
invalid
mov al, byte [0xa3927bc4]
dec edx
insb byte es:[edi], dx
mov esp, 0x83e636e3
cmp byte ds:[ebx], cl
invalid
sar cl, 0x67
not edx
lea edx, [edx + eax*4 + 0x4a7af362]
bswap edx
sub eax, ecx
not eax
jne 0x10c1708
syscall
inc ecx
push esp
push ecx
dec eax
mov dword [esp + 8], 0xe08d5442
dec eax
lea esp, [esp + 8]
call fcn.01189bc7
xor eax, ebx
sal dx, 0xa9
neg dl
dec eax
and cl, 0xaf
btc ecx, ecx
not eax
xor eax, 0xdd147d06
dec eax
bswap eax
xor eax, 0xbba55799
jmp 0x1a3bd4d
jns 0x10dc6fb
lea esi, [esi + ecx - 0xfea329c]
xor eax, ebx
rol eax, 1
xor eax, 0x35aef633
dec eax
sub ecx, ecx
jnp 0xd0a278
movzx edx, cx
xor eax, 0x552c31a8
or dl, dl
xor ebx, eax
bt ecx, 0x8b
adc edi, eax
neg edx
xor ecx, edi
jmp ecx
shld edx, eax, cl
mov ecx, 0x9c9444b5
movzx eax, cl
mov dword [eax + edi - 0xb5], edx
mov dword [esp + eax*4 - 0x2d4], ecx
mov ecx, dword [eax + ebp - 0xb5]
lea ebp, [ebp + eax - 0xb1]
bts ax, ax
cdq
adc dword [esp + eax - 0xb5], eax
xor ecx, ebx
bswap ecx
or dl, 0x81
rol ecx, 2
xor al, 0x17
jg 0xf8b197
cdq
xor ecx, 0x441ed519
call fcn.00e69b22
xor ecx, ecx
shr dword [esp], 0x49
call fcn.00fc5943
lea edx, [edx + eax*8 + 0x1d9f3238]
call 0x1a3dc31
cbw
mov al, byte [edx + ecx - 0x22ba3e00]
movsx ecx, dl
seta cl
lea esi, [edx + esi - 0x22ba3dfe]
seto dl
inc edx
mov word [edx + esi - 0x22ba3e01], ax
call fcn.00ef1cb4
mov ecx, dword [ebp]
mov eax, 0x5c8a0b0f
neg eax
adc ebp, 3
inc eax
xor ecx, ebx
movsx edx, al
sub dx, ax
neg ecx
imul dx, ax
xor ecx, 0xe9f9a1a
btc dx, dx
mul eax
dec ecx
rol ecx, 1
ror edx, 0xe3
adc al, ah
and eax, eax
lea ecx, [ecx + edx - 0x74e1db7f]
xor ebx, ecx
rol edx, 0xe2
sub ax, ax
not al
adc edi, ecx
mov edx, dword [esi]
mov eax, dword [esi + 4]
push 0x169fc4bc
add esi, 4
sal dword [esp], 0xa9
jbe 0xcf0e9e
xor byte [edx + ebx*4 - 0xc], ah
invalid
ror ecx, cl
not ecx
rol eax, cl
xor ebx, eax
add edi, eax
shr ecx, cl
mov eax, 0x4a01ab34
mov ecx, dword [esi + ecx - 0x1d4ba300]
jno 0xf9b08f