Function at 0x1403e34da
Capabilities:
Encrypt data using speck

Disassembly:
push r15
bt r10, 0x66
xadd r10b, r10b
push r14
stc
push r13
btc r9w, si
movzx r10d, ax
rcl r14, 4
push r12
test r10w, r15w
push rsi
push rdi
bt r15, 0x17
bt r10w, r11w
xchg r12b, r9b
push rbp
movzx r15w, bpl
push rbx
rcr r10b, cl
sub r9b, bpl
stc
sub rsp, 0x78
movaps xmmword [rsp + 0x60], xmm6
setbe r15b
adc bl, sil
movsx r9w, r15b
mov r12, r8
mov rbx, rdx
bswap r10d
jmp 0x1403e353d
mov r14, rcx
add r12, rdx
mov dword [rcx + 8], 0
xor r10, 0x3d0f4ad3
lea r9, [rsp + 0x50]
btr r10w, 0x6d
lea r15, [rcx + 0x18]
inc r10b
xor eax, eax
mov r10b, r9b
movzx r10w, r14b
not r10w
lea r10, [0x1400bedd0]
jmp 0x1403e357d
xorps xmm6, xmm6
lea r11, [rsp + 0x28]
xor ecx, ecx
lea r13, [rbx + 1]
cmp sil, 0x1a
stc
cmp r13, r12
ja 0x1403e3c90
mov rdx, rbx
shl dil, cl
movzx edi, byte [rbx]
mov ebp, edi
movsx ebx, r10w
sar bx, cl
bts rbx, r13
and ebp, 0x7f
shl rbp, cl
add bl, dil
rol bx, cl
shld rbx, r14, 0xf2
add rax, rbp
movsx rbx, sp
sbb bl, 0xb5
add rcx, 7
btr ebx, 0x60
adc bx, 0x2286
setns bh
mov rbx, r13
test dil, dil
jmp 0x1403e35e5
js 0x1403e3587
mov rcx, rax
shr rcx, 3
cmp rcx, 4
jmp 0x1403e35fb
jle 0x1403e362e
cmp rcx, 5
je 0x1403e36cb
cmp rcx, 6
jmp 0x1403e3614
je 0x1403e3788
cmp rcx, 7
jmp 0x1403e3623
je 0x1403e382e
jmp 0x1403e3647
cmp rcx, 1
jmp 0x1403e3637
je 0x1403e38dc
cmp rcx, 2
je 0x1403e397e
and eax, 7
cmp ebp, 0x1d9d7fa4
stc
cmc
cmp rax, 1
jmp 0x1403e365b
jg 0x1403e3b5e
test rax, rax
jmp 0x1403e3669
jne 0x1403e3c27
mov rdx, r13
adc bl, bh
add rbx, r9
jmp 0x1403e367c
nop dword [rax]
stc
jmp 0x1403e3688
lea rbx, [rdx + 1]
clc
stc
cmp rbx, r12
jmp 0x1403e3696
ja 0x1403e3c90
cmp byte [rdx], 0
movsx rdx, r9w
rdtsc
mov eax, 0
setl dh
mov ecx, 0
not dl
movzx dx, dl
mov rdx, rbx
jmp 0x1403e36c0
js 0x1403e3688
jmp 0x1403e3587
test al, 7
jmp 0x1403e36d2
jne 0x1403e3c90
or byte [r14 + 8], 0x20
rcr rdx, cl
bts bx, di
sub dl, r9b
mov rdx, r13
seta bh
sub eax, eax
bsr bx, r14w
bt ebx, 0xcb
shrd bx, r9w, 0xe4
xor ecx, ecx
sal bl, 0x19
sub bl, r8b
movsx rbx, r14w
nop dword [rax + rax]
rcl ebx, cl
sar bl, 0xec
lea rbx, [rdx + 1]
cmc
cmp rbx, r12
jmp 0x1403e3724
ja 0x1403e3c90
movzx ebp, byte [rdx]
rcr dh, 0x1e
mov edx, ebp
and edx, 0x7f
cmp dx, 0x13b7
clc
shl rdx, cl
cmp r8b, bl
clc
test si, 0x2aac
add rax, rdx
add rcx, 7
and dh, dh
rol dx, cl
mov rdx, rbx
cmc
test r14, 0x711015d1
test bpl, bpl
jmp 0x1403e3766
js 0x1403e3717
mov qword [r14 + 0x30], rax
cmc
test ebx, 0x115f5875
jmp 0x1403e377c
xor eax, eax
jmp 0x1403e3783
jmp 0x1403e3585
test al, 7
jne 0x1403e3c90
or byte [r14 + 8], 0x40
bt ebx, 0x44
shl dl, 0x41
mov rdx, r13
test rsi, r13
sub eax, eax
jmp 0x1403e37ae
sub ecx, ecx
rol bx, cl
nop word cs:[rax + rax]
lea rbx, [rdx + 1]
cmp bh, 0x7d
clc
test ecx, r8d
cmp rbx, r12
jmp 0x1403e37d0
ja 0x1403e3c90
movzx ebp, byte [rdx]
shl dh, 0x8f
rol dx, cl
mov edx, ebp
cmp dil, r11b
cmp r14b, 0xcb
and edx, 0x7f
cmp r15b, 0x73
shl rdx, cl
test r9b, 0x21
test r13b, dl
lea rax, [rax + rdx]
add rcx, 7
bts dx, r10w
rol dx, cl
mov rdx, rbx
test r15d, r13d
test bpl, bpl
jmp 0x1403e3817
js 0x1403e37bd
mov qword [r14 + 0x38], rax
cmc
sub eax, eax
jmp 0x1403e3829
jmp 0x1403e3585
test al, 7
jne 0x1403e3c90
or byte [r14 + 8], 0x80
ror bx, 0xa
inc dh
mov rdx, r13
bts rbx, r12
dec bh
rcl ebx, 0x24
sub eax, eax
bt ebx, 0xbd
stc
xor ecx, ecx
sbb bh, ch
rcl bx, 0x47
xadd bl, bh
nop word cs:[rax + rax]
ror bx, 0xa7
sub rbx, rbx
lea rbx, [rdx + 1]
cmp rbx, r12
jmp 0x1403e387c
ja 0x1403e3c90
movzx ebp, byte [rdx]
mov edx, ebp
clc
jmp 0x1403e388d
and edx, 0x7f
test bp, 0x2d28
shl rdx, cl
clc
add rax, rdx
bsf dx, r14w
sbb dl, dil
dec dx
add rcx, 7
xor dl, ah
shr edx, cl
movzx dx, sil
mov rdx, rbx
test bpl, bpl
jmp 0x1403e38bf
js 0x1403e3870
mov qword [r14 + 0x40], rax
jmp 0x1403e38d0
xor eax, eax
jmp 0x1403e38d7
jmp 0x1403e3585
test al, 7
jmp 0x1403e38e3
jne 0x1403e3c90
or byte [r14 + 8], 2
mov rdx, r13
bswap bx
rcl bx, 0x92
btr bx, 0xba
xor eax, eax
sub ecx, ecx
not rbx
nop word cs:[rax + rax]
lea rbx, [rdx + 1]
cmc
cmp r8w, 0x15b6
cmp rbx, r12
jmp 0x1403e3921
ja 0x1403e3c90
movzx ebp, byte [rdx]
setne dh
btr dx, 0x42
btc rdx, 0x6c
mov edx, ebp
test ebp, 0x19373252
and edx, 0x7f
stc
clc
shl rdx, cl
clc
lea rax, [rax + rdx]
add rcx, 7
mov dl, 0x60
sar dx, 0x38
mov rdx, rbx
clc
test bpl, bpl
jmp 0x1403e3962
js 0x1403e390e
mov qword [r14 + 0x10], rax
test esi, 0x63ea580d
xor eax, eax
jmp 0x1403e3979
jmp 0x1403e3585
and eax, 7
cmc
cmp eax, 2
jmp 0x1403e398a
jne 0x1403e3c90
or byte [r14 + 8], 4
movsx rdx, cx
mov dx, sp
mov rbp, r13
jmp 0x1403e39a4
sub r8d, r8d
xor ecx, ecx
shrd edx, r8d, 0xec
btc edx, 0x8a
nop dword [rax + rax]
sbb dl, 0x20
bsr dx, di
lea rdx, [rbp + 1]
cmp rdx, r12
ja 0x1403e3c90
mov rax, r8
movsx ebx, r12w
and dil, 0x10
btr rbx, 0x48
movzx edi, byte [rbp]
mov ebx, edi
sal bp, 0xa1
shld ebp, r14d, 0xdc
and ebx, 0x7f
bts rbp, rax
rcl bpl, 0x34
shl rbx, cl
sal bp, cl
rcl ebp, 0x5b
adc bpl, r14b
add r8, rbx
add rcx, 7
rol bp, cl
mov rbp, rdx
jmp 0x1403e3a13
test dil, dil
jmp 0x1403e3a1b
js 0x1403e39be
lea rbx, [rbx + rax]
lea rbx, [rbx + rdx]
stc
cmp r15w, 0x6d
cmp di, r8w
cmp rbx, r12
ja 0x1403e3c90
mov rdi, r10
movzx cx, dh
movsxd rbp, edx
movzx esi, dx
mov qword [rsp + 0x28], r10
jmp 0x1403e3a54
mov dword [rsp + 0x30], 0
movzx bp, dil
mov bpl, 0x3b
movups xmmword [r9 - 0x18], xmm6
xchg ecx, ecx
jmp 0x1403e3a70
mov dword [r9 - 8], 0
movsx bp, r9b
mov rsi, r9
mov ebp, esi
movups xmmword [r9], xmm6
mov bpl, r13b
movsx rcx, r14w
xchg ch, ch
mov rbp, r11
movsx ecx, sp
movzx ecx, r15w
cmove rcx, rsi
mov rcx, r11
call fcn.1403e45b7
test al, al
jmp 0x1403e3aac
je 0x1403e3c90
mov rdx, qword [r14 + 0x20]
test bpl, r15b
cmp rdx, qword [r14 + 0x28]
je 0x1403e3c5b
mov r10, rdi
shld r9d, edx, 0xee
shl eax, cl
movzx r9, r10w
mov qword [rdx], rdi
mov dword [rdx + 8], 0
cbw
add r9d, r12d
clc
movups xmmword [rdx + 0x28], xmm6
xadd r11b, r9b
rol r11b, cl
mov eax, dword [rsp + 0x30]
mov dword [rdx + 8], eax
bts r11w, bp
rol rax, 0xb1
movsxd rax, r9d
mov rax, qword [rsp + 0x38]
shrd r11w, r12w, 0x49
rcr r9w, 0x97
mov qword [rdx + 0x10], rax
bsr r9, r14
mov rax, qword [rsp + 0x40]
mov qword [rdx + 0x18], rax
mov eax, dword [rsp + 0x48]
setbe r11b
ror r11, cl
shr r9w, 0x89
mov dword [rdx + 0x20], eax
setg r9b
mov r9, rsi
movups xmm0, xmmword [rsi]
or r11b, 0xab
movups xmmword [rdx + 0x28], xmm0
add qword [r14 + 0x20], 0x38
cmp r15w, 0x6bce
stc
mov r11, rbp
test sil, r8b
xor eax, eax
jmp 0x1403e3585
cmp eax, 5
je 0x1403e3c3e
cmp eax, 2
jmp 0x1403e3b6f
jne 0x1403e3c90
mov rax, r13
sub edx, edx
sar di, 0xb5
dec dil
and di, si
sub ecx, ecx
adc edi, r15d
nop
shrd edi, edx, 0x92
test bl, r14b
or dil, r15b
lea rdi, [rax + 1]
clc
cmp rdi, r12
ja 0x1403e3c90
mov rbp, rdx
rcl esi, 0xde
mov ebx, r15d
shl esi, 0x6c
movzx esi, byte [rax]
shrd rbx, rbp, 0x63
bt rax, r13
rol eax, 0x10
mov ebx, esi
mov ah, 0x20
rol rax, cl
dec eax
and ebx, 0x7f
shl rbx, cl
cwde
neg eax
lea rdx, [rdx + rbx]
sub al, dl
btr ax, 0xb9
movsxd rax, r10d
add rcx, 7
mov rax, rdi
cmp spl, bl
test sil, sil
jmp 0x1403e3bf1
js 0x1403e3b95
lea rbx, [rbx + rbp]
cmp bx, r13w
cmc
jmp 0x1403e3c05
add rbx, rdi
cmp rbx, r12
jmp 0x1403e3c10
cmova rbx, rdi
cmc
jmp 0x1403e3c1b
xor eax, eax
jmp 0x1403e3c22
jmp 0x1403e3585
cmp eax, 1
jne 0x1403e3c90
add rdx, 9
jmp 0x1403e3c39
jmp 0x1403e3c42
add rdx, 5
cmp rdx, r12
cmova rdx, r13
shr rbx, cl
mov rbx, rdx
xor eax, eax
jmp 0x1403e3c56
jmp 0x1403e3585
mov rcx, r15
jmp 0x1403e3c6b
mov r8, rbp
call fcn.1403e4f4f
mov r11, rbp
movsx r9, bx
sar r9b, cl
mov r9, rsi
add r10b, r9b
mov r10, rdi
cmp r13b, al
xor eax, eax
jmp 0x1403e3585
cmp r13, r12
seta al
shrd bx, r12w, 0x4c
movaps xmm6, xmmword [rsp + 0x60]
xadd r13b, r14b
movsx si, cl
add rsp, 0x78
cmove r14w, cx
pop rbx
jmp 0x1403e3cbc
pop rbp
movzx r12d, bx
sete sil
movsxd r14, r14d
pop rdi
movzx r15d, bx
pop rsi
movzx r13w, spl
not r13w
xchg r15w, r13w
pop r12
pop r13
movsx r14w, sil
pop r14
jmp 0x1403e3cf3
pop r15
jmp 0x1403e3cfa
ret