Function at 0x17262b0
Capabilities:
Encrypt data using speck

Disassembly:
imul ecx, eax
test ax, 0x2126
stc
clc
cmp esi, ecx
jmp 0x1729945
jae 0x127ca15
mov edx, eax
stc
add ecx, ecx
jmp 0x1771ffa
sub edx, edi
sub esi, edi
jmp 0x1730cb0
je 0x175d379
mov ecx, dword [edi + 0x24]
cmp esi, ecx
test ecx, ecx
jmp 0x17739d1
jae 0x17270a6
cmp eax, dword [ebp - 4]
jmp 0x17270a0
jae 0x1756b60
movzx ecx, byte [eax]
shl esi, 8
shl edx, 8
or esi, ecx
movzx cx, ch
inc eax
bts ecx, eax
mov ecx, esi
mov dword [ebp + 8], eax
shr cx, cl
movsx ecx, dx
mov ecx, edx
cmc
shr ecx, 0xb
test di, 0x6923
cmc
imul ecx, edi
cmp esi, ecx
jae 0x17499bf
mov edx, ecx
jmp 0x1203908
jb 0x127c008
mov eax, 1
jmp 0x176af83
inc eax
add cx, bp
mov ecx, edx
test ebp, 0x43933b14
shr ecx, 0xb
cmp esi, edi
imul ecx, dword [ebp - 0x10]
cmp esi, ecx
jmp 0x1749dbe
inc eax
cmc
mov dword [ebp + 8], eax
sar ah, cl
cwde
mov eax, edx
cmp al, 0xaf
stc
cmp edi, ecx
shr eax, 0xb
imul eax, edi
jmp 0x176e2ad
sub edx, ecx
sar ah, cl
sub esi, ecx
bswap ebx
sub ah, 0xd
lea ebx, [edi + 0x204]
rcl eax, 0xc4
movsx eax, ax
mov dword [ebp - 0x14], 0x10
bts ax, cx
mov dword [ebp - 0x10], 0x100
and edi, esi
mov edi, 1
and ax, si
sbb eax, edi
mov eax, dword [ebp + 8]
cmp edx, 0x1000000
jae 0x1775461
cmp eax, dword [ebp - 4]
jmp 0x127bf96
sub edx, ecx
sub esi, ecx
cmp esp, 0x2e55556c
mov edi, dword [ebp - 8]
cmp dx, ax
cmc
mov dword [ebp - 0xc], 0xc
lea edi, [edi + 0xa68]
cmp edx, 0x1000000
jmp 0x127ab7a
jae 0x176ee76
mov eax, edi
and eax, 1
or eax, 2
shl ecx, cl
mov ecx, ebx
test edi, esp
cmp esi, 0x6ae11c99
shl eax, cl
inc ch
mov ecx, dword [ebp - 8]
clc
cmp dh, 0xbd
sub eax, edi
lea eax, [ecx + eax*2 + 0x55e]
mov dword [ebp - 0xc], eax
jmp 0x120d167
lea ebx, [ebx + edi + 0x104]
jmp 0x175b946
jae 0x1756b60
movzx ebx, byte [eax]
cmp sp, 0x4bd5
shl esi, 8
cmp di, 0x25ee
cmc
clc
shl edx, 8
clc
or esi, ebx
jmp 0x1202c7a
sub edx, ecx
sub esi, ecx
cmp edx, 0x1000000
jmp 0x1775168
or esi, ebx
inc ecx
mov dword [ebp + 8], ecx
bts ecx, edx
add cx, di
mov ecx, edx
cmp ch, 0xcd
cmc
shr ecx, 0xb
cmp si, 0x1dfb
jmp 0x1759a1b
shl esi, 8
test bp, sp
clc
shl edx, 8
or esi, ecx
jmp 0x1775453
cmp eax, dword [ebp - 4]
jmp 0x173240a
lea ebx, [ebx + edi + 4]
jmp 0x174a1c5
jae 0x12038fe
cmp ecx, 0x1000000
jmp 0xfb6b9c
mov ecx, dword [ebp - 0xc]
test ch, 0x4d
cmp si, 0x79cd
cmc
sub edx, eax
sub esi, eax
shl ax, 0xe9
test esp, edi
add eax, 0x52f30e0c
mov eax, dword [ebp - 8]
movzx ecx, word [eax + ecx*2 + 0x180]
test ebp, 0x26e243b6
cmp edx, 0x1000000
jmp 0x174c9e6
mov esp, ebp
pop ebp
jmp 0x172ac15
jmp 0x17585d2
mov dword [ebp - 0x14], ebx
jne 0x17585ed
mov eax, dword [ebp - 0x18]
jmp 0x1725d69
jmp 0x1772107
jae 0x1730f00
cmp eax, dword [ebp - 4]
jmp 0x1730f2c
inc eax
jmp 0x172a763
jae 0x1756b60
movzx ecx, byte [eax]
jmp 0x120694e
mov eax, dword [ebp - 0xc]
or edi, 0x4a827d2a
movzx edi, word [eax + ecx*2]
stc
clc
cmp edx, 0x1000000
jmp 0x172ac3f
sub edx, eax
test di, di
stc
jmp 0x1771ff2
cmp edx, 0x1000000
jae 0x1756b62
mov edx, dword [ebp - 4]
clc
cmp ebx, 0x1325a06
cmp dword [ebp + 8], edx
jmp 0x1756b5a
jmp 0x1203908
push ebp
bts edx, esi
mov ebp, esp
sete dl
btc edx, 0xbb
shrd edx, eax, 0x8c
lea esp, [esp - 0x18]
cmp sp, bx
mov dl, ah
push ebx
push esi
push edi
adc esi, 0x505621a9
mov edi, ecx
adc cx, 0xc7e
add ch, 0x5b
add bx, si
mov ecx, dword [ebp + 8]
mov edx, dword [edi + 0x1c]
shld ebx, ebp, 0x53
mov esi, dword [edi + 0x20]
dec bh
bt bx, dx
bts bx, dx
lea ecx, [ecx + eax]
jmp 0x1770ee9
jae 0x1756b60
pop edi
movzx eax, si
pop esi
mov eax, 3
pop ebx
jmp 0x1731cd8
shl esi, 8
test si, 0x5823
or esi, ebx
stc
mov ebx, dword [ebp - 0x14]
stc
cmp si, 0x3f79
shl edx, 8
jmp 0x1767083
jae 0x1732360
mov edi, dword [ebp - 8]
sub dx, 0x933
bt edx, 0x20
mov edx, eax
neg ax
mov eax, dword [ebp + 8]
test esp, 0x2a462d6c
stc
mov dword [ebp - 0xc], 0
cmp bp, si
stc
cmc
add edi, 0x664
jmp 0x176b6a6
jae 0x1202cec
mov eax, 8
mov dl, 0x69
shl ebx, 4
not dh
mov edx, ecx
jmp 0x1204389
mov dword [ebp + 8], eax
shr ah, cl
bsf ax, ax
mov eax, edx
cmp bp, bx
test ebx, eax
cmc
shr eax, 0xb
cmp bp, sp
imul eax, dword [ebp - 0x10]
cmp bp, 0x2ee0
cmp esi, eax
jmp 0x1756075
jae 0x1756b60
movzx ecx, byte [eax]
shl esi, 8
cmc
cmp esp, ebp
stc
shl edx, 8
or esi, ecx
jmp 0x1764c58
mov dword [ebp - 0x18], 3
jmp 0x174a4cb
ret
jae 0x1202c82
mov eax, dword [ebp + 8]
clc
cmp ebp, 0x6d6e746b
cmp eax, dword [ebp - 4]
jmp 0x1205376
mov dword [ebp - 0x14], ebx
stc
cmp edi, 0xe
jmp 0x12042c4
jae 0x1767ea8
cmp eax, dword [ebp - 4]
jmp 0x1767e72
add edi, eax
cmp dword [ebp - 0xc], 4
jae 0x120d1b1
cmp edi, 4
jb 0x172ee61
mov edi, 3
rcr ebx, cl
mov eax, dword [ebp - 8]
sbb bh, 0x19
rcl bx, 0x22
shl edi, 7
lea ebx, [edi + eax + 0x360]
bswap eax
mov eax, dword [ebp + 8]
mov edi, 1
jmp 0x175dff9
jae 0xfb6634
mov edx, edi
test edi, 0x34e45bf
add eax, eax
jmp 0x17371a1
jae 0x12038fe
mov edx, ecx
jmp 0x1726208
mov edi, esi
cmp bp, ax
cmc
clc
sub edi, edx
stc
shr edi, 0x1f
jmp 0x17753fd
sub edx, ecx
cmc
stc
sub esi, ecx
lea edi, [edi + edi + 1]
btc ecx, esi
cmc
sar ch, 0xec
mov ecx, dword [ebp - 0x10]
stc
test ax, 0x4c47
cmp edi, ecx
jmp 0x17551e2
add edi, edi
jmp 0x1732539
lea eax, [eax + eax + 1]
cmp dx, di
sub ebx, 1
jmp 0x120d1a8
or esi, ecx
xchg cl, cl
inc ecx
inc eax
dec cl
sar cx, 0xf4
mov dword [ebp + 8], eax
bsr cx, dx
cmovg cx, si
movzx eax, word [edi]
test bl, 0x14
mov cl, 0x95
mov ecx, edx
clc
cmp bp, bp
shr ecx, 0xb
imul ecx, eax
cmp esi, ecx
jae 0x1205601
shl ebx, 4
xchg edx, edx
movzx dx, al
mov edx, ecx
jmp 0x1207c56
jae 0x1756b60
movzx ecx, byte [eax]
shl esi, 8
cmp dh, cl
test bp, si
shl edx, 8
clc
cmc
jmp 0x1730ee9
mov esp, ebp
bswap ebp
not bp
pop ebp
jmp 0x1737291
mov ecx, dword [ebp - 8]
mov edi, ebx
bsf di, dx
or di, bx
sub edx, eax
not edi
btc edi, eax
sub esi, eax
shld di, bx, 0xc9
mov eax, dword [ebp - 0xc]
movzx edi, word [ecx + eax*2 + 0x198]
xor ax, 0x6290
btr ax, 0xf3
neg eax
mov eax, dword [ebp + 8]
jmp 0x172a8af
jae 0x1756b60
movzx edi, byte [eax]
cmp esp, 0x3b232ba6
shl esi, 8
stc
clc
shl edx, 8
clc
cmp ax, bp
or esi, edi
jmp 0x175b799
jae 0x1756b60
movzx ecx, byte [eax]
shl esi, 8
cmc
cmp edi, 0x7407409b
shl edx, 8
jmp 0x1758c38
not eax
jmp 0x1765aeb
jne 0xfb6b49
cmp dword [edi + 0x2c], 0
jmp 0xfb6b43
imul ecx, edi
test bh, cl
cmp esi, ecx
jmp 0x172fba6
jae 0xfb6d10
cmp eax, dword [ebp - 4]
jmp 0xfb6cec
cmp eax, dword [ebp - 4]
jmp 0x175c475
jmp 0x1730cb7
ret
dec eax
cmc
test si, 0x2b95
and eax, dword [edi + 0x2c]
test esp, 0x56b630f9
clc
jmp 0x175d365
jae 0x176708d
mov edi, dword [ebp - 4]
cmp dword [ebp + 8], edi
jmp 0x1767f67
inc eax
shr cx, cl
clc
mov dword [ebp + 8], eax
and eax, edi
movzx eax, word [edi + 2]
mov ecx, edx
cmc
shr ecx, 0xb
jmp 0xfb51d8
mov edi, dword [ebp - 0xc]
sub edx, ecx
sub esi, ecx
xor cx, 0x3a76
rcl ch, 0xae
or cx, bp
mov ecx, dword [ebp - 8]
jmp 0x1758b4e
jae 0x1753ca1
mov edx, ecx
test ax, 0x118d
add edi, edi
jmp 0x1777c1e
mov dword [ebp - 0x14], 0
jmp 0x176e664
cmp edx, 0x1000000
jae 0x174a4ff
cmp eax, dword [ebp - 4]
jae 0x1756b60
movzx ecx, byte [eax]
test esi, edi
shl esi, 8
shl edx, 8
or esi, ecx
xchg cx, cx
mov cx, di
inc eax
cmp ecx, edi
setnp ch
mov dword [ebp + 8], eax
and cx, si
mov ecx, edx
cmc
stc
shr ecx, 0xb
cmc
imul ecx, edi
cmp esi, ecx
jae 0x175f738
mov eax, dword [ebp - 0xc]
sbb edi, esp
mov edi, dword [ebp - 8]
cmc
add eax, 0xf
mov dh, 0x3b
or dh, 0x4e
shl eax, 4
sar dx, cl
rcr edx, 0xc1
rol dl, cl
lea eax, [eax + ebx]
sub dh, dl
movzx edi, word [edi + eax*2]
mov eax, dword [ebp + 8]
or dl, dh
sub dl, al
mov edx, ecx
cmp esi, 0x10820446
cmp ecx, 0x1000000
jmp 0x172eddf
jb 0x120d1b1
mov ebx, edi
cmp ch, 0x73
test ah, 0x55
shr ebx, 1
jmp 0x1769091
jae 0x175b7a1
mov eax, dword [ebp + 8]
cmp cx, di
jmp 0x1206c06
jae 0x12020ab
cmp eax, dword [ebp - 4]
jmp 0x1750537
jae 0x1756b60
movzx ecx, byte [eax]
test dx, bp
shl esi, 8
test sp, 0x6e7
stc
shl edx, 8
test ah, al
cmp esp, 0x61d6cfd
or esi, ecx
jmp 0x12020a7
sub edx, ecx
sub esi, ecx
lea edi, [edi + edi + 1]
jmp 0x1765aeb
cmp edx, 0x1000000
jmp 0x174458f
jmp 0x120391c
sub edx, ecx
cmc
test cl, 0x3e
clc
sub esi, ecx
cmp ecx, 0x75d63086
stc
lea edi, [edi + edi + 1]
cmp edi, 0x40
jmp 0x176c2be
jb 0x1202d21
mov eax, dword [ebp - 0x14]
stc
clc
sub eax, ecx
test ch, 0xfb
cmp sp, cx
jmp 0x172ee45
mov dword [ebp - 0xc], eax
jmp 0x17325da
jae 0x1209d6d
mov edx, eax
xor al, cl
mov eax, dword [ebp - 8]
test si, 0x65c4
add eax, 0xe6c
cmp dword [edi + 0x30], 0
jmp 0x17559fa
jb 0x1756b62
sub eax, eax
pop edi
pop esi
mov bl, bh
pop ebx
jmp 0x120a873
and edi, edx
test dh, 0x81
cmp al, 0x97
cmc
sub esi, edi
clc
stc
sub ebx, 1
jne 0x176ee86
mov ecx, dword [ebp - 8]
sbb bx, cx
add ecx, 0x644
btr bx, sp
rcl ebx, cl
mov ebx, 4
cmp cl, 0x1a
mov dword [ebp + 8], eax
setne ah
not ah
add ah, ah
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x14], ebx
cwde
sbb ax, 0x41b4
mov eax, 1
shr cl, cl
cmp esp, 0x6e412e14
movzx ecx, dx
mov edi, edi
shl ecx, 0x65
cmp ebp, 0x713c2308
mov ecx, dword [ebp - 0xc]
stc
test ebp, 0xf7e5ac7
movzx ecx, word [ecx + eax*2]
jmp 0x17524c9
movzx edi, word [ecx + edi*2 + 0x1c8]
cmp esi, edi
stc
cmp edx, 0x1000000
jmp 0x175ee60
or esi, ecx
jmp 0x127b390
jmp 0x1202d17
imul ecx, dword [ebp - 0x10]
test dl, 0xf5
cmp esi, ecx
jae 0x175058c
mov edx, ecx
jmp 0x1730b43
inc eax
test edi, ebx
cmp bl, cl
mov dword [ebp + 8], eax
mov eax, edx
cmp bp, bx
shr eax, 0xb
clc
stc
cmp cx, sp
imul eax, ecx
cmc
cmp esi, eax
jmp 0x1727167
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
jmp 0x1759844
jae 0x1756b60
movzx ecx, byte [eax]
shl esi, 8
jmp 0x1774fe8
jae 0x1756b60
movzx edi, byte [eax]
jmp 0x175eee4
shl eax, cl
lea ebx, [ebx + eax]
test ah, 0x4a
clc
imul ebx, ebx, 0x600
stc
cmc
add dword [ebp - 0xc], ebx
cmp dword [edi + 0x34], 7
jmp 0x1778adf
movzx ecx, word [ebx + edi*2]
mov dword [ebp - 0x10], ecx
cmp si, 0x12f2
cmp edx, 0x1000000
jmp 0x174fbbe
jae 0x1766cab
mov eax, dword [edi + 0x28]
jmp 0x1770122
jmp 0x1730059
jae 0x1764c6a
cmp eax, dword [ebp - 4]
jmp 0x172a839
shl esi, 8
cmp ebp, esi
clc
shl edx, 8
or esi, edi
inc eax
jmp 0x176d29a
jmp 0x127c008
mov edi, dword [ebp - 0xc]
test cx, 0x194d
cmp si, ax
sub edx, ecx
cmc
sub esi, ecx
sub cx, di
adc ecx, edi
mov ecx, dword [ebp - 8]
cmp di, 0x549b
test esi, 0x485a1eef
stc
movzx edi, word [ecx + edi*2 + 0x1b0]
cmc
cmp edx, edi
cmp edx, 0x1000000
jmp 0x1736cd9
mov dword [ebp - 8], eax
dec ebx
and ebx, dword [edi + 0x2c]
stc
clc
lea ecx, [ecx + ebx]
movzx eax, word [eax + ecx*2]
cmp ch, 0x2f
stc
mov dword [ebp - 0x10], eax
cmp edx, 0x1000000
jmp 0x1769796
inc eax
movzx cx, bl
and cl, bl
mov dword [ebp + 8], eax
add cx, 0x5116
sbb ch, 0xa9
mov ecx, edx
stc
test edi, 0x16bb56d2
shr ecx, 0xb
jmp 0x1732657
and dword [ebp - 8], eax
clc
cmp edi, 0x100
jae 0x1201ff5
mov ecx, dword [ebp - 0x18]
jmp 0x1279603
sub eax, eax
cmp ecx, eax
jmp 0x17720c5
inc edi
cmc
mov dword [ebp + 8], edi
not di
test esi, ebp
mov edi, edx
cmc
shr edi, 0xb
imul edi, ecx
cmp dx, si
cmp esi, edi
jmp 0x172f40a
jae 0x1756b60
shl ecx, 8
rol dx, cl
sub dx, 0x5e2
mov edx, ecx
or cl, 0xb2
movzx ecx, byte [eax]
shl esi, 8
test dh, 0xd6
test ah, ah
cmp ch, ch
or esi, ecx
inc eax
seto cl
shl cx, 0x4f
sbb cl, 0xf8
mov dword [ebp + 8], eax
and cx, cx
mov ecx, edx
shr ecx, 0xb
imul ecx, edi
cmc
cmp esi, ecx
jmp 0x120926e
jae 0x1756b60
mov edi, dword [ebp + 8]
movzx ebx, byte [edi]
jmp 0x17270b6
dec ebx
test bh, bl
jmp 0x172db1c
jae 0x172a76c
mov eax, dword [ebp + 8]
test eax, 0x4ba6191d
cmp bp, bp
cmp eax, dword [ebp - 4]
jmp 0x1732454
add edi, edi
jmp 0x175ec11
jmp 0x1725d69
mov dword [ebp - 0x18], 2
jmp 0x1752901
jb 0x175dff9
sub edi, 0x40
mov dword [ebp + 8], eax
stc
clc
cmp edi, 4
jmp 0x174b287
shr edx, 1
jmp 0x172fbb4
cmp esi, eax
jmp 0xfb5e6d
mov dword [ebp - 0x10], 8
jmp 0x1202d17
mov ecx, dword [ebp - 4]
cmp ecx, edx
sub ebx, 4
cmp edi, ebx
test ecx, 0x5c8e33d6
cmp edx, 0x1000000
jae 0x176d29a
cmp eax, ecx
jmp 0x175c551
jae 0x1730048
mov edx, ecx
jmp 0x176adb2
jmp 0x17720c5
mov eax, dword [edi + 0x10]
shld ebx, edi, 0xdf
mov dword [ebp - 4], ecx
sub cx, 0x3f71
movzx ebx, di
mov ecx, dword [edi + 0x34]
shr bx, 0xf2
mov dword [ebp - 0xc], ecx
jmp 0x177738b
sub esi, eax
cmc
stc
lea ecx, [ecx + ecx + 1]
cmp ecx, 0x100
jmp 0x1201fef
mov edi, dword [edi + 0x14]
sub edi, ebx
bt bx, 0x36
rcr ebx, 0x91
rol bh, cl
add edi, ecx
movzx ecx, byte [edi + eax]
mov edi, 0x2df82e6c
adc ax, 0xd79
btc ebx, ecx
mov dword [ebp - 8], 0x100
bswap di
and eax, esp
cmovnp eax, eax
mov edi, 1
rol ebx, 0x31
dec bh
cbw
mov edi, edi
bswap ebx
not bh
mov ebx, dword [ebp - 8]
add ecx, ecx
mov al, 0xae
mov eax, ebx
and eax, ecx
stc
mov dword [ebp - 0x18], ecx
cmp di, 0x3821
sar ch, cl
lea ecx, [eax + edi]
stc
test edx, edx
add ecx, ebx
mov ebx, dword [ebp - 0xc]
test ah, cl
test cx, 0x285
stc
movzx ecx, word [ebx + ecx*2]
mov dword [ebp - 0x10], ecx
cmp ebp, edi
cmp edx, 0x1000000
jae 0x120607f
mov ecx, dword [ebp + 8]
test bl, 0xc6
cmp bh, 0x78
cmp ecx, dword [ebp - 4]
jae 0x1756b60
movzx ebx, byte [ecx]
shl esi, 8
cmp ebp, eax
cmc
shl edx, 8
clc
test edi, esp
jmp 0x1206073
jne 0x17739e0
mov ecx, dword [edi + 0x28]
sub bx, di
bt ebx, esi
mov ebx, dword [edi + 0x14]
rcr ax, 0x2b
inc eax
shld eax, esp, 0xc8
movzx ebx, byte [ebx + ecx - 1]
mov eax, dword [edi]
shrd cx, bp, 0x79
shld ecx, edx, 0xe1
or cl, 0x1c
mov ecx, 8
clc
cmp bx, dx
test ebp, ebp
sub cl, al
sal ah, 0x29
shrd ax, cx, 0x52
xor ax, 0x3a7f
shr ebx, cl
mov ecx, dword [edi + 4]
xadd ax, ax
mov eax, 1
test bp, ax
shl eax, cl
mov cx, sp
movzx cx, dl
mov cx, 0x4608
mov ecx, dword [edi]
jmp 0x1739cd1
shl edx, 8
test eax, ebp
stc
or esi, ecx
mov cx, bp
jmp 0x1744623
jae 0x174462d
mov eax, dword [ebp + 8]
jmp 0x1737186
dec edi
jmp 0x175858e
inc eax
adc cl, 0x61
sub ecx, ebp
sar cl, 0x84
mov dword [ebp + 8], eax
mov ah, ch
movzx eax, word [ebx + edi*2]
shl cx, cl
mov ecx, edx
stc
cmp esp, 0x520302d1
test edi, 0x4de37ddc
shr ecx, 0xb
cmp esi, 0x4fa260d4
imul ecx, eax
cmp esi, ecx
jmp 0x176f9f1
mov ecx, dword [edi + 0x24]
mov ebx, dword [edi + 0x38]
cmp di, 0x5f54
cmc
clc
cmp ecx, ebx
jmp 0x175e3fe
mov ecx, dword [edi + 8]
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0xc]
cmc
shl ecx, 4
jmp 0x1764996
jmp 0x1753cb5
jae 0x1775ffb
mov ecx, 1
jmp 0x175ef39