Function at 0x14071cc50
Capabilities:
Encrypt data using speck

Disassembly:
mov qword [rsp + 0x10], rdx
adc r10d, 0x6c15351a
push rbx
inc r10w
push rbp
or r10w, r9w
and r10w, 0xe833
push rsi
push rdi
bsr r10, rsi
cmp ah, ah
shl si, 0xb6
push r12
sar si, cl
push r14
xor r14b, r8b
shl r14, 0x90
stc
push r15
sub rsp, 0x220
clc
neg r14
mov r10d, dword [rcx]
btr r14w, bp
or r14d, r9d
shl r14b, 0x12
mov r14, rdx
test al, r12b
mov rsi, rcx
cmp r13b, 0x8e
cmp dil, spl
test r10d, r10d
je 0x14071d566
mov edi, dword [rdx]
test edi, edi
jmp 0x14071ccc5
je 0x14071d566
dec r10d
ror ax, cl
inc ax
not ah
lea eax, [rdi - 1]
stc
cmp ebp, ebx
clc
test eax, eax
jmp 0x14071cce4
jne 0x14071cebe
mov r12d, dword [rdx + 4]
xor ebp, ebp
cmp r12d, 1
jne 0x14071cd3d
mov ebx, dword [rcx + 4]
btc rdx, 0x8d
shrd dx, r8w, 0xa9
lea r8, [rsp + 0x44]
add rcx, 4
mov dword [rsi], ebp
bsr edx, r14d
xor r9d, r9d
movzx edx, r15w
mov dword [rsp + 0x40], ebp
mov edx, 0x1cc
jmp 0x14071cd2c
call fcn.14071eab4
mov eax, ebx
jmp 0x14071cd38
jmp 0x14071d573
test r10d, r10d
jmp 0x14071cd45
jne 0x14071cdc9
mov ebx, dword [rcx + 4]
sar dx, 0xc
lea r8, [rsp + 0x44]
or dx, 0x9d13
stc
jmp 0x14071cd62
mov dword [rcx], ebp
movsx rdx, ax
sub dx, 0x75b0
movzx rdx, r13w
xor r9d, r9d
bts edx, edx
add rcx, 4
movsx edx, di
mov dword [rsp + 0x40], ebp
movzx edx, cx
mov dl, ch
movsxd rdx, r13d
mov edx, 0x1cc
jmp 0x14071cd94
call fcn.14071eab4
sub edx, edx
mov eax, ebx
stc
div r12d
test edx, edx
mov bpl, 0x24
mov dword [rsi + 4], edx
mov bpl, 0x96
jmp 0x14071cdb4
setne bpl
jmp 0x14071cdbd
mov dword [rsi], ebp
jmp 0x14071cdc4
jmp 0x14071d573
mov r15d, 0xffffffff
sbb dil, 0xac
mov rdi, rbp
bsr r14w, r14w
mov r14, rbp
cmp r13w, 0xa91a
cmp r10d, r15d
je 0x14071ce53
mov rcx, r12
rcr al, 0x8e
cmovs ax, bp
movzx eax, r13w
mov eax, dword [rsi + r10*4 + 4]
sub edx, edx
shl r14, 0x20
add r10d, r15d
cmc
cmp r14d, edi
or rax, r14
btc r14w, 0x9f
cmc
shl rdi, 0x20
not r14w
xor r14d, 0x11901206
div rcx
mov eax, eax
and r14b, 0x11
ror r14w, cl
btc r14d, r11d
mov r14, rdx
test r11d, 0x3abfbb0f
lea rdi, [rdi + rax]
cmp r10d, r15d
jmp 0x14071ce4d
jne 0x14071cdfb
sub r9d, r9d
movsx edx, r10w
cdq
mov dword [rsp + 0x40], ebp
cdq
lea r8, [rsp + 0x44]
mov dword [rsi], ebp
mov edx, 0x1cc
lea rcx, [rsi + 4]
jmp 0x14071ce75
call fcn.14071eab4
mov rcx, r14
not ax
bt ax, cx
mov dword [rsi + 4], r14d
bsr ax, r13w
shr rcx, 0x20
add ax, 0x6abc
test ax, 0xfe95
mov rax, rdi
rol bpl, cl
test ecx, ecx
mov bpl, 0x1c
mov dword [rsi + 8], ecx
setne bpl
jmp 0x14071ceb0
inc ebp
mov dword [rsi], ebp
jmp 0x14071ceb9
jmp 0x14071d573
cmp eax, r10d
jmp 0x14071cec6
ja 0x14071d566
mov r8d, r10d
movzx ebx, r8w
cmovnp dx, cx
bt r9, 0x97
movsxd rdx, r10d
shr r9b, 0x17
rcl r9b, 0x82
sub r8d, eax
shl r9, 0xb9
clc
and bl, spl
mov r9d, r10d
movsxd rbx, r8d
test r10b, 0
cmp rdx, rbx
jmp 0x14071cf04
jl 0x14071cfa2
add rcx, 4
lea rax, [rbx*4]
movsxd r11, r11d
movzx r11, r9w
mov r11, r14
cmc
sub r11, rax
cmc
sub r11, rsi
btr ax, 0x2d
cmove eax, edi
cwde
lea rcx, [rcx + rdx*4]
mov eax, dword [rcx]
test ch, al
cmp dword [r11 + rcx], eax
jne 0x14071cf6f
dec r9d
jmp 0x14071cf4b
dec rdx
cmp r14d, 0xe78ac01c
test rdx, rax
jmp 0x14071cf5d
sub rcx, 4
cmp rdx, rbx
jge 0x14071cf35
jmp 0x14071cfa2
mov eax, r9d
sub eax, r8d
movsxd rdx, eax
jmp 0x14071cf7d
movsxd rax, r9d
mov ecx, ebx
movsx cx, r11b
test r11w, 0xd6be
mov ecx, dword [rsi + rax*4 + 4]
stc
cmp dword [r14 + rdx*4 + 4], ecx
jmp 0x14071cf9c
jae 0x14071cfa5
inc r8d
test r8d, r8d
je 0x14071d566
lea eax, [rdi - 1]
movsx ebp, r13w
stc
mov ebx, 0x20
mov r9d, dword [r14 + rax*4 + 4]
ror bp, 0x12
lahf
bt ax, 0xa9
lea eax, [rdi - 2]
btr bp, 0x28
mov ebp, dword [r14 + rax*4 + 4]
or eax, 0xde2ddf36
add al, sil
rcl ax, 0x19
bsr eax, r9d
jmp 0x14071cfec
mov dword [rsp + 0x260], ebp
je 0x14071d00d
mov r11d, 0x1f
test r13w, 0x4106
sub r11d, eax
jmp 0x14071d010
mov r11d, ebx
sub ebx, r11d
stc
cmp edi, 0x7c3809a6
mov dword [rsp + 0x270], r11d
test r13b, bl
mov dword [rsp + 0x20], ebx
stc
cmc
jmp 0x14071d030
test r11d, r11d
jmp 0x14071d038
je 0x14071d0b2
mov eax, r9d
movsxd rdx, r14d
dec r9d
mov edx, ebp
btr cx, r9w
bt cx, r15w
mov ecx, ebx
movsxd r9, ebp
shld r9d, r12d, 0xa4
shr edx, cl
mov ecx, r11d
shl eax, cl
mov r9d, edx
shl ebp, cl
or r9d, eax
mov dword [rsp + 0x260], ebp
cmp bx, si
clc
cmp edi, 2
jmp 0x14071d07f
jbe 0x14071d0b2
lea eax, [rdi - 3]
sub rcx, r14
mov cl, dl
mov ecx, ebx
shl r12w, 0x3e
rcl r12b, 8
stc
mov eax, dword [r14 + rax*4 + 4]
shr eax, cl
or ebp, eax
clc
movzx r12, di
mov dword [rsp + 0x260], ebp
xadd r12b, r14b
xor ebp, ebp
cmc
lea r14d, [r8 - 1]
mov r12d, ebp
test r14d, r14d
jmp 0x14071d0c4
js 0x14071d4c6
mov eax, ebx
cmp sp, r15w
add bx, 0x9731
add bx, bx
mov r15d, 0xffffffff
and bh, 0xb5
mov ebx, r9d
test r15d, r9d
mov qword [rsp + 0x218], r13
shl r13b, cl
jmp 0x14071d0f7
lea r13d, [r14 + rdi]
mov qword [rsp + 0x38], rbx
stc
cmp r9w, 0x49a0
mov qword [rsp + 0x30], rax
cmp r13d, r10d
jmp 0x14071d114
ja 0x14071d129
mov edx, dword [rsi + r13*4 + 4]
jmp 0x14071d124
jmp 0x14071d131
mov edx, ebp
btr r11w, 0xd
lea eax, [r13 - 1]
ror rcx, 6
movzx ecx, r9w
setl r11b
mov dword [rsp + 0x278], edx
mov ecx, dword [rsi + rax*4 + 4]
ror ah, cl
lea eax, [r13 - 2]
mov r11d, dword [rsi + rax*4 + 4]
cmp r14d, 0x39204a0b
cmc
mov qword [rsp + 0x28], rcx
cmp esi, 0x50b6791a
mov dword [rsp + 0x2c], edx
xchg rdx, rdx
mov rdx, 0x30b46621
cmp r8b, al
mov edx, dword [rsp + 0x270]
test dl, r9b
cmp r11b, 0xba
test edx, edx
je 0x14071d21b
mov rcx, qword [rsp + 0x30]
sbb r8b, 0x98
bsf eax, edi
sal ah, 0xa0
mov r8d, r11d
sar ah, 0x3f
cmp dil, 0x12
clc
mov rax, qword [rsp + 0x28]
jmp 0x14071d1b7
shr r8, cl
bts ecx, edx
movzx cx, dil
sbb rcx, 0xffffffffeeb0e0bf
mov ecx, edx
test rbp, 0xfffffffffe069c03
test r15, rsp
clc
shl rax, cl
or r8, rax
test dh, 0x90
cmp di, r11w
shl r11d, cl
cmp esp, r8d
cmc
cmp r13d, 3
jb 0x14071d22d
mov ecx, dword [rsp + 0x20]
xor ax, cx
add ax, r11w
xor ah, 0xb6
lea eax, [r13 - 3]
cmc
mov eax, dword [rsi + rax*4 + 4]
shr eax, cl
jmp 0x14071d213
or r11d, eax
jmp 0x14071d22d
mov r8, qword [rsp + 0x28]
xadd ax, r9w
setle al
btc ax, 0x93
sub edx, edx
bsf r9d, ebx
mov al, 0xb9
btc eax, ebp
mov rax, r8
xchg r8b, r8b
div rbx
rcr r8, 0x1f
dec r8b
adc r9b, 4
mov r8d, edx
or r9b, r11b
sar r9b, 0x3e
mov r9, rax
cmc
cmp rax, r15
jmp 0x14071d262
jbe 0x14071d28c
movabs rax, 0xffffffff00000001
cmp r14w, r12w
cmc
add rax, r9
cmp ax, 0x7598
sbb r9b, 0x91
mov r9, r15
imul rax, rbx
add r8, rax
cmp r8, r15
jmp 0x14071d294
ja 0x14071d2f7
mov edx, dword [rsp + 0x260]
shld ecx, r9d, 0x16
mov eax, edx
movzx ecx, ax
stc
rcr cx, cl
imul rax, r9
adc cl, 0xa3
ror ch, cl
mov rcx, r8
stc
jmp 0x14071d2c4
shl rcx, 0x20
test rbx, 0x551491a0
cmp r14, rsi
or rcx, r11
cmp rax, rcx
jmp 0x14071d2dd
jbe 0x14071d2f7
dec r9
clc
sub rax, rdx
stc
add r8, rbx
cmp r8, r15
jbe 0x14071d2b8
test r9, r9
jmp 0x14071d2ff
je 0x14071d48e
mov r10, rbp
mov r11d, ebp
test edi, edi
jmp 0x14071d312
je 0x14071d3d0
mov rbx, qword [rsp + 0x268]
btr r8, r14
movsx rdx, ax
add rbx, 4
adc eax, r13d
test dl, r8b
nop dword [rax]
sub r8b, sil
or al, r14b
clc
mov eax, dword [rbx]
xor r8w, 0xdd22
movsx rdx, sp
sbb dx, 0x4222
lea rbx, [rbx + 4]
imul rax, r9
lea r10, [r10 + rax]
shl rax, cl
lea eax, [r11 + r14]
rol r8b, 0x18
xor r8b, al
bsf cx, r14w
mov r8d, r10d
bts ecx, edx
sub cl, r11b
cdq
mov ecx, eax
adc dh, 0x10
shr r10, 0x20
movzx rdx, r10w
not dl
mov eax, dword [rsi + rax*4 + 4]
mov rdx, r10
jmp 0x14071d391
inc r10
cmp eax, r8d
jmp 0x14071d39c
cmovae r10, rdx
sub eax, r8d
jmp 0x14071d3a8
inc r11d
jmp 0x14071d3b1
mov dword [rsi + rcx*4 + 4], eax
stc
cmp dil, 0x1b
cmp r11d, edi
jmp 0x14071d3c2
jb 0x14071d33c
mov rbx, qword [rsp + 0x38]
sal al, 0xab
mov eax, dword [rsp + 0x278]
cmc
cmp rax, r10
jmp 0x14071d3e0
jae 0x14071d489
mov r10d, ebp
clc
jmp 0x14071d3f3
test edi, edi
jmp 0x14071d3fa
je 0x14071d486
mov r11, qword [rsp + 0x268]
movsx r8, cx
ror edx, cl
mov r8, rbp
sal al, 0x8a
movzx edx, bx
bts dx, r8w
add r11, 4
cqo
cmovo ecx, r12d
lea eax, [r10 + r14]
movzx dx, r13b
inc cl
movzx rcx, r12w
inc r10d
cdq
mov ecx, dword [rsi + rax*4 + 4]
shr dh, cl
sal dl, cl
inc dh
lea rdx, [rsi + rax*4]
add eax, 0x1ba794ab
mov eax, dword [r11]
lea r11, [r11 + 4]
lea r8, [r8 + rax]
add r8, rcx
clc
cmc
jmp 0x14071d461
mov dword [rdx + 4], r8d
jmp 0x14071d46d
shr r8, 0x20
cmc
cmp r14, rax
cmp dl, 0xa3
cmp r10d, edi
jmp 0x14071d480
jb 0x14071d426
dec r9
lea r10d, [r13 - 1]
lahf
shl r12, 0x20
nop
dec r13d
shr ah, 0x20
cwde
bt ax, di
mov eax, r9d
add r12, rax
sub r14d, 1
jmp 0x14071d4ad
jns 0x14071d10c
mov r13, qword [rsp + 0x218]
xchg cx, dx
cmova dx, r10w
add dh, 0xa1
lea edx, [r10 + 1]
add ch, 0x93
mov cl, r14b
test rsi, 0x5998251e
mov ecx, edx
jmp 0x14071d4de
cmp edx, dword [rsi]
jmp 0x14071d4e5
jae 0x14071d51f
nop word [rax + rax]
bswap ax
dec eax
mov eax, ecx
jmp 0x14071d4fd
inc ecx
cmc
cmp r12, r15
mov dword [rsi + rax*4 + 4], ebp
cmp spl, r15b
jmp 0x14071d512
cmp ecx, dword [rsi]
jmp 0x14071d519
jb 0x14071d4f6
mov dword [rsi], edx
cmc
cmp r11w, 0x4d82
test edx, edx
jmp 0x14071d52f
je 0x14071d559
dec edx
cmp spl, 0x16
jmp 0x14071d540
cmp dword [rsi + rdx*4 + 4], ebp
jmp 0x14071d549
jne 0x14071d559
mov dword [rsi], edx
test edx, edx
jne 0x14071d535
mov rax, r12
jmp 0x14071d561
jmp 0x14071d573
xor eax, eax
mov r14b, r11b
movzx rbp, bx
xor r14w, dx
add rsp, 0x220
movsx r15d, r14w
movzx si, sil
pop r15
movzx edi, r8w
not si
pop r14
pop r12
setns sil
movzx si, r13b
pop rdi
movzx bp, cl
bswap bx
movsx rbx, sp
pop rsi
sete bl
bswap rbp
pop rbp
movzx ebx, r9w
jmp 0x14071d5ba
pop rbx
jmp 0x14071d5c0
ret