Function at 0x1401876ed
Capabilities:
Encrypt data using speck

Disassembly:
push rax
pushf
mov eax, 0x8d6d43f7
pushf
not eax
add eax, 0xdf7295ca
xor eax, 0xb6b9d59e
rol eax, 0xa8
popf
pushf
not eax
add eax, 0xacdedfb7
xor eax, 0xf05a92d2
rol eax, 0xd5
popf
cmp eax, 4
jne 0x14018772a
popf
pop rax
jmp 0x140187ab0
cmp eax, 0
jne 0x140187739
popf
pop rax
jmp 0x1401878ec
cmp eax, 3
jne 0x140187748
popf
pop rax
jmp 0x140187a51
cmp eax, 1
jne 0x140187757
popf
pop rax
jmp 0x14018798a
cmp eax, 0xd
jne 0x140187766
popf
pop rax
jmp 0x140187e89
cmp eax, 0x1a
jne 0x140187775
popf
pop rax
jmp 0x14018848a
cmp eax, 0xe
jne 0x140187784
popf
pop rax
jmp 0x140187f03
cmp eax, 0xb
jne 0x140187793
popf
pop rax
jmp 0x140187d49
cmp eax, 0x19
jne 0x1401877a2
popf
pop rax
jmp 0x14018843c
cmp eax, 8
jne 0x1401877b1
popf
pop rax
jmp 0x140187c5d
cmp eax, 0x1d
jne 0x1401877c0
popf
pop rax
jmp 0x1401886b5
cmp eax, 0x17
jne 0x1401877cf
popf
pop rax
jmp 0x14018839b
cmp eax, 0x1c
jne 0x1401877de
popf
pop rax
jmp 0x140188563
cmp eax, 0x12
jne 0x1401877ed
popf
pop rax
jmp 0x14018814b
cmp eax, 0x18
jne 0x1401877fc
popf
pop rax
jmp 0x140188401
cmp eax, 0x11
jne 0x14018780b
popf
pop rax
jmp 0x14018808c
cmp eax, 0x1b
jne 0x14018781a
popf
pop rax
jmp 0x14018850a
cmp eax, 0x16
jne 0x140187829
popf
pop rax
jmp 0x1401882da
cmp eax, 0xa
jne 0x140187838
popf
pop rax
jmp 0x140187d0b
cmp eax, 0x14
jne 0x140187847
popf
pop rax
jmp 0x14018824c
cmp eax, 0xf
jne 0x140187856
popf
pop rax
jmp 0x140187f96
cmp eax, 0x13
jne 0x140187865
popf
pop rax
jmp 0x1401881f9
cmp eax, 0x15
jne 0x140187874
popf
pop rax
jmp 0x14018829a
cmp eax, 2
jne 0x140187883
popf
pop rax
jmp 0x1401879fd
cmp eax, 0x1e
jne 0x140187892
popf
pop rax
jmp 0x140188713
cmp eax, 0xc
jne 0x1401878a1
popf
pop rax
jmp 0x140187de6
cmp eax, 7
jne 0x1401878b0
popf
pop rax
jmp 0x140187bd5
cmp eax, 5
jne 0x1401878bf
popf
pop rax
jmp 0x140187b01
cmp eax, 9
jne 0x1401878ce
popf
pop rax
jmp 0x140187c95
cmp eax, 0x10
jne 0x1401878dd
popf
pop rax
jmp 0x140188054
cmp eax, 6
jne 0x1401878ec
popf
pop rax
jmp 0x140187bad
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x98
cmp dword [rsp + 0xf0], 0
je 0x140187944
push rax
pushf
mov eax, 0xf8059292
pushf
not eax
add eax, 0x9bf3e830
xor eax, 0xe7ab1f32
rol eax, 0xb1
popf
pushf
not eax
add eax, 0x8a0d0ce4
xor eax, 0xb4ae8459
rol eax, 0x62
popf
jmp 0x14018771b
push rax
pushf
mov eax, 0x272ecd5d
pushf
not eax
add eax, 0xc130964a
xor eax, 0x83ff3592
rol eax, 0xd5
popf
pushf
not eax
add eax, 0xb528c6f7
xor eax, 0xe2e1f738
rol eax, 0xc6
popf
pushf
not eax
add eax, 0x97f523d6
xor eax, 0xb6d916dc
rol eax, 0x59
popf
jmp 0x14018771b
movss xmm0, dword [rsp + 0xc8]
xorps xmm0, xmmword [0x140119f10]
movss dword [rsp + 0x70], xmm0
jmp 0x140187a51
movss xmm0, dword [rsp + 0xc8]
movss dword [rsp + 0x70], xmm0
push rax
pushf
mov eax, 0x15171fcb
pushf
not eax
add eax, 0x9dd1cf3f
xor eax, 0xa3a46a19
rol eax, 0x1d
popf
pushf
not eax
add eax, 0x9115edbf
xor eax, 0xe556e3cd
rol eax, 1
popf
pushf
not eax
add eax, 0xe870be43
xor eax, 0x8aa6d049
rol eax, 0xba
popf
jmp 0x14018771b
movss xmm0, dword [rsp + 0x70]
movss dword [rsp + 0x80], xmm0
mov dword [rsp + 0x6c], 1
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x44], 0
jmp 0x140187b01
mov eax, dword [rsp + 0x44]
jmp 0x140187ab5
inc eax
mov dword [rsp + 0x44], eax
push rax
pushf
mov eax, 0x4537cdbe
pushf
not eax
add eax, 0xeb343fe5
xor eax, 0xd262dd21
rol eax, 0xe
popf
pushf
not eax
add eax, 0x840b9775
xor eax, 0xba1cc6c7
rol eax, 0xc6
popf
pushf
not eax
add eax, 0x8cd791a5
xor eax, 0xf776ff0c
rol eax, 0x32
popf
jmp 0x14018771b
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0x44], eax
jge 0x140187b67
push rax
pushf
mov eax, 0x5c7b5671
pushf
not eax
add eax, 0xc6a77c3c
xor eax, 0xbf98e201
rol eax, 0xd
popf
pushf
not eax
add eax, 0xe7eda861
xor eax, 0xd24b2a6d
rol eax, 0xb7
popf
pushf
not eax
add eax, 0xe73a34e7
xor eax, 0xa0582eeb
rol eax, 0xff
popf
pushf
not eax
add eax, 0xfb5f07ea
xor eax, 0x99c50a25
rol eax, 0x85
popf
jmp 0x14018771b
push rax
pushf
mov eax, 0x7aed9d1d
pushf
not eax
add eax, 0xb028f5b9
xor eax, 0xdbe112a6
rol eax, 0x9c
popf
pushf
not eax
add eax, 0x9a8f9775
xor eax, 0xcf3db842
rol eax, 0x3c
popf
pushf
not eax
add eax, 0xd8379c3e
xor eax, 0xa0edd414
rol eax, 0x19
popf
jmp 0x14018771b
movsxd rax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0xb0]
mov eax, dword [rcx + rax*4]
mov ecx, dword [rsp + 0x40]
push rax
not eax
sub ecx, eax
pop rax
sub ecx, 1
mov eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140187ab0
mov eax, dword [rsp + 0x40]
jmp 0x140187bda
inc eax
cdqe
imul rax, rax, 0x14
mov rcx, rax
call fcn.14027358b
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x58], 0
jne 0x140187c2a
push rax
pushf
mov eax, 0x62c2a919
pushf
not eax
add eax, 0xebda901a
xor eax, 0xd11be75f
rol eax, 0xa1
popf
pushf
not eax
add eax, 0x89bb071f
xor eax, 0xd9a30640
rol eax, 0xbe
popf
jmp 0x14018771b
push rax
pushf
mov eax, 0x2abccc6b
pushf
not eax
add eax, 0xa0bbdc2c
xor eax, 0x8cac538b
rol eax, 0x51
popf
pushf
not eax
add eax, 0x884b78fc
xor eax, 0xcfb31655
rol eax, 0xf4
popf
jmp 0x14018771b
jmp 0x14018876a
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x60], 0
mov dword [rsp + 0x44], 0
jmp 0x140187d49
mov eax, dword [rsp + 0x44]
jmp 0x140187d10
inc eax
mov dword [rsp + 0x44], eax
push rax
pushf
mov eax, 0x5bef4d6e
pushf
not eax
add eax, 0xec538430
xor eax, 0x923d9821
rol eax, 0x43
popf
pushf
not eax
add eax, 0xe1b2047b
xor eax, 0xcee4867a
rol eax, 0xf8
popf
jmp 0x14018771b
mov eax, dword [rsp + 0xb8]
cmp dword [rsp + 0x44], eax
jge 0x140187db3
push rax
pushf
mov eax, 0x3ee44de2
pushf
not eax
add eax, 0xf71b6a39
xor eax, 0xb0a28dec
rol eax, 0xb9
popf
pushf
not eax
add eax, 0xca7cf645
xor eax, 0xd1d1fd3f
rol eax, 0x67
popf
pushf
not eax
add eax, 0xcce3cccc
xor eax, 0xb7ca8d03
rol eax, 0x49
popf
pushf
not eax
add eax, 0xbb4362e1
xor eax, 0xb6e24c33
rol eax, 0x42
popf
jmp 0x14018771b
push rax
pushf
mov eax, 0x70ec9b3c
pushf
not eax
add eax, 0xc7d287ca
xor eax, 0xd9ec621d
rol eax, 0x83
popf
pushf
not eax
add eax, 0xb534d3c6
xor eax, 0xcce85f41
rol eax, 0xe5
popf
jmp 0x14018771b
movsxd rax, dword [rsp + 0x60]
mov rcx, qword [rsp + 0xa8]
lea rax, [rcx + rax*8]
mov qword [rsp + 0x50], rax
movsxd rax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0xb0]
mov eax, dword [rcx + rax*4]
mov ecx, dword [rsp + 0x60]
push rax
not eax
sub ecx, eax
pop rax
sub ecx, 1
mov eax, ecx
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0xb0]
mov eax, dword [rcx + rax*4]
jmp 0x140187e30
dec eax
mov dword [rsp + 0x4c], eax
mov dword [rsp + 0x48], 0
jmp 0x140187f03
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x84], eax
mov eax, dword [rsp + 0x48]
jmp 0x140187e99
inc eax
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x84]
mov dword [rsp + 0x4c], eax
push rax
pushf
mov eax, 0x4187ebb6
pushf
not eax
add eax, 0x928b7563
xor eax, 0xc7c2a464
rol eax, 0x26
popf
pushf
not eax
add eax, 0xd2f08968
xor eax, 0x97ce33c4
rol eax, 0x63
popf
pushf
not eax
add eax, 0xfa3bc5b0
xor eax, 0x80f464fb
rol eax, 0x35
popf
pushf
not eax
add eax, 0xadb3cf28
xor eax, 0xfd7a7c4f
rol eax, 0x75
popf
jmp 0x14018771b
movsxd rax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0xb0]
mov eax, dword [rcx + rax*4]
cmp dword [rsp + 0x48], eax
jge 0x140187f63
push rax
pushf
mov eax, 0x21b24198
pushf
not eax
add eax, 0xe462a41e
xor eax, 0xf62dec6a
rol eax, 0xc5
popf
pushf
not eax
add eax, 0xb99d0942
xor eax, 0xb44e7d3b
rol eax, 4
popf
pushf
not eax
add eax, 0xc9412bc6
xor eax, 0xb0ebc5bc
rol eax, 7
popf
jmp 0x14018771b
push rax
pushf
mov eax, 0xe02306f2
pushf
not eax
add eax, 0xf9019a0a
xor eax, 0xabdc8d4e
rol eax, 0x7e
popf
pushf
not eax
add eax, 0x99cdc7e0
xor eax, 0xad0d4047
rol eax, 0xc1
popf
jmp 0x14018771b
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x68], eax
movsxd rax, dword [rsp + 0x4c]
movsxd rcx, dword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x50]
movss xmm0, dword [rdx + rcx*8 + 4]
ucomiss xmm0, dword [r8 + rax*8 + 4]
jne 0x140187ffb
push rax
pushf
mov eax, 0x18431a97
pushf
not eax
add eax, 0x8d3af660
xor eax, 0x9d948d5c
rol eax, 0x5d
popf
pushf
not eax
add eax, 0x91184539
xor eax, 0xf3ebd266
rol eax, 0xb9
popf
jmp 0x14018771b
push rax
pushf
mov eax, 0x3c83d7d1
pushf
not eax
add eax, 0xc9a4ad25
xor eax, 0xf6a667be
rol eax, 0x24
popf
pushf
not eax
add eax, 0x9572eaae
xor eax, 0x84d48952
rol eax, 0xa5
popf
pushf
not eax
add eax, 0xf5ac934e
xor eax, 0x891c9c25
rol eax, 0xb6
popf
pushf
not eax
add eax, 0xb30c2966
xor eax, 0xf93e82ae
rol eax, 0xf4
popf
jmp 0x14018771b
jmp 0x140187e89
movsxd rax, dword [rsp + 0x40]
imul rax, rax, 0x14
mov rcx, qword [rsp + 0x58]
mov dword [rcx + rax + 0x10], 0
cmp dword [rsp + 0xf0], 0
je 0x1401880f2
push rax
pushf
mov eax, 0xe0b1cf06
pushf
not eax
add eax, 0xe3199252
xor eax, 0xedd7c8ac
rol eax, 0xc0
popf
pushf
not eax
add eax, 0x8da249c5
xor eax, 0xc4f67820
rol eax, 0x59
popf
pushf
not eax
add eax, 0xc88cde16
xor eax, 0xcddad5ae
rol eax, 0x9f
popf
jmp 0x14018771b
push rax
pushf
mov eax, 0x32b36556
pushf
not eax
add eax, 0xab4409ba
xor eax, 0x8078a45e
rol eax, 0xce
popf
pushf
not eax
add eax, 0xb7277013
xor eax, 0xe2eac162
rol eax, 0xed
popf
pushf
not eax
add eax, 0xcfad40d7
xor eax, 0xa652f09e
rol eax, 0xd4
popf
pushf
not eax
add eax, 0xf0eeab81
xor eax, 0x8843af10
rol eax, 0x30
popf
jmp 0x14018771b
movsxd rax, dword [rsp + 0x4c]
movsxd rcx, dword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x50]
movss xmm0, dword [rdx + rcx*8 + 4]
comiss xmm0, dword [r8 + rax*8 + 4]
jae 0x1401881a0
push rax
pushf
mov eax, 0x4ca99db2
pushf
not eax
add eax, 0xa5f5ab79
xor eax, 0xd4260b99
rol eax, 0x73
popf
pushf
not eax
add eax, 0xc1d40de2
xor eax, 0x8e4fa291
rol eax, 0x8d
popf
jmp 0x14018771b
push rax
pushf
mov eax, 0x706bee47
pushf
not eax
add eax, 0x97df373d
xor eax, 0xf4b9b526
rol eax, 0xb
popf
pushf
not eax
add eax, 0xaa043746
xor eax, 0xaee593b6
rol eax, 0x65
popf
pushf
not eax
add eax, 0xb0ceb36e
xor eax, 0xba3a54bb
rol eax, 0x22
popf
pushf
not eax
add eax, 0x999e86b4
xor eax, 0xf5c2711d
rol eax, 0x3c
popf
jmp 0x14018771b
mov dword [rsp + 0x74], 1
jmp 0x14018829a
mov dword [rsp + 0x74], 0
push rax
pushf
mov eax, 0xc3369a20
pushf
not eax
add eax, 0x86f6d7d0
xor eax, 0x9061087e
rol eax, 0xe4
popf
pushf
not eax
add eax, 0xfd5f9031
xor eax, 0xf3152c34
rol eax, 0x36
popf
pushf
not eax
add eax, 0xb4ac0a2c
xor eax, 0xe8dfe6e4
rol eax, 0x38
popf
jmp 0x14018771b
mov eax, dword [rsp + 0x74]
mov dword [rsp + 0x7c], eax
jmp 0x14018848a
movsxd rax, dword [rsp + 0x4c]
movsxd rcx, dword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x50]
movss xmm0, dword [rdx + rcx*8 + 4]
comiss xmm0, dword [r8 + rax*8 + 4]
jbe 0x140188355
push rax
pushf
mov eax, 0x5e75e56
pushf
not eax
add eax, 0xda3ffae2
xor eax, 0xfd76daa6
rol eax, 0xda
popf
pushf
not eax
add eax, 0xae2f27a8
xor eax, 0xfaa69dbc
rol eax, 0x98
popf
pushf
not eax
add eax, 0x83e5bf7f
xor eax, 0xc7324db2
rol eax, 0x54
popf
pushf
not eax
add eax, 0x85f41286
xor eax, 0x92587578
rol eax, 0x53
popf
jmp 0x14018771b
push rax
pushf
mov eax, 0x612b2f91
pushf
not eax
add eax, 0x9169748f
xor eax, 0xb50a818a
rol eax, 0x30
popf
pushf
not eax
add eax, 0xf9ee7319
xor eax, 0xaee6d204
rol eax, 8
popf
pushf
not eax
add eax, 0xb627da11
xor eax, 0xe5e7f976
rol eax, 0xc5
popf
jmp 0x14018771b
mov dword [rsp + 0x78], 1
jmp 0x14018843c
mov dword [rsp + 0x78], 0
push rax
pushf
mov eax, 0xbfb31cac
pushf
not eax
add eax, 0x9dfbb03a
xor eax, 0x9f8f618d
rol eax, 0x6e
popf
pushf
not eax
add eax, 0xd43b889b
xor eax, 0xd7bb74a9
rol eax, 0xd9
popf
jmp 0x14018771b
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x7c], eax
push rax
pushf
mov eax, 0x49c5fa64
pushf
not eax
add eax, 0xf3ac8074
xor eax, 0xe9e58f99
rol eax, 0x82
popf
pushf
not eax
add eax, 0xe31b9f26
xor eax, 0x8094697b
rol eax, 0x2e
popf
pushf
not eax
add eax, 0xb635629c
xor eax, 0xf74789b5
rol eax, 0x2a
popf
jmp 0x14018771b
cmp dword [rsp + 0x7c], 0
je 0x1401884d7
push rax
pushf
mov eax, 0x12fbad5f
pushf
not eax
add eax, 0x917633ee
xor eax, 0xbd09addc
rol eax, 9
popf
pushf
not eax
add eax, 0xbc183326
xor eax, 0xca12cd46
rol eax, 0x31
popf
pushf
not eax
add eax, 0xaa4ec18e
xor eax, 0x989c81e6
rol eax, 0x24
popf
jmp 0x14018771b
push rax
pushf
mov eax, 0x60c49b0a
pushf
not eax
add eax, 0x831d0e22
xor eax, 0xc239411f
rol eax, 0xb
popf
pushf
not eax
add eax, 0xe0ff7382
xor eax, 0xd76f307e
rol eax, 0x98
popf
jmp 0x14018771b
movsxd rax, dword [rsp + 0x40]
imul rax, rax, 0x14
mov rcx, qword [rsp + 0x58]
mov dword [rcx + rax + 0x10], 1
mov eax, dword [rsp + 0x4c]
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x68], eax
push rax
pushf
mov eax, 0x163c6238
pushf
not eax
add eax, 0xf66e82d5
xor eax, 0xbaaf7a1a
rol eax, 0xab
popf
pushf
not eax
add eax, 0xae1c034c
xor eax, 0xc347d097
rol eax, 0xdd
popf
jmp 0x14018771b
movsxd rax, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x50]
movss xmm0, dword [rcx + rax*8]
mulss xmm0, dword [rsp + 0xc0]
addss xmm0, dword [rsp + 0xd0]
movsxd rax, dword [rsp + 0x40]
imul rax, rax, 0x14
mov rcx, qword [rsp + 0x58]
movss dword [rcx + rax], xmm0
movsxd rax, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x50]
movss xmm0, dword [rcx + rax*8 + 4]
mulss xmm0, dword [rsp + 0x80]
addss xmm0, dword [rsp + 0xd8]
cvtsi2ss xmm1, dword [rsp + 0x6c]
mulss xmm0, xmm1
movsxd rax, dword [rsp + 0x40]
imul rax, rax, 0x14
mov rcx, qword [rsp + 0x58]
movss dword [rcx + rax + 4], xmm0
movsxd rax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x50]
movss xmm0, dword [rcx + rax*8]
mulss xmm0, dword [rsp + 0xc0]
addss xmm0, dword [rsp + 0xd0]
movsxd rax, dword [rsp + 0x40]
imul rax, rax, 0x14
mov rcx, qword [rsp + 0x58]
movss dword [rcx + rax + 8], xmm0
movsxd rax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x50]
movss xmm0, dword [rcx + rax*8 + 4]
mulss xmm0, dword [rsp + 0x80]
addss xmm0, dword [rsp + 0xd8]
cvtsi2ss xmm1, dword [rsp + 0x6c]
mulss xmm0, xmm1
movsxd rax, dword [rsp + 0x40]
imul rax, rax, 0x14
mov rcx, qword [rsp + 0x58]
movss dword [rcx + rax + 0xc], xmm0
mov eax, dword [rsp + 0x40]
jmp 0x140188651
inc eax
mov dword [rsp + 0x40], eax
jmp 0x140187e89
jmp 0x140187d0b
mov edx, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x58]
call fcn.14024e4c0
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0xe8]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xe0]
mov dword [rsp + 0x20], eax
mov r9d, dword [rsp + 0x6c]
mov r8d, dword [rsp + 0x40]
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0xa0]
call fcn.1401be814
mov rcx, qword [rsp + 0x58]
call fcn.1401baf30
add rsp, 0x98
ret