Function at 0x1244477
Capabilities:
Encrypt data using speck

Disassembly:
dec ax
ror edx, 2
bswap edx
jmp 0x17445f9
neg al
push edx
or dword [esp], edx
sbb al, 0x9f
xor bl, al
sub edx, 0xaadc6a4
lea eax, [esp + eax + 4]
xchg byte [esp + 2], dl
shl dx, 0x2e
dec dx
mov byte [eax], cl
shr dword [esp], 0xd
lea eax, [edx + edx*2 + 0x34a85683]
mov dword [esp + eax*8 - 0x32eeb400], edi
ret
jmp 0x136abf0
ror al, 1
and dx, dx
xor al, 0x99
jmp 0x123612f
call fcn.01395521
mov eax, 0xa620049e
neg ecx
neg eax
lea ecx, [ecx + eax*4 - 0x6ad5c0db]
dec word [esp + eax - 0x59dffb60]
lea edx, [eax + eax*8 - 0x1f57efdc]
rol ecx, 2
xor ebx, ecx
call fcn.01272d89
xor eax, ebx
mov edx, 0xe1065939
not dx
dec eax
bswap eax
movzx ecx, dx
xor eax, 0x8e9fb093
not eax
shr edx, 0x67
adc cx, dx
and cx, cx
xor ebx, eax
neg cx
add edi, eax
lea ecx, [ecx + 0x289856b1]
xchg dl, cl
movzx edx, byte [edx + ebp - 0x1c20d99]
jmp 0x1238b38
xor dl, 0x17
sar ecx, cl
dec dl
and cx, cx
neg dl
movsx eax, cl
xor bl, dl
add ecx, 0x7bb9650c
jb 0x121f6b2
dec eax
adc edx, esp
not ecx
movzx ax, byte [edx]
ror ecx, 0x1c
movsx edx, cl
jae 0x174f536
push 0xf20ffba2
inc ecx
mov esp, 0xcc259184
add word [esp + 1], 0xef10
dec ecx
mov ebx, dword [edx]
movsx edx, byte [esp + 4]
inc ecx
mov cl, byte [edx + 8]
inc ecx
pop ecx
inc ebp
movzx edi, cl
inc ecx
movzx esi, ah
dec eax
sal ebx, cl
jmp 0x135b04f
not edx
xor ebx, edx
add edi, edx
add eax, 0x68acf19a
mov eax, dword [esi + ecx*2]
or ecx, ecx
lea ecx, [ecx + ecx - 0xff15fc2]
sar ecx, cl
mov ecx, dword fs:[eax]
mov edx, 0x32b229bb
mov dword [edx + esi - 0x32b229bb], ecx
lea ecx, [edx*4 + 0x6b89ad37]
xadd dl, dh
sal cl, cl
jmp edi
inc eax
movsx edx, ch
inc ecx
xor esi, eax
jmp 0x1384d01
rol edx, 0x6b
dec al
shl edx, 0x8d
jb 0x123c642
ror al, 1
call fcn.01235c13
inc ebp
or bh, ah
dec ebx
mov dword [edx + ecx*4 + 0x3403d17a], ebx
jp 0x135cbbd
inc bp
mov dword [edx + esi*2 - 0x66057f72], ebp
inc ecx
movzx ebp, di
dec eax
bswap ebp
inc edx
mov esi, dword [esi + esi - 0x3302bfb9]
inc edx
sal byte [esp + edi - 0x564fb0b1], 0xa7
dec edx
mov dword [esp + edi - 0x564fb0b5], ebp
dec edi
lea esi, [esi + edi - 0x564fb0b1]
inc edx
movsx ecx, word [esp + edi - 0x564fb0b3]
je 0x127bce2
inc ebx
mov esi, dword [esi + ecx + 0xd00f45e]
inc ebp
mov ebp, edi
call fcn.01351682
dec ebp
not ebp
ror al, 0xe6
dec esi
mov dword [esp + ecx*2 - 0x322dc3a], eax
call fcn.0122b5ec
aam 0x42
cmp bl, bh
jbe 0x135cc09
mov dl, 0x8f
mov eax, 0xce8d5138
dec eax
lea edi, [eax + 0x35b98f1e]
movzx esi, di
rdtsc
dec ebp
lea edx, [edx + esi*8 - 0x702b8]
jmp 0x17c3ce5
xor dword [eax - 0x13], ebp
rol dword [ebp - 0x2ed6dd02], 0xc1
test esi, edi
pop ss
dec edi
mov cl, 0xc1
test esi, edi
jo 0x135cc54
ffree st(1)
test esi, edi
push ss
pop es
adc byte [ebx - 0x374fffc7], ah
xchg esp, ecx
or al, 0x4b
add byte [eax], bl
pop es
lodsd eax, dword [esi]
test dword [eax + 0x2370c22b], edi
ret 0xeaf3
or eax, 0xccc81106
loop 0x135ccb7
add byte [edx + 0x23], ah
out dx, eax
pop ds
inc eax
leave
iretd
xor dword [eax + 0x7293fdfe], esp
and ch, byte [edx - 0x3f]
mov ah, 0x68
std
and eax, 0x64d9ac8e
xchg ebx, eax
mov dh, 0xab
ror ebx, 0xd2
pushal
inc ebp
sub dword [ebp - 0x5b], esp
lodsb al, byte [esi]
retf 0x38a3
xor dl, bl
rol dl, 1
dec ecx
jns 0x124d7ce
dec esp
add ebx, edx
inc ecx
mov edi, 0x7f1fe79e
dec eax
dec esi
dec edx
mov dword [esp + ebp], 0xd2905a96
dec esi
mov dword [esp + ebp*2], ebx
ret
not esi
xor esi, 0x9f859392
shl dword [esp + ecx*4 + 2], 0xbc
and ebx, dword [esp + ecx*2]
not esi
rol esi, 2
inc esi
dec esp
mov dword [esp + ebx*8], eax
dec eax
lea ecx, [edx + 0x55074a92]
call fcn.01367e10
xor al, 0xbd
jmp 0x13859dd
neg al
jmp 0x1295b0a
jmp 0x135018f
and cl, cl
push eax
neg edx
pop eax
sub edx, 0x7092dc0a
ror edx, 1
xor ecx, ecx
jns 0x1267ed6
inc edx
xor dword [esp - 0x8003], edi
dec eax
or eax, ebp
inc ecx
pop eax
dec ecx
and edi, 0xe998b820
dec eax
arpl di, di
dec esp
adc ebx, edi
mov edi, 0x3cb23239
inc cx
dec ebp
inc ecx
jmp ebx
mov cx, ax
shr edx, 0x87
and edx, 0x180ee5a3
movzx eax, byte [edx + ebp - 0xee59e]
sbb edx, edx
lea ebp, [ebp + edx*2 + 6]
jle 0x17cbf1f
rol byte [esi + 0x28], 0xfe
je 0x174f571
mov eax, 0x2b6c60ee
loopne 0x174f5b6
jbe 0x174f598
fisub word [edi]
out 0xf6, eax
fild dword [edi + 0xf]
mov dh, 0x8c
xor al, 0xe5
sar edi, cl
dec dword [edi - 0x73]
mov ah, 0x26
out 0xd3, al
invalid
iretd
dec eax
and esi, edi
inc ecx
mov dword [edx + esi*8 - 0x702ac], eax
inc esp
mov ebp, esi
inc ecx
mov esp, 0x4904e525
inc edx
mov dword [esi + edx - 0xe056], edx
dec edx
lea eax, [ebp*2 + 0x3994a015]
inc ecx
push esp
inc ecx
rol ch, 6
inc edx
mov eax, dword [esi + esi - 0xe056]
and si, 0x13a0
dec esi
lea esi, [esi + esi + 4]
sal si, 0x6c
movsx ebp, word [esp + esi*4 + 3]
js 0x1382ec0
inc ecx
xor eax, eax
inc ecx
push ebp
inc eax
movsx ebx, di
bswap eax
ror eax, 3
xor eax, 0x612fcfbc
call fcn.0123dee2
xor al, bl
or edx, 0xeaa7c3a5
jp 0x1384d2f
inc ecx
pop eax
inc ebp
xadd bh, cl
inc ecx
mov dword [edx + esi - 0xfff5], ecx
dec ebp
lea edx, [edx + esi*8 - 0x7ffc4]
dec eax
lea ecx, [edi + ebp + 0x558eba9f]
inc eax
sar ch, cl
inc ecx
and edi, 0xc0873984
inc ecx
jmp ebx