Function at 0x140c3ff19
Capabilities:
Encode data using xor
Encrypt data using speck

Disassembly:
push r15
xor dl, 0xb8
push r14
rol dx, cl
shl edx, 0x24
cmc
push r13
push r12
inc r8b
add r8b, r9b
push rsi
push rdi
push rbp
setge sil
shld r8w, r8w, 0x3b
push rbx
xchg dh, dh
adc dx, 0x4a8a
rol edx, cl
sub rsp, 0x88
movzx r8d, r14w
cwd
not esi
mov rsi, rcx
jmp 0x140c3ff5f
lea rcx, [rsp + 0x78]
xchg r8b, dl
seta dh
bswap rdx
mov edx, 1
bswap r8d
movsx r8d, dx
mov r8d, 0x30
jmp 0x140c3ff84
call fcn.140c3bb84
mov eax, dword [rsp + 0x80]
test rsp, rsp
stc
test eax, eax
jmp 0x140c3ff9b
je 0x140c409e2
movabs r13, 0x9f2f5fef1fcd0dad
dec di
movabs rbp, 0x3233697061766461
adc rdi, rdx
sub ebx, ebx
not r14b
lea rdi, [rsp + 0x38]
movsx r14d, sp
not r14d
lea r14, [rsp + 0x28]
jmp 0x140c3ffd6
jmp 0x140c40022
mov rcx, r14
jmp 0x140c3ffe3
call fcn.140c3aba2
mov rcx, rax
cqo
mov dx, bp
mov rdx, rdi
call fcn.140c3acd9
mov rcx, r15
jmp 0x140c40000
call rax
mov eax, dword [rsp + 0x80]
inc rbx
shl ch, 0x34
adc cl, sil
mov ecx, eax
cmp r13b, 0xc
stc
cmp rbx, rcx
jae 0x140c409e2
mov rcx, qword [rsp + 0x78]
movsx rdx, dx
imul rdx, rbx, 0x38
movzx r15, r12w
sal r15b, cl
movsx r9d, r10w
mov r12, qword [rcx + rdx]
shl r11b, cl
sbb r11d, 0x10463ab
xor r8d, r8d
movzx r10w, r12b
cmovnp r11, rsi
add r10b, bl
nop dword [rax]
rol r11b, 0x8a
movsx r10d, byte [rsi + r8]
and r11, 0x2d0629a8
rcr r11b, 0x11
shr r9b, 8
movsx r11d, byte [r12 + r8]
lea r15d, [r10 - 0x41]
shl r9b, 0x27
clc
mov r9d, r10d
add r9d, 0x20
cmp r15b, 0x1a
mov r15, r8
setae r15b
movzx r15w, r8b
cmovae r9d, r10d
mov r15d, 0xa0271dbd
bt r15, rdx
shr r15b, cl
lea r15d, [r11 - 0x41]
sal r10b, cl
not r10w
test spl, dl
mov r10d, r11d
clc
cmc
add r10d, 0x20
cmp rcx, 0xfffffffff28fd6b7
jmp 0x140c400ce
cmp r15b, 0x1a
jmp 0x140c400d7
cmovae r10d, r11d
mov r11d, r9d
or r11w, r10w
sete r11b
jmp 0x140c400eb
je 0x140c40103
inc r8
jmp 0x140c400f9
cmp r9w, r10w
je 0x140c4005e
test r11b, r11b
jmp 0x140c4010b
je 0x140c40009
cmp dword [rcx + rdx + 0x14], 4
jmp 0x140c4011b
jne 0x140c40009
mov qword [rsp + 0x50], r13
btr ax, r13w
sar rax, 0x88
mov rax, qword [rsp + 0x50]
mov cl, 0xa6
add cl, 0x3d
jmp 0x140c4013e
movabs rcx, 0x614d43536e65704f
cmp r9b, 0xa7
xor rax, rcx
cmp dl, r13b
mov qword [rsp + 0x50], rax
inc ch
bsr ecx, ebp
sub al, r13b
mov qword [rsp + 0x38], r13
cmovg cx, dx
mov cx, 0x7a96
mov rax, qword [rsp + 0x38]
movabs rcx, 0x41726567616e
cmp r11b, r11b
jmp 0x140c40183
xor rax, rcx
cmp spl, r9b
mov qword [rsp + 0x58], rax
movsx ax, r12b
mov qword [rsp + 0x38], r13
shl al, cl
sbb ax, r9w
mov qword [rsp + 0x28], 2
mov rax, qword [rsp + 0x28]
test rax, rax
jmp 0x140c401b4
je 0x140c4020d
sub eax, eax
sar ch, 0x97
btr ecx, 0x93
movzx ecx, r11w
nop word cs:[rax + rax]
sub ch, 0x34
mov rcx, qword [rsp + 0x38]
jmp 0x140c401e3
xor qword [rsp + rax*8 + 0x50], rcx
not cl
inc ecx
inc rax
rcr ch, cl
mov rcx, qword [rsp + 0x28]
cmp di, r10w
test bx, 0x8734
cmp rax, rcx
jmp 0x140c40207
jb 0x140c401d6
mov qword [rsp + 0x38], r13
shr eax, cl
adc eax, ebx
neg eax
mov rax, qword [rsp + 0x38]
test r14b, dl
clc
xor rax, rbp
cmp rdi, r11
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x28], r13
sar al, cl
shld ax, r14w, 0xb7
cmp r13b, r15b
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x28], r13
movsx rax, sp
mov qword [rsp + 0x20], 2
mov rax, qword [rsp + 0x20]
test r13w, r10w
clc
jmp 0x140c40267
test rax, rax
je 0x140c402b8
sub eax, eax
xor ch, ch
xchg cl, ch
ror rcx, cl
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x28]
xor qword [rsp + rax*8 + 0x38], rcx
jmp 0x140c4029b
inc rax
sub cx, 0xea1c
clc
mov rcx, qword [rsp + 0x20]
cmc
cmp rax, rcx
jmp 0x140c402b2
jb 0x140c40287
mov rcx, rdi
jmp 0x140c402c0
call fcn.140c3aba2
mov rcx, rax
movsxd rdx, r10d
not rdx
movsx rdx, si
lea rdx, [rsp + 0x50]
call fcn.140c3acd9
sub ecx, ecx
inc r8b
bswap r8
ror r8d, 0x98
xor edx, edx
setne r8b
mov r8d, 0xf003f
jmp 0x140c402f9
call rax
mov r15, rax
mov qword [rsp + 0x50], r13
bt cx, 0x25
rcr ch, 0x1f
sub rcx, 0x2197b385
mov rax, qword [rsp + 0x50]
bts ecx, edx
xchg rcx, rcx
btc cx, 0x1e
movabs rcx, 0x767265536e65704f
cmp cx, si
cmc
clc
xor rax, rcx
clc
mov qword [rsp + 0x50], rax
shr al, 0x30
cwde
neg al
mov qword [rsp + 0x38], r13
shl ah, cl
ror rax, 0x15
mov rax, qword [rsp + 0x38]
jmp 0x140c40356
xor rax, 0x41656369
stc
test r8w, 0x3408
cmp ebx, 0x3093089e
mov qword [rsp + 0x58], rax
or ax, 0x109e
bswap ax
xor eax, 0xa205b1bb
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x28], 2
mov rax, qword [rsp + 0x28]
jmp 0x140c40392
test rax, rax
jmp 0x140c4039a
je 0x140c403d8
xor eax, eax
sal cl, cl
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x38]
stc
cmp bh, 7
cmc
xor qword [rsp + rax*8 + 0x50], rcx
cmove cx, bp
inc rax
mov rcx, qword [rsp + 0x28]
cmc
cmp rax, rcx
jmp 0x140c403d2
jb 0x140c403ae
mov qword [rsp + 0x38], r13
test ebp, 0xbc321326
cmovp ax, r15w
not al
mov rax, qword [rsp + 0x38]
xor rax, rbp
mov qword [rsp + 0x38], rax
shl eax, 7
ror ah, cl
mov qword [rsp + 0x28], r13
xadd al, ah
rcl al, cl
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], 2
adc al, 0xa3
mov rax, qword [rsp + 0x20]
test rax, rax
jmp 0x140c4042d
je 0x140c40469
xor eax, eax
stc
nop word cs:[rax + rax]
neg ch
mov rcx, qword [rsp + 0x28]
test r8b, sil
xor qword [rsp + rax*8 + 0x38], rcx
inc rax
mov rcx, qword [rsp + 0x20]
cmp rax, rcx
jmp 0x140c40463
jb 0x140c40446
mov rcx, rdi
call fcn.140c3aba2
mov rcx, rax
movsx rdx, dx
not dx
xchg dh, dh
lea rdx, [rsp + 0x50]
call fcn.140c3acd9
mov rcx, r15
xchg r8w, dx
movsxd rdx, ebp
mov rdx, r12
mov r8w, 0x49b1
cmovne r8, r13
jmp 0x140c404a2
mov r8d, 0xf01ff
jmp 0x140c404ad
call rax
mov r12, rax
rcr ah, cl
sub ch, 0x19
mov qword [rsp + 0x50], r13
ror al, cl
mov rax, qword [rsp + 0x50]
sar ecx, cl
sub cl, 0xaa
movabs rcx, 0x536c6f72746e6f43
xor rax, rcx
mov qword [rsp + 0x38], rax
clc
nop
rol cx, cl
mov qword [rsp + 0x50], r13
test r10b, cl
rcl ch, cl
mov rax, qword [rsp + 0x50]
xor cl, r9b
movabs rcx, 0x656369767265
clc
xor rax, rcx
stc
mov qword [rsp + 0x40], rax
clc
mov qword [rsp + 0x50], r13
movzx eax, r14w
mov qword [rsp + 0x28], 2
cmp r15w, 0xc80e
mov rax, qword [rsp + 0x28]
cmp dil, bl
test rax, rax
jmp 0x140c4052f
je 0x140c40569
xor eax, eax
btr rcx, r14
sar ecx, cl
xadd cl, ch
nop
mov rcx, qword [rsp + 0x50]
xor qword [rsp + rax*8 + 0x38], rcx
inc rax
mov rcx, qword [rsp + 0x28]
clc
test r11, 0x52648a7
cmp rax, rcx
jmp 0x140c40563
jb 0x140c40541
mov qword [rsp + 0x50], r13
sar ax, cl
mov rax, qword [rsp + 0x50]
cmc
test r13b, 0x30
xor rax, rbp
jmp 0x140c40586
mov qword [rsp + 0x28], rax
btr rax, r13
mov qword [rsp + 0x50], r13
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x30], rax
sbb ax, 0x1294
mov qword [rsp + 0x50], r13
mov ah, ah
rol eax, cl
btr eax, eax
mov qword [rsp + 0x20], 2
mov rax, qword [rsp + 0x20]
test rax, rax
je 0x140c40611
sub eax, eax
not ecx
movzx rcx, r10w
nop word cs:[rax + rax]
shl ch, 0x1f
or ch, bh
mov rcx, qword [rsp + 0x50]
cmp dl, spl
xor qword [rsp + rax*8 + 0x28], rcx
movsxd rcx, r11d
movsx cx, bpl
inc rax
rcr cx, 0xa0
add cx, r9w
mov rcx, qword [rsp + 0x20]
test r13b, al
cmp rax, rcx
jb 0x140c405e0
mov rcx, r14
jmp 0x140c40619
call fcn.140c3aba2
mov rcx, rax
movzx dx, bpl
mov rdx, rdi
jmp 0x140c4062e
call fcn.140c3acd9
mov rcx, r12
movsx r8w, cl
mov edx, 1
cmovno r8w, ax
lea r8, [rsp + 0x50]
jmp 0x140c4064f
call rax
mov qword [rsp + 0x38], r13
add cl, sil
mov rax, qword [rsp + 0x38]
movabs rcx, 0x65536574656c6544
cmc
clc
cmp r10b, r12b
xor rax, rcx
shr cx, 0x13
shl cl, cl
mov qword [rsp + 0x38], rax
btr cx, r10w
bts ax, cx
mov qword [rsp + 0x28], r13
mov rax, qword [rsp + 0x28]
movabs rcx, 0x6563697672
test dl, bl
test r12b, 0x2a
xor rax, rcx
test ebp, 0x7733c91c
mov qword [rsp + 0x40], rax
shld ax, di, 0x92
bt ax, bx
mov qword [rsp + 0x28], r13
test bpl, r13b
mov qword [rsp + 0x20], 2
sar ah, cl
neg ax
mov rax, qword [rsp + 0x20]
test rax, rax
jmp 0x140c406d8
je 0x140c40708
sub eax, eax
nop dword [rax + rax]
mov rcx, qword [rsp + 0x28]
xor qword [rsp + rax*8 + 0x38], rcx
bswap ecx
inc rax
mov rcx, qword [rsp + 0x20]
test r12w, 0x6803
cmp rax, rcx
jb 0x140c406e5
mov qword [rsp + 0x28], r13
not al
ror ax, cl
mov rax, qword [rsp + 0x28]
stc
xor rax, rbp
test dil, 0x1f
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
adc al, sil
sbb al, sil
cmovne rax, r15
mov rax, qword [rsp + 0x20]
test ch, 0x1f
test dil, al
mov qword [rsp + 0x30], rax
sub ax, 0x7106
rol ah, 0x19
mov qword [rsp + 0x20], r13
cbw
mov qword [rsp + 0x70], 2
sal rax, cl
sub al, r12b
sar ax, cl
mov rax, qword [rsp + 0x70]
test rcx, rbx
stc
clc
test rax, rax
jmp 0x140c40775
je 0x140c407c6
xor eax, eax
rcr ecx, cl
neg cx
nop word cs:[rax + rax]
add ch, 0xa2
bt cx, r12w
mov rcx, qword [rsp + 0x20]
xor qword [rsp + rax*8 + 0x28], rcx
inc rax
mov ch, 0x9e
dec ecx
sbb cl, r14b
mov rcx, qword [rsp + 0x70]
jmp 0x140c407b8
cmp rax, rcx
jmp 0x140c407c0
jb 0x140c40798
mov rcx, r14
jmp 0x140c407ce
call fcn.140c3aba2
mov rcx, rax
bswap dx
xchg dl, dl
mov rdx, rdi
call fcn.140c3acd9
mov rcx, r12
jmp 0x140c407eb
call rax
mov qword [rsp + 0x38], r13
sar al, cl
mov rax, qword [rsp + 0x38]
movzx ecx, bx
or cx, r10w
movabs rcx, 0x72655365736f6c43
cmp rbp, 0x4588313e
clc
test r14b, bpl
xor rax, rcx
sal cx, cl
shld rcx, rsp, 0x21
mov qword [rsp + 0x38], rax
shl ax, cl
mov qword [rsp + 0x28], r13
mov al, 0x15
cbw
movsx cx, ah
mov rax, qword [rsp + 0x28]
movsx rcx, ax
sbb rcx, 0xffffffff9f341f33
movabs rcx, 0x646e614865636976
cmc
jmp 0x140c40855
xor rax, rcx
cmp r8d, 0xfb973d10
mov qword [rsp + 0x40], rax
sbb eax, r9d
btc ax, 0x12
add ah, ch
mov qword [rsp + 0x28], r13
sar ah, cl
mov rax, qword [rsp + 0x28]
jmp 0x140c4087f
xor rax, 0x656c
test r11b, bpl
cmc
test r14b, 0x25
mov qword [rsp + 0x48], rax
shld ax, r9w, 0x34
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], 3
mov rax, qword [rsp + 0x20]
test rax, rax
jmp 0x140c408b3
je 0x140c40909
xor eax, eax
mov ch, 0x24
add cx, r9w
nop word cs:[rax + rax]
movsx rcx, cx
sub ecx, r15d
mov rcx, qword [rsp + 0x28]
jmp 0x140c408dd
xor qword [rsp + rax*8 + 0x38], rcx
inc rax
rcr rcx, cl
cmovo rcx, r12
shrd cx, r9w, 0xa2
mov rcx, qword [rsp + 0x20]
cmp bpl, 0xae
cmp rax, rcx
jmp 0x140c40903
jb 0x140c408d3
mov qword [rsp + 0x28], r13
sal rax, cl
rcl ax, 0x82
mov rax, qword [rsp + 0x28]
cmc
xor rax, rbp
mov qword [rsp + 0x28], rax
and ax, 0x1a9c
shr al, 0x3d
mov qword [rsp + 0x20], r13
btr ax, r8w
mov rax, qword [rsp + 0x20]
cmp bpl, r14b
cmp r13b, 0x8a
mov qword [rsp + 0x30], rax
bts ax, sp
cmc
or ah, 0x31
mov qword [rsp + 0x20], r13
rcl eax, cl
mov qword [rsp + 0x70], 2
bt ax, 0xa9
mov ah, 0x36
jmp 0x140c4096a
mov rax, qword [rsp + 0x70]
cmc
test rax, rax
jmp 0x140c40978
je 0x140c3ffdb
xor eax, eax
movsxd rcx, r9d
xchg ecx, ecx
shld cx, bx, 0x9d
nop word cs:[rax + rax]
clc
rol ch, 0x33
mov cl, r10b
mov rcx, qword [rsp + 0x20]
test bpl, 0xb4
xor qword [rsp + rax*8 + 0x28], rcx
movzx ecx, r9w
mov cl, 0xc
setns cl
inc rax
sar cx, 0x93
bt ecx, esi
sub cx, 0x6a1e
mov rcx, qword [rsp + 0x70]
cmp r11w, sp
jmp 0x140c409cf
cmp rax, rcx
jmp 0x140c409d7
jb 0x140c4099b
jmp 0x140c3ffdb
mov rcx, qword [rsp + 0x78]
jmp 0x140c409ec
call fcn.140c3b973
nop
bts r13w, si
add rsp, 0x88
pop rbx
pop rbp
pop rdi
seta r15b
movzx r14, r15w
jmp 0x140c40a0e
pop rsi
mov r15b, 0x99
pop r12
movzx r15, r8w
pop r13
pop r14
mov r15b, 0xd
cmovnp r15d, r15d
movsx r15, r15w
pop r15
jmp 0x140c40a2e
ret