Function at 0x1406fa92c
Capabilities:
Encrypt data using speck

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
rcl ebx, cl
movzx r11, ax
mov qword [rsp + 0x18], rsi
neg sil
ror r11b, 0xe
adc si, 0x9fbc
push rdi
sub rsp, 0x20
btc r11d, r14d
bts r11, r8
mov rbx, rdx
lea r11, [0x140000000]
mov dl, byte [rcx]
not r10w
sub edi, edi
shl rsi, 0xa0
ror esi, cl
mov r9b, r8b
mov r9b, dl
mov rsi, rcx
mov r10d, edi
cmc
cmp dl, byte [r10 + r11 + 0x9dab0]
jmp 0x1406fa98c
je 0x1406fa9a5
cmp dl, byte [r10 + r11 + 0x9dab4]
jmp 0x1406fa99f
jne 0x1406fab55
mov rax, qword [rbx + 0x10]
jmp 0x1406fa9ae
inc rax
clc
mov qword [rbx + 0x10], rax
test sil, 0x2e
cmp qword [rbx + 8], rdi
jmp 0x1406fa9c3
je 0x1406fa9d3
cmp rax, qword [rbx + 8]
ja 0x1406faa11
mov rcx, qword [rbx]
movzx rax, ax
xadd ah, al
mov rax, qword [rcx + 0x10]
test spl, 0x32
cmp rax, qword [rcx + 8]
jmp 0x1406fa9ee
je 0x1406faa11
mov dl, byte [rax]
jmp 0x1406fa9fb
inc rax
jmp 0x1406faa03
mov qword [rcx + 0x10], rax
jmp 0x1406faa0c
jmp 0x1406faa14
mov dl, dil
inc r10
mov byte [rsi], dl
or r9b, 0x9d
mov r9b, dl
cmp r10, 3
jmp 0x1406faa29
jne 0x1406fa97f
mov rcx, qword [rbx + 0x10]
movsx r8, ax
movsx r8w, cl
mov r8b, 0xbb
mov r8, qword [rbx + 8]
dec rcx
clc
mov qword [rbx + 0x10], rcx
cmp r8w, 0x3727
test r8, r8
je 0x1406faa7e
mov rbp, rcx
not ax
cmovns ax, bp
mov rax, r8
cmp r10w, 0x87a7
test r15b, cl
cmp rcx, r8
jmp 0x1406faa78
ja 0x1406faaee
mov rbp, rcx
xor ax, bp
cmovs rax, r12
mov rax, r8
clc
jmp 0x1406faa91
test dl, dl
jmp 0x1406faa98
je 0x1406faaee
cmp dl, 0xff
jmp 0x1406faaa6
je 0x1406faaee
mov rdx, qword [rbx]
mov r9, qword [rdx + 0x10]
cmp r9, qword [rdx]
jmp 0x1406faabb
je 0x1406faaee
lea rax, [r9 - 1]
mov qword [rdx + 0x10], rax
bts cx, di
sar bpl, cl
btr rbp, r10
mov rbp, qword [rbx + 0x10]
and cl, r15b
movsx eax, sp
btc rcx, r15
mov rax, qword [rbx + 8]
jmp 0x1406faaee
lea rcx, [rbp + 1]
test cl, 0x93
cmp spl, 0x1b
mov qword [rbx + 0x10], rcx
test r10w, di
cmc
test rax, rax
je 0x1406fab19
cmp rcx, rax
jmp 0x1406fab13
ja 0x1406fac03
mov rdx, qword [rbx]
shl ax, cl
cmp ecx, 0xd100e1b3
btc ax, r15w
mov rax, qword [rdx + 0x10]
cmp rax, qword [rdx + 8]
je 0x1406fac03
mov cl, byte [rax]
jmp 0x1406fab3f
inc rax
jmp 0x1406fab47
mov qword [rdx + 0x10], rax
jmp 0x1406fab50
jmp 0x1406fac0e
mov rax, qword [rbx + 0x10]
jmp 0x1406fab5e
dec rax
jmp 0x1406fab69
mov qword [rbx + 0x10], rax
cmp qword [rbx + 8], rdi
jmp 0x1406fab76
je 0x1406fab8b
cmp rax, qword [rbx + 8]
jmp 0x1406fab85
ja 0x1406fabbe
inc r9b
cmp r9b, 1
jbe 0x1406fabbe
mov rcx, qword [rbx]
movzx rax, cx
cmp r9b, 0x87
mov rax, qword [rcx + 0x10]
cmp rax, qword [rcx]
jmp 0x1406fabaf
je 0x1406fabbe
dec rax
clc
mov qword [rcx + 0x10], rax
cmc
mov byte [rsi], dil
jmp 0x1406fabce
cmp r8, qword [rbx + 0x10]
jmp 0x1406fabd7
je 0x1406fabf4
mov rax, qword [rbx + 0x18]
jmp 0x1406fabe6
mov byte [rax], dil
movsx rax, si
setle ah
movsx eax, r14w
mov eax, 7
jmp 0x1406fabfe
jmp 0x1406faff8
mov cl, dil
cbw
sbb al, bpl
xor rdx, rbp
mov byte [rsi], cl
mov rdx, qword [rbx + 0x10]
xadd al, ah
mov rax, qword [rbx + 8]
cmp r9w, di
stc
cmp dx, 0xf506
cmp cl, 0x28
je 0x1406facd5
dec rdx
mov qword [rbx + 0x10], rdx
test r12b, r11b
test rax, rax
jmp 0x1406fac40
je 0x1406fac54
cmp rdx, rax
jmp 0x1406fac4e
ja 0x1406fac8a
inc cl
cmp cl, 1
jmp 0x1406fac5e
jbe 0x1406fac8a
mov rcx, qword [rbx]
rol rax, cl
sbb al, r11b
mov rax, qword [rcx + 0x10]
cmp rcx, r8
cmp rax, qword [rcx]
jmp 0x1406fac7c
je 0x1406fac8a
dec rax
mov qword [rcx + 0x10], rax
stc
mov byte [rsi], dil
cmp rbp, qword [rbx + 0x10]
jmp 0x1406fac96
je 0x1406facad
mov rax, qword [rbx + 0x18]
mov byte [rax], dil
jmp 0x1406faca8
jmp 0x1406facb9
mov dil, 1
cmp ecx, 0xa2bfb588
cmp r9b, spl
neg dil
sbb eax, eax
cmp dx, 0x50ad
cmc
and eax, 0xfffffffd
stc
add eax, 7
jmp 0x1406facd0
jmp 0x1406faff8
lea rcx, [rdx + 1]
mov qword [rbx + 0x10], rcx
test r15b, 6
test r14w, sp
cmp r9w, cx
test rax, rax
jmp 0x1406facf1
je 0x1406fad05
cmp rcx, rax
jmp 0x1406facff
ja 0x1406fad36
mov rdx, qword [rbx]
bswap ax
mov rax, qword [rdx + 0x10]
cmp rax, qword [rdx + 8]
je 0x1406fad36
mov cl, byte [rax]
jmp 0x1406fad20
inc rax
jmp 0x1406fad28
mov qword [rdx + 0x10], rax
jmp 0x1406fad31
jmp 0x1406fad3f
mov cl, dil
movsx rdx, r8w
cqo
mov byte [rsi], cl
mov rdx, rbx
bswap cx
jmp 0x1406fad4c
mov rcx, rsi
jmp 0x1406fad54
call fcn.1406fb11b
test al, al
jmp 0x1406fad60
je 0x1406fadeb
mov rax, qword [rbx + 0x10]
mov cl, byte [rsi]
jmp 0x1406fad71
dec rax
stc
cmp r10b, 0x36
mov qword [rbx + 0x10], rax
cmc
clc
cmp qword [rbx + 8], rdi
je 0x1406fad98
cmp rax, qword [rbx + 8]
jmp 0x1406fad92
ja 0x1406faddc
inc cl
jmp 0x1406fad9f
cmp cl, 1
jbe 0x1406faddc
mov rcx, qword [rbx]
sar ax, cl
ror ah, cl
mov rax, qword [rcx + 0x10]
cmp r14b, 0x92
cmp rax, qword [rcx]
jmp 0x1406fadc0
je 0x1406faddc
dec rax
jmp 0x1406fadce
mov qword [rcx + 0x10], rax
movsxd rax, ebp
cbw
jmp 0x1406faddc
mov eax, 5
jmp 0x1406fade6
jmp 0x1406faff8
mov rdx, rbx
mov rcx, rsi
jmp 0x1406fadf6
call fcn.1406fb029
mov dl, byte [rsi]
jmp 0x1406fae06
test al, al
jmp 0x1406fae0d
je 0x1406fae93
mov rax, qword [rbx + 0x10]
jmp 0x1406fae1c
dec rax
stc
cmc
mov qword [rbx + 0x10], rax
clc
cmc
cmp qword [rbx + 8], rdi
jmp 0x1406fae30
je 0x1406fae45
cmp rax, qword [rbx + 8]
jmp 0x1406fae3f
ja 0x1406fae84
inc dl
cmp dl, 1
jmp 0x1406fae4f
jbe 0x1406fae84
mov rcx, qword [rbx]
mov al, r8b
rol al, 0x12
mov rax, qword [rcx + 0x10]
cmp rax, qword [rcx]
jmp 0x1406fae6a
je 0x1406fae84
dec rax
jmp 0x1406fae78
mov qword [rcx + 0x10], rax
mov ax, r12w
movzx eax, r10w
mov eax, 6
jmp 0x1406fae8e
jmp 0x1406faff8
mov r9b, 0x29
mov cl, dl
cmp spl, r14b
cmc
jmp 0x1406faea1
cmp dl, r9b
jmp 0x1406faea9
je 0x1406fafe6
mov r8b, dl
sub dl, 0x11
mov dl, r8b
test r8b, r8b
je 0x1406fafdd
lea eax, [r8 - 0x30]
cmp al, 9
jbe 0x1406faf08
lea eax, [r8 - 0x61]
jmp 0x1406faed6
cmp al, 0x19
jbe 0x1406faf08
lea eax, [r8 - 0x41]
test bp, r15w
cmp cx, 0x8284
cmc
cmp al, 0x19
jmp 0x1406faef3
jbe 0x1406faf08
cmp r8b, 0x5f
jmp 0x1406faf02
jne 0x1406fafab
mov rax, qword [rbx + 0x10]
jmp 0x1406faf11
inc rax
cmc
test r11w, di
mov qword [rbx + 0x10], rax
cmp r8b, sil
stc
cmp qword [rbx + 8], rdi
jmp 0x1406faf2a
je 0x1406faf3f
cmp rax, qword [rbx + 8]
jmp 0x1406faf39
ja 0x1406faf84
mov rdx, qword [rbx]
movsx eax, r9w
cbw
movsx ax, r13b
mov rax, qword [rdx + 0x10]
test cl, r11b
cmp r14b, 0x15
cmp rax, qword [rdx + 8]
jmp 0x1406faf61
je 0x1406faf84
mov cl, byte [rax]
jmp 0x1406faf6e
inc rax
jmp 0x1406faf76
mov qword [rdx + 0x10], rax
jmp 0x1406faf7f
jmp 0x1406faf8a
mov cl, dil
shl r8b, cl
mov byte [rsi], cl
add r8b, r8b
mov r8b, cl
cmp bpl, 0xba
test al, 0x97
cmp cl, r9b
jmp 0x1406fafa0
je 0x1406fafe6
jmp 0x1406faeb5
mov rax, qword [rbx + 0x10]
jmp 0x1406fafb4
dec rax
cmc
cmp r8b, 0xa0
mov qword [rbx + 0x10], rax
cmp qword [rbx + 8], rdi
jmp 0x1406fafc9
je 0x1406fac54
cmp rax, qword [rbx + 8]
jmp 0x1406fafd8
jmp 0x1406fac4e
cmp dl, r9b
jne 0x1406fafab
mov eax, 4
jmp 0x1406faff8
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
bsr edi, r15d
sbb sil, 0x38
adc sil, 0xf
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
xchg dil, dil
movsx edi, r10w
mov di, r10w
pop rdi
jmp 0x1406fb028
ret