Function at 0x14022d834
Capabilities:
Encrypt data using speck

Disassembly:
push rax
pushf
mov eax, 0xb03ee621
pushf
not eax
add eax, 0x969fd873
xor eax, 0xab024eaf
rol eax, 0x80
popf
pushf
not eax
add eax, 0x8fdd7f51
xor eax, 0xc1fa3e80
rol eax, 0xa1
popf
pushf
not eax
add eax, 0x93faa435
xor eax, 0x8cf8aa8f
rol eax, 0x18
popf
cmp eax, 4
jne 0x14022d884
popf
pop rax
jmp 0x14022dc25
cmp eax, 0
jne 0x14022d893
popf
pop rax
jmp 0x14022da37
cmp eax, 3
jne 0x14022d8a2
popf
pop rax
jmp 0x14022db66
cmp eax, 1
jne 0x14022d8b1
popf
pop rax
jmp 0x14022dac4
cmp eax, 0xd
jne 0x14022d8c0
popf
pop rax
jmp 0x14022e086
cmp eax, 0x1a
jne 0x14022d8cf
popf
pop rax
jmp 0x14022e61c
cmp eax, 0xe
jne 0x14022d8de
popf
pop rax
jmp 0x14022e104
cmp eax, 0xb
jne 0x14022d8ed
popf
pop rax
jmp 0x14022df5f
cmp eax, 0x19
jne 0x14022d8fc
popf
pop rax
jmp 0x14022e5bd
cmp eax, 8
jne 0x14022d90b
popf
pop rax
jmp 0x14022ddff
cmp eax, 0x1d
jne 0x14022d91a
popf
pop rax
jmp 0x14022e75e
cmp eax, 0x17
jne 0x14022d929
popf
pop rax
jmp 0x14022e48b
cmp eax, 0x1c
jne 0x14022d938
popf
pop rax
jmp 0x14022e6f7
cmp eax, 0x12
jne 0x14022d947
popf
pop rax
jmp 0x14022e260
cmp eax, 0x18
jne 0x14022d956
popf
pop rax
jmp 0x14022e501
cmp eax, 0x11
jne 0x14022d965
popf
pop rax
jmp 0x14022e1f6
cmp eax, 0x1b
jne 0x14022d974
popf
pop rax
jmp 0x14022e6af
cmp eax, 0x16
jne 0x14022d983
popf
pop rax
jmp 0x14022e408
cmp eax, 0xa
jne 0x14022d992
popf
pop rax
jmp 0x14022dece
cmp eax, 0x14
jne 0x14022d9a1
popf
pop rax
jmp 0x14022e333
cmp eax, 0xf
jne 0x14022d9b0
popf
pop rax
jmp 0x14022e16f
cmp eax, 0x13
jne 0x14022d9bf
popf
pop rax
jmp 0x14022e2c4
cmp eax, 0x15
jne 0x14022d9ce
popf
pop rax
jmp 0x14022e3a2
cmp eax, 2
jne 0x14022d9dd
popf
pop rax
jmp 0x14022db24
cmp eax, 6
jne 0x14022d9ec
popf
pop rax
jmp 0x14022dd0d
cmp eax, 0xc
jne 0x14022d9fb
popf
pop rax
jmp 0x14022dfce
cmp eax, 7
jne 0x14022da0a
popf
pop rax
jmp 0x14022dd9e
cmp eax, 5
jne 0x14022da19
popf
pop rax
jmp 0x14022dc76
cmp eax, 9
jne 0x14022da28
popf
pop rax
jmp 0x14022de5d
cmp eax, 0x10
jne 0x14022da37
popf
pop rax
jmp 0x14022e1dc
sub rsp, 8
movsxd r8, dword [rcx + 8]
mov r9, rcx
mov r10d, dword [rcx + 0xc]
cmp r8d, r10d
jl 0x14022da7e
push rax
pushf
mov eax, 0xa3352ea4
pushf
not eax
add eax, 0xa0ec7964
xor eax, 0xc3236e18
rol eax, 0xb1
popf
pushf
not eax
add eax, 0xd6cbc633
xor eax, 0x8d3d490a
rol eax, 0x8a
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0xadc47524
pushf
not eax
add eax, 0xd44a69b7
xor eax, 0xccefb6d2
rol eax, 0xa2
popf
pushf
not eax
add eax, 0xbf4730cc
xor eax, 0xd201c774
rol eax, 0x2e
popf
pushf
not eax
add eax, 0xe0ddd964
xor eax, 0xe8aca77c
rol eax, 0x10
popf
jmp 0x14022d875
xor al, al
jmp 0x14022db66
mov rax, qword [rcx]
movzx eax, byte [r8 + rax]
inc r8d
mov dword [rcx + 8], r8d
push rax
pushf
mov eax, 0xca53d551
pushf
not eax
add eax, 0xd3221831
xor eax, 0xca4d9050
rol eax, 0
popf
pushf
not eax
add eax, 0xa6e383d3
xor eax, 0x845fb143
rol eax, 3
popf
jmp 0x14022d875
movzx edx, al
lea eax, [rdx - 0x20]
cmp eax, 0xd6
ja 0x14022dbcc
push rax
pushf
mov eax, 0x85226de8
pushf
not eax
add eax, 0xbbf702e8
xor eax, 0x98006312
rol eax, 0xaf
popf
pushf
not eax
add eax, 0xfafb106c
xor eax, 0x81b73993
rol eax, 8
popf
pushf
not eax
add eax, 0xebd3c9a1
xor eax, 0xb2ee0e0b
rol eax, 0x8a
popf
pushf
not eax
add eax, 0xc604c07a
xor eax, 0xd5221a51
rol eax, 0xc8
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0xda2aced0
pushf
not eax
add eax, 0xde15d0ec
xor eax, 0xa8823a2e
rol eax, 0x6a
popf
pushf
not eax
add eax, 0x986ebc20
xor eax, 0x83ac6695
rol eax, 0x4b
popf
pushf
not eax
add eax, 0xc0b27ef6
xor eax, 0x8a3b7ab3
rol eax, 0xad
popf
pushf
not eax
add eax, 0xb7c17f98
xor eax, 0xb02897c2
rol eax, 0xeb
popf
jmp 0x14022d875
lea eax, [rdx - 0x8b]
add rsp, 8
ret
lea eax, [rdx - 0xf7]
cmp eax, 3
ja 0x14022dcb4
push rax
pushf
mov eax, 0x841aef74
pushf
not eax
add eax, 0xc3a6e5ed
xor eax, 0xf7cb3ba6
rol eax, 0xb4
popf
pushf
not eax
add eax, 0xac77a6ee
xor eax, 0xce8b22d1
rol eax, 0xfd
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0x83ae6585
pushf
not eax
add eax, 0xa816b095
xor eax, 0xc411902d
rol eax, 0xce
popf
pushf
not eax
add eax, 0xc76cd419
xor eax, 0xa726455d
rol eax, 0x86
popf
pushf
not eax
add eax, 0xf6018c72
xor eax, 0xf05673d4
rol eax, 0xae
popf
pushf
not eax
add eax, 0x86cedc33
xor eax, 0xa26686e3
rol eax, 0xd6
popf
jmp 0x14022d875
cmp r8d, r10d
jl 0x14022dd45
push rax
pushf
mov eax, 0x9edadc1f
pushf
not eax
add eax, 0xeed4293e
xor eax, 0xe2afff43
rol eax, 0xd8
popf
pushf
not eax
add eax, 0xe0b6d397
xor eax, 0x83090ce4
rol eax, 0xd4
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0x2fb565fc
pushf
not eax
add eax, 0xd44fc5b8
xor eax, 0xc72a9b0e
rol eax, 0x89
popf
pushf
not eax
add eax, 0xa2988f31
xor eax, 0xda4fe9b2
rol eax, 0xbe
popf
pushf
not eax
add eax, 0xe59d0ff0
xor eax, 0xa47c38bb
rol eax, 0x2a
popf
pushf
not eax
add eax, 0xbb0241f9
xor eax, 0xf76f380e
rol eax, 0x7c
popf
jmp 0x14022d875
xor cl, cl
shl edx, 8
movzx eax, cl
add eax, 0xffff096c
push rdx
not edx
sub eax, edx
pop rdx
sub eax, 1
add rsp, 8
ret
mov rax, qword [r9]
movsxd rcx, r8d
shl edx, 8
movzx ecx, byte [rcx + rax]
lea eax, [r8 + 1]
mov dword [r9 + 8], eax
movzx eax, cl
add eax, 0xffff096c
push rdx
not edx
sub eax, edx
pop rdx
sub eax, 1
add rsp, 8
ret
lea eax, [rdx - 0xfb]
cmp eax, 3
ja 0x14022de9b
push rax
pushf
mov eax, 0x5ec09f1c
pushf
not eax
add eax, 0xaa326e52
xor eax, 0xe7ae1165
rol eax, 0xd1
popf
pushf
not eax
add eax, 0xac888863
xor eax, 0xefe72e8b
rol eax, 0x7e
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0x1bf8244a
pushf
not eax
add eax, 0xdaa7dd1c
xor eax, 0xb95b0d69
rol eax, 0x1a
popf
pushf
not eax
add eax, 0xceabd8e0
xor eax, 0xf48c0609
rol eax, 0xc7
popf
jmp 0x14022d875
cmp r8d, r10d
jl 0x14022df06
push rax
pushf
mov eax, 0x76ad4834
pushf
not eax
add eax, 0xa4a248cf
xor eax, 0xf14d6da0
rol eax, 0x6e
popf
pushf
not eax
add eax, 0xde6f97dd
xor eax, 0xef20e0ae
rol eax, 6
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0x4b5f8b01
pushf
not eax
add eax, 0xbe5b65e7
xor eax, 0xbb06cf8e
rol eax, 0x73
popf
pushf
not eax
add eax, 0xa260c6f0
xor eax, 0x8de0ffc5
rol eax, 0x61
popf
pushf
not eax
add eax, 0xead6f6d3
xor eax, 0x8a17becd
rol eax, 0x45
popf
pushf
not eax
add eax, 0xdbfe5200
xor eax, 0xfb32d190
rol eax, 0x96
popf
jmp 0x14022d875
xor cl, cl
shl edx, 8
mov eax, 0x4ae31134
pushf
not eax
add eax, 0xdccdc9c1
xor eax, 0x842d267c
rol eax, 0xee
popf
pushf
not eax
add eax, 0xd639452d
xor eax, 0xee7ed5eb
rol eax, 0x9e
popf
movzx ecx, cl
sub eax, edx
sub eax, ecx
add rsp, 8
ret
mov rax, qword [r9]
movsxd rcx, r8d
shl edx, 8
movzx ecx, byte [rcx + rax]
lea eax, [r8 + 1]
mov dword [r9 + 8], eax
mov eax, 0xa6c03f94
pushf
not eax
add eax, 0xcbfc01e2
xor eax, 0xe87b2db6
rol eax, 0x58
popf
pushf
not eax
add eax, 0xbeb877e2
xor eax, 0xce4124fa
rol eax, 0x5c
popf
pushf
not eax
add eax, 0xb99f3a48
xor eax, 0xcdfc9926
rol eax, 0xef
popf
sub eax, edx
movzx ecx, cl
sub eax, ecx
add rsp, 8
ret
cmp edx, 0x1c
jne 0x14022e0d1
push rax
pushf
mov eax, 0x4666f214
pushf
not eax
add eax, 0xe72ffdc0
xor eax, 0xa7adc40a
rol eax, 0x11
popf
pushf
not eax
add eax, 0xc16e82ea
xor eax, 0xcfc448a0
rol eax, 0x2d
popf
pushf
not eax
add eax, 0x9a3a7820
xor eax, 0x92aa5a5a
rol eax, 0x1e
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0xc7e6b15d
pushf
not eax
add eax, 0x9c34379a
xor eax, 0xe5a5d541
rol eax, 0x5a
popf
pushf
not eax
add eax, 0xd8596194
xor eax, 0xe3ddc046
rol eax, 0x8e
popf
jmp 0x14022d875
cmp r8d, r10d
jl 0x14022e13c
push rax
pushf
mov eax, 0xf3d28726
pushf
not eax
add eax, 0xf7cf826d
xor eax, 0xff1b83a9
rol eax, 0x31
popf
pushf
not eax
add eax, 0xf0c0ea77
xor eax, 0xfedcf0a8
rol eax, 0x6e
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0xb3fa6f9e
pushf
not eax
add eax, 0xa769902e
xor eax, 0x829b4849
rol eax, 0xfa
popf
pushf
not eax
add eax, 0xe04fad8b
xor eax, 0xc687fbe7
rol eax, 0xd7
popf
jmp 0x14022d875
xor r8d, r8d
xor cl, cl
shl r8d, 8
movzx eax, cl
or eax, r8d
add rsp, 8
ret
mov rax, qword [r9]
lea r11d, [r8 + 1]
movsxd rcx, r8d
movzx edx, byte [rcx + rax]
mov dword [r9 + 8], r11d
mov r8d, edx
cmp r11d, r10d
jl 0x14022e260
xor cl, cl
shl r8d, 8
movzx eax, cl
or eax, r8d
add rsp, 8
ret
movsxd rcx, r11d
shl r8d, 8
movzx ecx, byte [rcx + rax]
lea eax, [r11 + 1]
mov dword [r9 + 8], eax
movzx eax, cl
or eax, r8d
add rsp, 8
ret
cmp edx, 0x1d
jne 0x14022e300
push rax
pushf
mov eax, 0x2c29f379
pushf
not eax
add eax, 0xfcc62efa
xor eax, 0xde8136d6
rol eax, 0xe4
popf
pushf
not eax
add eax, 0xae95669f
xor eax, 0xccd0913e
rol eax, 0xb0
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0xef930506
pushf
not eax
add eax, 0xf00ea327
xor eax, 0xf4864c50
rol eax, 0x5c
popf
pushf
not eax
add eax, 0x890f0540
xor eax, 0x91bf2818
rol eax, 0x85
popf
jmp 0x14022d875
mov qword [rsp], rbx
cmp r8d, r10d
jl 0x14022e36f
push rax
pushf
mov eax, 0x9e1d72f0
pushf
not eax
add eax, 0x97cad0a0
xor eax, 0xc7b4c811
rol eax, 0xb7
popf
pushf
not eax
add eax, 0x9db4e4f1
xor eax, 0xbe95d80c
rol eax, 0x9f
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0x47937e57
pushf
not eax
add eax, 0xb6cf7e9f
xor eax, 0x9e53f71e
rol eax, 0xd7
popf
pushf
not eax
add eax, 0x9b5afb7f
xor eax, 0xee62f383
rol eax, 0x75
popf
jmp 0x14022d875
mov rbx, qword [rsp]
xor r8d, r8d
shl r8d, 8
xor al, al
shl r8d, 8
shl r8d, 8
movzx eax, al
or eax, r8d
add rsp, 8
ret
mov rax, qword [r9]
lea ebx, [r8 + 1]
movsxd rcx, r8d
movzx edx, byte [rcx + rax]
mov dword [r9 + 8], ebx
mov r11d, edx
mov r8d, edx
cmp ebx, r10d
jl 0x14022e458
push rax
pushf
mov eax, 0x4fb53cc8
pushf
not eax
add eax, 0xb4d0222e
xor eax, 0xc6166045
rol eax, 0xb6
popf
pushf
not eax
add eax, 0xe6a9fe66
xor eax, 0x9e818344
rol eax, 0x75
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0xc0e37e5f
pushf
not eax
add eax, 0xf488ad73
xor eax, 0xd9095156
rol eax, 0xa2
popf
pushf
not eax
add eax, 0x927acc63
xor eax, 0xe648d34b
rol eax, 0xac
popf
jmp 0x14022d875
mov rbx, qword [rsp]
xor al, al
shl r8d, 8
shl r8d, 8
shl r8d, 8
movzx eax, al
or eax, r8d
add rsp, 8
ret
movsxd rcx, ebx
jmp 0x14022e505
inc ebx
shl r11d, 8
movzx edx, byte [rcx + rax]
or r11d, edx
mov dword [r9 + 8], ebx
mov r8d, r11d
cmp ebx, r10d
jl 0x14022e564
push rax
pushf
mov eax, 0x7a1211a4
pushf
not eax
add eax, 0x95ded112
xor eax, 0x902f0f79
rol eax, 0x36
popf
pushf
not eax
add eax, 0xccb4750d
xor eax, 0xab3c208a
rol eax, 0x5d
popf
pushf
not eax
add eax, 0xe9a68fc4
xor eax, 0x9c10e44a
rol eax, 0x3e
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0x1472f51b
pushf
not eax
add eax, 0xfe9d254b
xor eax, 0xeff8aaf6
rol eax, 0xfc
popf
pushf
not eax
add eax, 0x9a73f23b
xor eax, 0xf8a45f85
rol eax, 0x21
popf
pushf
not eax
add eax, 0xa2c84e5a
xor eax, 0xf6959e1d
rol eax, 7
popf
pushf
not eax
add eax, 0xf4835340
xor eax, 0xf92428ae
rol eax, 0xdf
popf
jmp 0x14022d875
mov rbx, qword [rsp]
xor al, al
shl r8d, 8
shl r8d, 8
movzx eax, al
or eax, r8d
add rsp, 8
ret
movsxd rcx, ebx
jmp 0x14022e620
inc ebx
shl r8d, 8
movzx edx, byte [rcx + rax]
or r8d, edx
mov dword [r9 + 8], ebx
cmp ebx, r10d
jl 0x14022e67c
push rax
pushf
mov eax, 0xd0afbb7f
pushf
not eax
add eax, 0xbdc45493
xor eax, 0xdd7857a8
rol eax, 0x1b
popf
pushf
not eax
add eax, 0xfff0c02c
xor eax, 0xc8a942c8
rol eax, 0xd
popf
pushf
not eax
add eax, 0x807cd36e
xor eax, 0xfd0cee95
rol eax, 0xf8
popf
jmp 0x14022d875
push rax
pushf
mov eax, 0xa44cd5fe
pushf
not eax
add eax, 0xbd6f437b
xor eax, 0xa30cdbe5
rol eax, 0xc8
popf
pushf
not eax
add eax, 0xe22a45b9
xor eax, 0xb303abfe
rol eax, 0x8e
popf
jmp 0x14022d875
mov rbx, qword [rsp]
xor al, al
movzx eax, al
shl r8d, 8
or eax, r8d
add rsp, 8
ret
movsxd rdx, ebx
lea ecx, [rbx + 1]
mov rbx, qword [rsp]
shl r8d, 8
movzx eax, byte [rdx + rax]
movzx eax, al
or eax, r8d
mov dword [r9 + 8], ecx
add rsp, 8
ret
xor eax, eax
add rsp, 8
ret