Function at 0x140168544
Capabilities:
Encrypt data using speck

Disassembly:
push rax
pushf
mov eax, 0x228f54be
pushf
not eax
add eax, 0xa11072de
xor eax, 0xdb88393e
rol eax, 0x4c
popf
pushf
not eax
add eax, 0x8d25f250
xor eax, 0xfab3d7ff
rol eax, 0x25
popf
cmp eax, 4
jne 0x140168581
popf
pop rax
jmp 0x140168936
cmp eax, 0
jne 0x140168590
popf
pop rax
jmp 0x140168716
cmp eax, 3
jne 0x14016859f
popf
pop rax
jmp 0x1401688c7
cmp eax, 1
jne 0x1401685ae
popf
pop rax
jmp 0x1401687bb
cmp eax, 0xd
jne 0x1401685bd
popf
pop rax
jmp 0x140168e31
cmp eax, 0x1a
jne 0x1401685cc
popf
pop rax
jmp 0x14016953e
cmp eax, 0xe
jne 0x1401685db
popf
pop rax
jmp 0x140168e91
cmp eax, 0xb
jne 0x1401685ea
popf
pop rax
jmp 0x140168cdd
cmp eax, 0x19
jne 0x1401685f9
popf
pop rax
jmp 0x1401694bb
cmp eax, 8
jne 0x140168608
popf
pop rax
jmp 0x140168acf
cmp eax, 0x10
jne 0x140168617
popf
pop rax
jmp 0x140168ff7
cmp eax, 0x17
jne 0x140168626
popf
pop rax
jmp 0x1401693fa
cmp eax, 9
jne 0x140168635
popf
pop rax
jmp 0x140168b97
cmp eax, 0x12
jne 0x140168644
popf
pop rax
jmp 0x140169165
cmp eax, 0x18
jne 0x140168653
popf
pop rax
jmp 0x140169436
cmp eax, 0x11
jne 0x140168662
popf
pop rax
jmp 0x140169033
cmp eax, 0x1b
jne 0x140168671
popf
pop rax
jmp 0x140169599
cmp eax, 0x16
jne 0x140168680
popf
pop rax
jmp 0x1401693a2
cmp eax, 0xa
jne 0x14016868f
popf
pop rax
jmp 0x140168c19
cmp eax, 0x14
jne 0x14016869e
popf
pop rax
jmp 0x14016921a
cmp eax, 0xf
jne 0x1401686ad
popf
pop rax
jmp 0x140168f49
cmp eax, 0x13
jne 0x1401686bc
popf
pop rax
jmp 0x1401691b4
cmp eax, 0x15
jne 0x1401686cb
popf
pop rax
jmp 0x140169332
cmp eax, 2
jne 0x1401686da
popf
pop rax
jmp 0x1401687fe
cmp eax, 6
jne 0x1401686e9
popf
pop rax
jmp 0x140168a32
cmp eax, 0xc
jne 0x1401686f8
popf
pop rax
jmp 0x140168d6d
cmp eax, 7
jne 0x140168707
popf
pop rax
jmp 0x140168a75
cmp eax, 5
jne 0x140168716
popf
pop rax
jmp 0x14016899f
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0xd0
mov rdi, rcx
lea rbp, [rcx + 0x98]
cmp qword [rcx + 0x90], rbp
jne 0x140168775
push rax
pushf
mov eax, 0xcfe29e95
pushf
not eax
add eax, 0xe01a312d
xor eax, 0xd25dc88e
rol eax, 0x1d
popf
pushf
not eax
add eax, 0xcce6a698
xor eax, 0x9c995b54
rol eax, 0xa5
popf
jmp 0x140168572
push rax
pushf
mov eax, 0x24f36fea
pushf
not eax
add eax, 0xe95040f8
xor eax, 0xa70897ad
rol eax, 0xba
popf
pushf
not eax
add eax, 0x8cc04298
xor eax, 0xf5247090
rol eax, 0xcd
popf
pushf
not eax
add eax, 0xc57c0d9f
xor eax, 0xe53e4ddc
rol eax, 0x65
popf
jmp 0x140168572
mov qword [rcx + 0x90], 0
jmp 0x1401695aa
lea r15, [rcx + 0xb0]
mov rcx, qword [r15]
inc rcx
mov qword [r15], rcx
lea r14, [rdi + 0xb8]
mov rdx, qword [r14]
mov rax, qword [r14 + 8]
sub rax, rdx
sar rax, 2
cmp rcx, rax
jae 0x140168881
push rax
pushf
mov eax, 0x5f8605a3
pushf
not eax
add eax, 0x9de32917
xor eax, 0xdc1ea1f1
rol eax, 0xc7
popf
pushf
not eax
add eax, 0xb3c4d1ed
xor eax, 0xf53c0cad
rol eax, 0x1c
popf
pushf
not eax
add eax, 0x9440f707
xor eax, 0xd615788d
rol eax, 0x81
popf
pushf
not eax
add eax, 0xf2441a1a
xor eax, 0xfa9d0eb0
rol eax, 0xe
popf
jmp 0x140168572
push rax
pushf
mov eax, 0xed826a1f
pushf
not eax
add eax, 0xf7617f8b
xor eax, 0xfbd2ca78
rol eax, 0xb2
popf
pushf
not eax
add eax, 0xdae8583b
xor eax, 0x9f479e84
rol eax, 0xa2
popf
pushf
not eax
add eax, 0x98fc732a
xor eax, 0x9190390a
rol eax, 0xef
popf
jmp 0x140168572
movsxd rax, dword [rdx + rcx*4]
cmp eax, 0xffffffff
jne 0x140168903
push rax
pushf
mov eax, 0xf46d08e3
pushf
not eax
add eax, 0xe1ffee5b
xor eax, 0xbce9d7ad
rol eax, 0x1c
popf
pushf
not eax
add eax, 0x8ad52fa5
xor eax, 0xe5bd3c77
rol eax, 0xd4
popf
jmp 0x140168572
push rax
pushf
mov eax, 0xa4b51a89
pushf
not eax
add eax, 0xffde6797
xor eax, 0xfa92f917
rol eax, 0xcb
popf
pushf
not eax
add eax, 0xacd188d6
xor eax, 0xce70b3c8
rol eax, 0x4a
popf
jmp 0x140168572
lea rax, [rdi + 0x48]
mov qword [rdi + 0x90], rax
jmp 0x1401695aa
mov r8, rax
mov r9, qword [rdi + 0x30]
mov rcx, qword [rdi + 0x38]
sub rcx, r9
movabs rax, 0xc9c2c30f6f14864a
pushf
not rax
add rax, 0x4c5aa646
xor rax, 0x715832f4
rol rax, 0xed
popf
pushf
not rax
add rax, 0x64b17442
xor rax, 0x5d465460
rol rax, 0x84
popf
pushf
not rax
add rax, 0x6713af69
xor rax, 0x749654d6
rol rax, 0x62
popf
pushf
not rax
add rax, 0x5b804a80
xor rax, 0x59ac321d
rol rax, 0x9c
popf
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
push rax
not rax
sub rdx, rax
pop rax
sub rdx, 1
cmp rdx, r8
ja 0x140168a75
lea rax, [rdi + 0x78]
mov qword [rdi + 0x90], rax
jmp 0x1401695aa
lea rax, [r8 + r8*2]
lea rax, [r9 + rax*8]
mov qword [rdi + 0x90], rax
jmp 0x1401695aa
mov qword [r15], 0
mov rdx, rdi
lea rcx, [rsp + 0x40]
call fcn.14015268f
nop
mov rax, qword [rdi + 0x30]
mov rbx, qword [rax + 8]
xor r8b, r8b
lea rsi, [rdi + 0x10]
cmp qword [rax], rbx
jne 0x140168b51
push rax
pushf
mov eax, 0x5c9ce3b
pushf
not eax
add eax, 0xabe69bda
xor eax, 0x9a3b3977
rol eax, 0xe2
popf
pushf
not eax
add eax, 0xdd2d8c5a
xor eax, 0x9bea71a6
rol eax, 0xa9
popf
pushf
not eax
add eax, 0x8601bcef
xor eax, 0xf8ae8cf9
rol eax, 0xff
popf
pushf
not eax
add eax, 0x852a0626
xor eax, 0xddcb38a9
rol eax, 0x12
popf
jmp 0x140168572
push rax
pushf
mov eax, 0x8180064e
pushf
not eax
add eax, 0xee0e52fa
xor eax, 0xa95872a1
rol eax, 0x85
popf
pushf
not eax
add eax, 0xc7b4b6bb
xor eax, 0xae1e44b6
rol eax, 0x6c
popf
pushf
not eax
add eax, 0xc413fd1d
xor eax, 0x98f6b28d
rol eax, 0x1d
popf
jmp 0x140168572
mov rdx, qword [rdi + 8]
cmp rbx, rdx
je 0x140168be6
push rax
pushf
mov eax, 0xe6176117
pushf
not eax
add eax, 0xf5763bf8
xor eax, 0xca5901ad
rol eax, 0xb5
popf
pushf
not eax
add eax, 0xf8c25719
xor eax, 0xa4f8e61e
rol eax, 0xb4
popf
pushf
not eax
add eax, 0xd23ecebc
xor eax, 0xd20c05a6
rol eax, 0xd8
popf
jmp 0x140168572
push rax
pushf
mov eax, 0xf703767b
pushf
not eax
add eax, 0x853cdc7c
xor eax, 0xbd861d25
rol eax, 0x6b
popf
pushf
not eax
add eax, 0xedabd858
xor eax, 0xf072aeba
rol eax, 0xb
popf
jmp 0x140168572
mov rax, qword [rdi]
mov ecx, dword [rdi + 0x18]
or ecx, 0x60
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov r9, qword [rsi]
lea r8, [rdi + 0x20]
mov rcx, rbx
call fcn.1400a6a7c
test al, al
jne 0x140168c97
push rax
pushf
mov eax, 0x119e5369
pushf
not eax
add eax, 0x80549a9e
xor eax, 0xa3f656b1
rol eax, 0xfa
popf
pushf
not eax
add eax, 0xbce514e0
xor eax, 0xadbee412
rol eax, 0x91
popf
pushf
not eax
add eax, 0xa51cfb6f
xor eax, 0xe77f45be
rol eax, 0xcd
popf
pushf
not eax
add eax, 0xcfbceff8
xor eax, 0xb5df0b88
rol eax, 0x66
popf
jmp 0x140168572
push rax
pushf
mov eax, 0xe4e0efef
pushf
not eax
add eax, 0xaf648c0e
xor eax, 0xbef5e05f
rol eax, 0x84
popf
pushf
not eax
add eax, 0xe2b8c500
xor eax, 0x994d3298
rol eax, 0x74
popf
pushf
not eax
add eax, 0xe6cf7035
xor eax, 0xbfcf4e01
rol eax, 0x7d
popf
jmp 0x140168572
mov r8b, 0xbc
pushf
not r8b
add r8b, 0x97
xor r8b, 0xd9
rol r8b, 0x6f
popf
pushf
not r8b
add r8b, 0xbe
xor r8b, 0x2c
rol r8b, 0x44
popf
lea r14, [rdi + 0xb8]
lea r15, [rdi + 0xb0]
push rax
pushf
mov eax, 0xd61b15c4
pushf
not eax
add eax, 0xc91816cf
xor eax, 0x8361291d
rol eax, 0xd6
popf
pushf
not eax
add eax, 0xfcf4153b
xor eax, 0xbd751565
rol eax, 9
popf
pushf
not eax
add eax, 0xb8f8f7e4
xor eax, 0xdb564366
rol eax, 0xba
popf
pushf
not eax
add eax, 0xa5a61714
xor eax, 0xc102c6db
rol eax, 0x24
popf
jmp 0x140168572
or dword [rdi + 0x18], 0x100
mov rax, qword [rdi]
mov ecx, dword [rdi + 0x18]
bts ecx, 0xe
test r8b, r8b
cmove ecx, dword [rdi + 0x18]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov r9, qword [rsi]
lea r8, [rdi + 0x20]
mov rdx, qword [rdi + 8]
mov rcx, rbx
call fcn.1400a6a7c
test al, al
jne 0x140168dfe
push rax
pushf
mov eax, 0x2bbe73b4
pushf
not eax
add eax, 0x9dd3f49c
xor eax, 0x9bc20931
rol eax, 0x5f
popf
pushf
not eax
add eax, 0xc51ec5ba
xor eax, 0xbf917c38
rol eax, 0xa6
popf
pushf
not eax
add eax, 0xcf9d66da
xor eax, 0xb7340fd1
rol eax, 0x7c
popf
pushf
not eax
add eax, 0xe417f638
xor eax, 0xeefb53d1
rol eax, 0xff
popf
jmp 0x140168572
push rax
pushf
mov eax, 0xa82cdb6d
pushf
not eax
add eax, 0xe6ac1771
xor eax, 0xfb7225e6
rol eax, 0xf0
popf
pushf
not eax
add eax, 0xdef99a34
xor eax, 0xc513d53a
rol eax, 0xff
popf
jmp 0x140168572
mov qword [rsi], 0
push rax
pushf
mov eax, 0x847627b3
pushf
not eax
add eax, 0x9b1818fa
xor eax, 0xbffc1e99
rol eax, 0xd5
popf
pushf
not eax
add eax, 0xf6a020a9
xor eax, 0xff73ffa1
rol eax, 7
popf
pushf
not eax
add eax, 0xc7997999
xor eax, 0xecd476da
rol eax, 0x6f
popf
pushf
not eax
add eax, 0x9baa6f12
xor eax, 0xba84532e
rol eax, 0xe5
popf
jmp 0x140168572
cmp qword [rsi], 0
je 0x140168ef0
push rax
pushf
mov eax, 0x3640324
pushf
not eax
add eax, 0x91c97226
xor eax, 0x8e64b252
rol eax, 0x49
popf
pushf
not eax
add eax, 0xfdf0afee
xor eax, 0xad4d1f9e
rol eax, 0x81
popf
pushf
not eax
add eax, 0x93a87fe1
xor eax, 0xc8406fe5
rol eax, 0xaa
popf
pushf
not eax
add eax, 0xa0a8395a
xor eax, 0xd7b3bc9a
rol eax, 0xfe
popf
jmp 0x140168572
push rax
pushf
mov eax, 0x6f2852de
pushf
not eax
add eax, 0xd637c4f0
xor eax, 0xdd05362e
rol eax, 0x30
popf
pushf
not eax
add eax, 0x81e8171d
xor eax, 0x9bb3aa81
rol eax, 0x39
popf
pushf
not eax
add eax, 0xab3c2bb5
xor eax, 0xfa6c63d9
rol eax, 0x90
popf
pushf
not eax
add eax, 0x8077b2cb
xor eax, 0xf05e3947
rol eax, 0x12
popf
jmp 0x140168572
mov rcx, qword [r15]
mov rax, qword [r14]
movsxd rdx, dword [rax + rcx*4]
cmp edx, 0xffffffff
jne 0x140168f9e
push rax
pushf
mov eax, 0xc40cfbe5
pushf
not eax
add eax, 0xbaafb071
xor eax, 0xaaae1b75
rol eax, 0x52
popf
pushf
not eax
add eax, 0xc65d2c00
xor eax, 0xa3121da6
rol eax, 0xd5
popf
pushf
not eax
add eax, 0x8e417c8a
xor eax, 0xc0c8ce55
rol eax, 0xf2
popf
jmp 0x140168572
push rax
pushf
mov eax, 0xd8123532
pushf
not eax
add eax, 0xf170681c
xor eax, 0x88901c73
rol eax, 0x94
popf
pushf
not eax
add eax, 0xfaec4479
xor eax, 0x8c49be7a
rol eax, 0x2a
popf
pushf
not eax
add eax, 0xb023c825
xor eax, 0x9bbdc07a
rol eax, 0x88
popf
pushf
not eax
add eax, 0x871f1bf5
xor eax, 0x854950c6
rol eax, 0xfc
popf
jmp 0x140168572
lea rbp, [rdi + 0x48]
jmp 0x140169599
mov r8, rdx
mov r9, qword [rdi + 0x30]
mov rcx, qword [rdi + 0x38]
sub rcx, r9
movabs rax, 0x7ba41b18fc478cb4
pushf
not rax
add rax, 0x76e9334f
xor rax, 0x6fe45bc4
rol rax, 0x7f
popf
pushf
not rax
add rax, 0x5a989793
xor rax, 0x616a324f
rol rax, 0x5b
popf
pushf
not rax
add rax, 0x4c1ee2bd
xor rax, 0x4c9aff2f
rol rax, 0xd6
popf
pushf
not rax
add rax, 0x74f85328
xor rax, 0x4044e53e
rol rax, 0xfd
popf
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
push rax
not rax
sub rdx, rax
pop rax
sub rdx, 1
cmp rdx, r8
ja 0x14016911f
push rax
pushf
mov eax, 0xc916af27
pushf
not eax
add eax, 0x84eb576b
xor eax, 0xb8a2f78f
rol eax, 0x65
popf
pushf
not eax
add eax, 0xc0f0aa89
xor eax, 0x9e94f61e
rol eax, 0xba
popf
pushf
not eax
add eax, 0x9e4c26e4
xor eax, 0xd2e1f35d
rol eax, 0x75
popf
pushf
not eax
add eax, 0xbc24cd20
xor eax, 0xa8d28e0f
rol eax, 0xc3
popf
jmp 0x140168572
push rax
pushf
mov eax, 0x8deb60bd
pushf
not eax
add eax, 0xba3848ea
xor eax, 0x9f945ebd
rol eax, 0xe4
popf
pushf
not eax
add eax, 0xc347edeb
xor eax, 0xdffc5f80
rol eax, 0xce
popf
pushf
not eax
add eax, 0xe98802e2
xor eax, 0xb2b42d61
rol eax, 0xfc
popf
jmp 0x140168572
lea rbp, [rdi + 0x78]
jmp 0x140169599
lea rax, [r8 + r8*2]
lea rbp, [r9 + rax*8]
jmp 0x140169599
mov r8d, 0xc721828a
pushf
not r8d
add r8d, 0xab27ad31
xor r8d, 0xea5eea97
rol r8d, 0xc6
popf
pushf
not r8d
add r8d, 0xf291f098
xor r8d, 0xe6e48337
rol r8d, 0x91
popf
pushf
not r8d
add r8d, 0xfd5afc5b
xor r8d, 0xd16c78af
rol r8d, 0xbb
popf
mov rdx, qword [r14 + 8]
mov rcx, qword [r14]
call fcn.1400fefd7
cmp rax, qword [rdi + 0xc0]
je 0x1401692d9
push rax
pushf
mov eax, 0x33697f22
pushf
not eax
add eax, 0xc68764c2
xor eax, 0xb9c65d44
rol eax, 0xf7
popf
pushf
not eax
add eax, 0xf5024d39
xor eax, 0xda30b565
rol eax, 0x37
popf
pushf
not eax
add eax, 0x8a2aa7db
xor eax, 0xdbcf0b60
rol eax, 0x93
popf
pushf
not eax
add eax, 0xbae5fed4
xor eax, 0x84b8492e
rol eax, 0xa3
popf
jmp 0x140168572
push rax
pushf
mov eax, 0x5f8bbfb3
pushf
not eax
add eax, 0xe473e41a
xor eax, 0xfa1c809b
rol eax, 0x93
popf
pushf
not eax
add eax, 0x9852b2fe
xor eax, 0xe895a17c
rol eax, 0x6b
popf
pushf
not eax
add eax, 0xdbc08b44
xor eax, 0xf5b35482
rol eax, 0x52
popf
pushf
not eax
add eax, 0xca178461
xor eax, 0xfe1ca620
rol eax, 0x1d
popf
jmp 0x140168572
cmp byte [rsp + 0xb0], 0
je 0x14016936f
push rax
pushf
mov eax, 0xb1963dd1
pushf
not eax
add eax, 0xfb4a38f2
xor eax, 0xc9897a82
rol eax, 0xc5
popf
pushf
not eax
add eax, 0xe7b7b700
xor eax, 0xe067821f
rol eax, 0xbd
popf
jmp 0x140168572
push rax
pushf
mov eax, 0xcbecaf7d
pushf
not eax
add eax, 0xbb14c196
xor eax, 0xe57042c4
rol eax, 0xe7
popf
pushf
not eax
add eax, 0xfe97f56e
xor eax, 0xfc6f8768
rol eax, 0x67
popf
jmp 0x140168572
movaps xmm0, xmmword [rsp + 0xa0]
movups xmmword [rsp + 0x30], xmm0
jmp 0x140169436
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x30], xmm0
push rax
pushf
mov eax, 0xec6e4415
pushf
not eax
add eax, 0xd9df6931
xor eax, 0x82bdeb2a
rol eax, 0x4c
popf
pushf
not eax
add eax, 0xc8f12a0f
xor eax, 0xff0e1312
rol eax, 0xcb
popf
jmp 0x140168572
mov rax, qword [rsp + 0x38]
cmp rax, qword [rsp + 0x30]
je 0x140169475
push rax
pushf
mov eax, 0x7de287b4
pushf
not eax
add eax, 0xe6985b45
xor eax, 0xaa5352f2
rol eax, 0x7e
popf
pushf
not eax
add eax, 0x92307a5c
xor eax, 0xe0e6da03
rol eax, 0x4c
popf
jmp 0x140168572
push rax
pushf
mov eax, 0x3f7fd175
pushf
not eax
add eax, 0xd8e884fb
xor eax, 0xd7a710c6
rol eax, 0xdc
popf
pushf
not eax
add eax, 0xcc300632
xor eax, 0xb480f60b
rol eax, 0x24
popf
pushf
not eax
add eax, 0xc8411fdd
xor eax, 0x8c0141da
rol eax, 0x7c
popf
jmp 0x140168572
mov byte [rdi + 0xa8], 1
mov rax, qword [rsp + 0xa0]
mov qword [rdi + 0x98], rax
mov rax, qword [rsp + 0xa8]
mov qword [rdi + 0xa0], rax
jmp 0x140169599
xor ebp, ebp
push rax
pushf
mov eax, 0x7dffa6e9
pushf
not eax
add eax, 0xad8a6947
xor eax, 0xe618fc88
rol eax, 0x97
popf
pushf
not eax
add eax, 0xecfde5f5
xor eax, 0xd1d1fe0e
rol eax, 0x85
popf
pushf
not eax
add eax, 0xeeb828d5
xor eax, 0xe847c75f
rol eax, 0xb1
popf
pushf
not eax
add eax, 0xee7c4d7f
xor eax, 0xd97111c6
rol eax, 0xcb
popf
jmp 0x140168572
mov qword [rdi + 0x90], rbp
lea rcx, [rsp + 0x70]
call fcn.140072ce8
mov rax, rdi
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rsi
ret