Function at 0x1403b3e99
Capabilities:
Encrypt data using speck

Disassembly:
push r15
bsf r15w, r10w
btc r15d, r10d
or r15w, 0x65b3
push r14
push r13
movzx r13d, r15w
sal r13b, 0x6f
push r12
push rsi
test r14b, al
movsx r15d, dx
push rdi
dec r13
push rbp
dec r13b
cmovae r13w, r11w
inc r13
push rbx
sar r13, 0x4e
bsr bx, r11w
sub rsp, 0xa8
mov rbx, r9
mov r13, r8
mov qword [rsp + 0x70], rdx
mov r15, rcx
jmp 0x1403b3ef4
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x80], 0
jmp 0x1403b3f0a
mov qword [rsp + 0x90], 0xf
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], 0
test r12, rdi
clc
mov qword [rsp + 0x68], 0xf
cmp byte [rcx + 0x68], 0
jmp 0x1403b3f3d
jne 0x1403b3f53
mov qword [r15 + 0x60], 0
jmp 0x1403b3f53
mov qword [rsp + 0x88], 8
jmp 0x1403b3f69
mov qword [rsp + 0x78], 0
cmp bpl, 0xd8
mov byte [rsp + 0x80], 0
mov qword [r15 + 0x70], 0
cmp bp, 0x636e
cmp r13, rbx
je 0x1403b4335
lea r14, [r15 + 0x60]
mov r8b, dil
lea r12, [rsp + 0x78]
not sil
lea rsi, [rsp + 0x50]
mov r8, r13
jmp 0x1403b3fb0
mov qword [rsp + 0x98], r15
jmp 0x1403b3fbd
jmp 0x1403b4025
mov qword [rsp + 0x20], r8
setge r9b
mov rcx, rsi
mov rdx, r8
mov r9, rbp
jmp 0x1403b3fd9
call fcn.1403b4925
nop word cs:[rax + rax]
adc r8b, 0xa1
shld eax, r8d, 0x5b
bt r8w, 0xaf
mov r8, qword [rsp + 0x48]
and al, sil
mov rax, r8
cmc
sub rax, r13
cmp cl, 0x7e
clc
sar rax, 1
cmc
stc
mov qword [r15 + 0x70], rax
cmc
cmp r10w, dx
cmp r8, rbx
je 0x1403b4335
cmp qword [rsp + 0x90], 0x10
cmovbe rbp, rsi
movsx rbp, r8w
setb bpl
mov rbp, r12
jmp 0x1403b4042
jb 0x1403b4058
mov rbp, qword [rsp + 0x78]
cmp r11w, 0x2e15
movsx eax, r13w
stc
mov rcx, qword [r15 + 8]
mov rax, qword [rsp + 0x88]
movsx r9w, r15b
add rax, rbp
mov rdi, qword [rcx]
cdq
movsx r9, r15w
xchg dh, dl
lea rdx, [rsp + 0xa0]
cmovnp r9d, esi
mov qword [rsp + 0x38], rdx
movsx r9d, r11w
movzx r9, sp
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rbp
cdq
lea rax, [rsp + 0x48]
jmp 0x1403b40a4
mov qword [rsp + 0x20], rax
movzx dx, bpl
mov rdx, r14
mov r9b, 0x8b
xchg r9b, r9b
movsxd r9, r11d
mov r9, rbx
jmp 0x1403b40c2
call qword [rdi + 0x38]
cmp eax, 2
jmp 0x1403b40cd
jae 0x1403b41b0
mov r8, qword [rsp + 0xa0]
cmp rbp, r8
jmp 0x1403b40e3
jae 0x1403b4272
sub r8, rbp
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x68]
cwd
mov rdx, rax
cmp cx, 0x1b0
sub rdx, rcx
jmp 0x1403b4108
cmp rdx, r8
jmp 0x1403b4110
jb 0x1403b3fc2
mov r15, r13
mov r13, r12
shr rdi, cl
mov rdi, r14
movzx r12w, cl
lea r14, [rcx + r8]
cmp r14w, dx
xor r12w, 0x7978
bt r12w, 0xd7
mov qword [rsp + 0x60], r14
sar r12w, cl
mov r12, rsi
jmp 0x1403b414f
cmp rax, 0x10
jb 0x1403b4166
mov r12, qword [rsp + 0x50]
shl dh, 0x58
jmp 0x1403b4166
add rcx, r12
cmovae dx, r14w
mov rdx, rbp
jmp 0x1403b4176
call fcn.1404a3857
mov byte [r12 + r14], 0
xchg r12b, r14b
movzx r12w, bl
not r12d
mov r14, rdi
mov r12, r13
movzx r13w, r14b
movsx r13w, dil
jmp 0x1403b41a0
mov r13, r15
mov r15, qword [rsp + 0x98]
jmp 0x1403b3ffb
cmp eax, 3
jmp 0x1403b41b8
jne 0x1403b4422
mov rax, qword [rsp + 0x48]
jmp 0x1403b41c8
jmp 0x1403b41ff
mov edx, 1
movsx ecx, r13w
movsx cx, r15b
mov rcx, rsi
jmp 0x1403b41e3
call fcn.1403b4c68
mov rax, qword [rsp + 0x48]
cmp r11b, r9b
clc
jmp 0x1403b41f6
add rax, 2
mov qword [rsp + 0x48], rax
cmp rax, rbx
jmp 0x1403b4207
je 0x1403b3ffb
movzx r9d, byte [rax]
test r15b, r8b
and al, 0xe7
shl cl, 0x5c
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
test bp, dx
cmp rax, rcx
jmp 0x1403b422e
jae 0x1403b41cd
lea rdx, [rax + 1]
mov qword [rsp + 0x60], rdx
mov rdx, rsi
cmp dl, 0x1a
cmp r11d, r13d
cmp rcx, 0x10
jb 0x1403b425a
mov rdx, qword [rsp + 0x50]
jmp 0x1403b425a
mov byte [rdx + rax], r9b
jmp 0x1403b4263
mov byte [rdx + rax + 1], 0
jmp 0x1403b426d
jmp 0x1403b41e8
mov rax, qword [rsp + 0x88]
cmp r14b, r14b
cmp rax, 0xf
ja 0x1403b4422
mov rcx, qword [rsp + 0x90]
xor rdx, 0x370813e5
sal dh, cl
not dl
mov rdx, rcx
jmp 0x1403b42a2
sub rdx, rax
test r13b, 0x87
cmc
clc
cmp rdx, 8
jmp 0x1403b42b4
jae 0x1403b42e9
mov byte [rsp + 0x20], 0
setp ch
cwd
mov edx, 8
mov r9d, 8
not rcx
mov rcx, 0x4e1c06f7
movsxd rcx, r10d
mov rcx, r12
call fcn.1403b45fd
jmp 0x1403b3ffb
lea rdx, [rax + 8]
mov qword [rsp + 0x88], rdx
rol dh, cl
sar dx, cl
sub dl, r15b
mov rdx, r12
cmp rcx, 0x10
jmp 0x1403b4309
jb 0x1403b4319
mov rdx, qword [rsp + 0x78]
jmp 0x1403b4319
mov qword [rdx + rax], 0
jmp 0x1403b4326
mov byte [rdx + rax + 8], 0
jmp 0x1403b4330
jmp 0x1403b3ffb
movaps xmm0, xmmword [rsp + 0x50]
movaps xmm1, xmmword [rsp + 0x60]
mov rdi, qword [rsp + 0x70]
bts eax, r9d
movups xmmword [rdi + 0x10], xmm1
shl ah, 0x52
sete ah
bts eax, r13d
movups xmmword [rdi], xmm0
movzx ax, r12b
mov rax, qword [rsp + 0x90]
cmp rax, 0x10
jmp 0x1403b436f
jb 0x1403b43d5
mov rcx, qword [rsp + 0x78]
neg dl
bsf dx, sp
lea rdx, [rax + 1]
cmc
test r14b, r11b
cmp rdx, 0x1000
jb 0x1403b43d0
mov rbp, qword [rcx - 8]
test ecx, r15d
cmp sil, 0xd3
add rcx, 0xfffffffffffffff8
cmc
sub rcx, rbp
cmp r14b, 0x55
jmp 0x1403b43b1
cmp rcx, 0x20
jae 0x1403b45e6
add rax, 0x28
xchg dl, dh
cwd
cqo
mov rdx, rax
mov rcx, rbp
jmp 0x1403b43d0
call fcn.1401ba130
mov rax, rdi
add rsp, 0xa8
setl dil
cmovo si, cx
pop rbx
mov r15w, 0x3d8e
pop rbp
movsx r12w, dl
setae r14b
pop rdi
jmp 0x1403b4405
pop rsi
movsx r13d, bp
pop r12
bswap r14w
movsxd r15, edx
pop r13
xchg r15w, r15w
movzx r15d, r12w
pop r14
pop r15
ret
cmp byte [r15 + 0x69], 0
je 0x1403b45eb
xorps xmm0, xmm0
mov rdi, qword [rsp + 0x70]
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi], xmm0
rcl sil, 0x31
mov rsi, qword [r15 + 0x30]
clc
cmp qword [r15 + 0x38], 0x10
jb 0x1403b446a
mov r15, qword [r15 + 0x20]
cmp r11b, r9b
jmp 0x1403b445c
test rsi, rsi
jns 0x1403b447e
call fcn.1403b32cd
add r15, 0x20
stc
cmc
test rsi, rsi
jmp 0x1403b4478
js 0x1403b4465
cmp rsi, 0xf
jmp 0x1403b4487
ja 0x1403b44af
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], 0xf
movups xmm0, xmmword [r15]
jmp 0x1403b44a2
movups xmmword [rdi], xmm0
jmp 0x1403b44aa
jmp 0x1403b4559
mov rax, rsi
movsx bx, spl
or rax, 0xf
cmp rax, 0x17
jmp 0x1403b44c6
mov ebx, 0x16
jmp 0x1403b44d0
cmovae rbx, rax
cmp sil, sil
clc
cmp rbx, 0xfff
jmp 0x1403b44e4
jb 0x1403b4512
lea rcx, [rbx + 0x28]
call fcn.140448126
lea rcx, [rax + 0x27]
cmp r12b, 0x29
and rcx, 0xffffffffffffffe0
jmp 0x1403b4504
mov qword [rcx - 8], rax
jmp 0x1403b450d
jmp 0x1403b451e
lea rcx, [rbx + 1]
call fcn.140448126
mov rcx, rax
mov qword [rdi], rcx
movsx dx, dil
movzx r8, r10w
mov qword [rdi + 0x10], rsi
xchg dl, r8b
movsx r8d, r14w
mov qword [rdi + 0x18], rbx
inc rsi
mov rdx, r15
bswap r8w
mov r8w, r8w
movzx r8w, r10b
mov r8, rsi
jmp 0x1403b4554
call fcn.1404a3857
mov rax, qword [rsp + 0x68]
test r10w, r10w
test r9b, 0x91
cmp rax, 0x10
jmp 0x1403b456f
jb 0x1403b435e
mov rcx, qword [rsp + 0x50]
cmp ebp, 0x413d602d
lea rdx, [rax + 1]
cmc
cmp rdx, 0x1000
jmp 0x1403b4591
jb 0x1403b45dc
mov rbp, qword [rcx - 8]
cmp r10w, bp
add rcx, 0xfffffffffffffff8
test dx, cx
jmp 0x1403b45ab
sub rcx, rbp
clc
test r15b, bl
cmp rcx, 0x20
jmp 0x1403b45bb
jae 0x1403b45e6
add rax, 0x28
movsx dx, r12b
bswap ecx
jmp 0x1403b45d1
mov rdx, rax
mov rcx, rbp
jmp 0x1403b45dc
call fcn.1401ba130
jmp 0x1403b435e
call fcn.1404b63f8
lea rcx, [0x1400ce4f6]
call fcn.1403b2be4
int3