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

Disassembly:
push r15
push r14
bt dx, bx
bts r8w, ax
push r13
mov r8d, edi
or r8, r12
shr dx, 0xb8
push r12
push rsi
jmp 0x140c0f07d
push rdi
xor dx, 0xd82f
push rbp
cmove dx, dx
push rbx
sub rsp, 0x88
not sil
mov rsi, rcx
mov edx, esi
xchg r8d, ecx
movzx r8d, dx
lea rcx, [rsp + 0x78]
movsxd rdx, r14d
cwd
cqo
mov edx, 1
movsx r8w, r8b
mov r8d, 0x30
call fcn.140c0acbb
mov eax, dword [rsp + 0x80]
test r13b, al
test eax, eax
jmp 0x140c0f0d1
je 0x140c0faf1
movabs r13, 0x5f8bff5b8abf2b8a
movabs rbp, 0x3233697061766461
sal r14, 0x87
sub ebx, ebx
lea rdi, [rsp + 0x38]
movzx r14d, ax
mov r14b, 1
lea r14, [rsp + 0x28]
jmp 0x140c0f157
mov rcx, r14
jmp 0x140c0f10f
call fcn.140c09c78
mov rcx, rax
setb dl
mov rdx, rdi
jmp 0x140c0f122
call fcn.140c09da7
mov rcx, r15
jmp 0x140c0f12f
call rax
mov eax, dword [rsp + 0x80]
bswap cx
inc rbx
sal ch, 0x26
cmova cx, r12w
mov ecx, eax
cmc
cmp rbx, rcx
jmp 0x140c0f151
jae 0x140c0faf1
mov rcx, qword [rsp + 0x78]
test r9b, cl
bsr r10d, ebp
btr r15d, 0x28
imul rdx, rbx, 0x38
mov r12, qword [rcx + rdx]
xchg r11b, r9b
btc r10, r9
mov r10b, 0x31
sub r8d, r8d
shr r9w, cl
cmp edi, r15d
ror r15b, cl
nop dword [rax]
stc
shrd r10d, r15d, 6
rcl r9b, 0xa2
movsx r10d, byte [rsi + r8]
movzx r11d, r14w
movsx r11d, byte [r12 + r8]
jmp 0x140c0f1a7
lea r15d, [r10 - 0x41]
test sp, r9w
movzx r9w, dl
mov r9d, r10d
add r9d, 0x20
cmp rsp, 0x431ec6af
cmp r15b, 0x1a
movsx r15w, bpl
cmovae r9d, r10d
mov r15d, 0xd4017225
lea r15d, [r11 - 0x41]
adc r10b, 0xb0
mov r10d, r11d
test r15d, edi
add r10d, 0x20
stc
clc
cmp r12w, bp
cmp r15b, 0x1a
jmp 0x140c0f1f6
cmovae r10d, r11d
mov r11d, r9d
or r11w, r10w
sete r11b
jmp 0x140c0f20a
je 0x140c0f21e
inc r8
clc
cmp r9w, r10w
je 0x140c0f194
test r11b, r11b
jmp 0x140c0f226
je 0x140c0f13b
cmp dword [rcx + rdx + 0x14], 4
jmp 0x140c0f236
jne 0x140c0f13b
mov qword [rsp + 0x50], r13
rol ch, 0x8f
and ah, 0xae
movsx eax, bx
mov rax, qword [rsp + 0x50]
test bpl, 0x9a
sal cx, 0x81
shl ch, cl
movabs rcx, 0x614d43536e65704f
stc
cmc
clc
xor rax, rcx
bsr cx, dx
rcr ch, 0xb8
movsx rcx, sp
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x38], r13
rcr rcx, 0x11
stc
mov rax, qword [rsp + 0x38]
movabs rcx, 0x41726567616e
cmp ax, 0x5112
cmp r14, rsi
xor rax, rcx
stc
test r15b, r15b
mov qword [rsp + 0x58], rax
bts ax, r12w
cmp r13, rcx
mov qword [rsp + 0x38], r13
cmp spl, 0x20
bts ax, bp
mov qword [rsp + 0x28], 2
test r13w, 0x1910
mov rax, qword [rsp + 0x28]
clc
test rax, rax
je 0x140c0f324
sub eax, eax
jmp 0x140c0f2df
nop word cs:[rax + rax]
or cx, 0x6e0f
rcr ecx, cl
mov rcx, qword [rsp + 0x38]
xor qword [rsp + rax*8 + 0x50], rcx
movzx rcx, cx
movsx rcx, r8w
movzx cx, r13b
inc rax
test dl, 0x35
xadd cl, cl
cmp r11b, 0x96
mov rcx, qword [rsp + 0x28]
cmp rax, rcx
jb 0x140c0f2f2
mov qword [rsp + 0x38], r13
adc ax, si
sar ax, 0x25
shr ax, 0x12
mov rax, qword [rsp + 0x38]
jmp 0x140c0f341
xor rax, rbp
test dil, 0x34
cmp spl, 7
clc
mov qword [rsp + 0x38], rax
cwde
bts ax, bp
mov qword [rsp + 0x28], r13
mov rax, qword [rsp + 0x28]
clc
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], 2
mov rax, qword [rsp + 0x20]
cmc
test bpl, 0x81
test rax, rax
je 0x140c0f3c9
sub eax, eax
shld cx, bp, 0x96
cmovg ecx, esi
nop word cs:[rax + rax]
and cl, sil
add cx, r8w
mov rcx, qword [rsp + 0x28]
xor qword [rsp + rax*8 + 0x38], rcx
movsx cx, sil
dec ch
inc rax
mov rcx, qword [rsp + 0x20]
cmp rax, rcx
jb 0x140c0f3a7
mov rcx, rdi
jmp 0x140c0f3d1
call fcn.140c09c78
mov rcx, rax
lea rdx, [rsp + 0x50]
jmp 0x140c0f3e3
call fcn.140c09da7
xor ecx, ecx
or r8, rsi
sub edx, edx
movsx r8, cx
mov r8d, 0xf003f
jmp 0x140c0f3fe
call rax
mov r15, rax
add ah, 0x26
and ah, 0x9d
ror ah, 9
mov qword [rsp + 0x50], r13
shl eax, 0xa6
mov rax, qword [rsp + 0x50]
ror cx, cl
jmp 0x140c0f421
movabs rcx, 0x767265536e65704f
xor rax, rcx
clc
jmp 0x140c0f435
mov qword [rsp + 0x50], rax
bsr ax, r10w
shl al, cl
mov qword [rsp + 0x38], r13
mov rax, qword [rsp + 0x38]
clc
xor rax, 0x41656369
mov qword [rsp + 0x58], rax
shr al, cl
add eax, 0xfd01dd8a
clc
mov qword [rsp + 0x38], r13
inc eax
mov qword [rsp + 0x28], 2
test r8d, 0x608fd51c
rcr eax, cl
test dil, r15b
mov rax, qword [rsp + 0x28]
cmp r13b, 0x20
test r8b, 0x26
test rax, rax
jmp 0x140c0f490
je 0x140c0f4e1
sub eax, eax
nop word cs:[rax + rax]
and cl, r15b
test bp, 0x8700
mov rcx, qword [rsp + 0x38]
clc
jmp 0x140c0f4b5
xor qword [rsp + rax*8 + 0x50], rcx
inc ecx
mov cl, 0x39
not rcx
inc rax
or cx, 0x9623
bts cx, r9w
mov rcx, qword [rsp + 0x28]
cmp rax, rcx
jmp 0x140c0f4db
jb 0x140c0f4aa
mov qword [rsp + 0x38], r13
mov rax, qword [rsp + 0x38]
xor rax, rbp
test r8b, 0xaa
jmp 0x140c0f4f7
mov qword [rsp + 0x38], rax
sar al, cl
mov qword [rsp + 0x28], r13
not ah
ror ah, cl
mov rax, qword [rsp + 0x28]
cmp dl, 0xbc
clc
cmp dil, dl
mov qword [rsp + 0x40], rax
test ecx, r10d
adc al, 0x9b
or ax, di
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], 2
cmova eax, r9d
shl ah, cl
mov rax, qword [rsp + 0x20]
test rax, rax
jmp 0x140c0f541
je 0x140c0f591
sub eax, eax
bsf cx, r11w
stc
ror cl, 2
nop word cs:[rax + rax]
sets ch
mov rcx, qword [rsp + 0x28]
cmc
xor qword [rsp + rax*8 + 0x38], rcx
xchg ch, cl
movsx ecx, r11w
inc rax
mov rcx, qword [rsp + 0x20]
cmp r11b, 0xa3
test r14b, bpl
cmp rax, rcx
jmp 0x140c0f58b
jb 0x140c0f563
mov rcx, rdi
jmp 0x140c0f599
call fcn.140c09c78
mov rcx, rax
lea rdx, [rsp + 0x50]
call fcn.140c09da7
mov rcx, r15
jmp 0x140c0f5b9
mov rdx, r12
cmove r8w, r14w
mov r8d, 0xf01ff
jmp 0x140c0f5cc
call rax
mov r12, rax
rol cx, cl
lahf
mov qword [rsp + 0x50], r13
ror cx, cl
mov rax, qword [rsp + 0x50]
movabs rcx, 0x536c6f72746e6f43
jmp 0x140c0f5f4
xor rax, rcx
mov qword [rsp + 0x38], rax
rcr rax, cl
mov qword [rsp + 0x50], r13
stc
mov rax, qword [rsp + 0x50]
cmp dh, 9
inc ch
shrd ecx, ebx, 0xb
movabs rcx, 0x656369767265
cmp rsi, r11
test r14d, 0xec1339be
xor rax, rcx
cmp r9, 0xffffffffb1b83601
mov qword [rsp + 0x40], rax
btc ax, sp
mov qword [rsp + 0x50], r13
shr rax, 0x8d
movsxd rax, r14d
mov qword [rsp + 0x28], 2
cwde
stc
mov rax, qword [rsp + 0x28]
jmp 0x140c0f65c
test rax, rax
jmp 0x140c0f664
je 0x140c0f6a7
sub eax, eax
movzx rcx, r13w
nop
sbb cx, 0x1f26
clc
shr cx, 0x87
mov rcx, qword [rsp + 0x50]
cmp r15b, bl
test r11b, 0x22
xor qword [rsp + rax*8 + 0x38], rcx
movsx ecx, dx
inc rax
mov rcx, qword [rsp + 0x28]
clc
cmc
cmp rax, rcx
jmp 0x140c0f6a1
jb 0x140c0f67b
mov qword [rsp + 0x50], r13
cdqe
sbb al, spl
mov rax, qword [rsp + 0x50]
jmp 0x140c0f6bb
xor rax, rbp
mov qword [rsp + 0x28], rax
nop
rol eax, 0xbe
mov qword [rsp + 0x50], r13
or al, dil
cdqe
btc eax, 0xa5
mov rax, qword [rsp + 0x50]
cmc
mov qword [rsp + 0x30], rax
inc ax
mov qword [rsp + 0x50], r13
mov al, dl
jmp 0x140c0f6f4
mov qword [rsp + 0x20], 2
mov rax, qword [rsp + 0x20]
test r9w, 0x5521
clc
test rax, rax
jmp 0x140c0f711
je 0x140c0f752
sub eax, eax
rcr cl, 0xab
and cl, r11b
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x50]
jmp 0x140c0f737
xor qword [rsp + rax*8 + 0x28], rcx
inc rax
mov rcx, qword [rsp + 0x20]
cmp rax, rcx
jmp 0x140c0f74c
jb 0x140c0f72d
mov rcx, r14
jmp 0x140c0f75a
call fcn.140c09c78
mov rcx, rax
mov rdx, rdi
jmp 0x140c0f76a
call fcn.140c09da7
mov rcx, r12
movsx edx, bp
setne dh
mov rdx, r14
mov edx, 1
mov r8w, 0x489d
movsx r8w, r14b
lea r8, [rsp + 0x50]
jmp 0x140c0f794
call rax
mov qword [rsp + 0x38], r13
rcr ax, 0xa4
movsxd rcx, r15d
mov rax, qword [rsp + 0x38]
btr cx, 0x25
bsr ecx, ebp
and cl, 7
movabs rcx, 0x65536574656c6544
cmp r10b, 0x33
clc
xor rax, rcx
mov qword [rsp + 0x38], rax
btc cx, cx
xchg rcx, rcx
movsx ecx, cx
mov qword [rsp + 0x28], r13
mov ax, 0x2d87
mov rax, qword [rsp + 0x28]
shr cl, cl
bts cx, di
ror cx, cl
movabs rcx, 0x6563697672
stc
xor rax, rcx
cmc
stc
mov qword [rsp + 0x40], rax
sub ah, 0x2b
lahf
mov qword [rsp + 0x28], r13
rcr ah, 0xb7
xor rax, 0x1fb7a83c
mov qword [rsp + 0x20], 2
ror rax, cl
shl ah, 0xbc
btc ax, 0x2c
mov rax, qword [rsp + 0x20]
cmc
test rax, rax
je 0x140c0f86a
xor eax, eax
nop dword [rax + rax]
stc
dec cl
xadd cx, cx
mov rcx, qword [rsp + 0x28]
xor qword [rsp + rax*8 + 0x38], rcx
mov cl, spl
cmovge ecx, ebx
inc rax
mov rcx, qword [rsp + 0x20]
stc
cmp rax, rcx
jmp 0x140c0f864
jb 0x140c0f843
mov qword [rsp + 0x28], r13
btc rax, rdx
stc
mov rax, qword [rsp + 0x28]
test r11w, 0x7582
xor rax, rbp
test r10, r10
mov qword [rsp + 0x28], rax
lahf
adc ax, 0x4c22
mov qword [rsp + 0x20], r13
jmp 0x140c0f899
mov rax, qword [rsp + 0x20]
cmc
mov qword [rsp + 0x30], rax
ror eax, 0x3f
movzx rax, cx
sar rax, cl
mov qword [rsp + 0x20], r13
mov qword [rsp + 0x70], 2
mov rax, qword [rsp + 0x70]
jmp 0x140c0f8c6
test rax, rax
je 0x140c0f91d
xor eax, eax
xchg cl, cl
nop word cs:[rax + rax]
shld rcx, rbp, 0x81
ror cl, cl
sar ch, 0x16
mov rcx, qword [rsp + 0x20]
jmp 0x140c0f8f5
xor qword [rsp + rax*8 + 0x28], rcx
dec cx
movzx cx, cl
inc rax
mov rcx, qword [rsp + 0x70]
jmp 0x140c0f90f
cmp rax, rcx
jmp 0x140c0f917
jb 0x140c0f8eb
mov rcx, r14
jmp 0x140c0f925
call fcn.140c09c78
mov rcx, rax
movsxd rdx, r12d
bswap dx
mov rdx, rdi
jmp 0x140c0f93b
call fcn.140c09da7
mov rcx, r12
call rax
mov qword [rsp + 0x38], r13
cwde
movsx ecx, r11w
or rcx, rdx
mov rax, qword [rsp + 0x38]
neg ecx
add ch, 0x12
movabs rcx, 0x72655365736f6c43
xor rax, rcx
add cx, bp
shr cx, 0x91
mov qword [rsp + 0x38], rax
btr ecx, 0xb7
bts cx, r8w
or cx, 0x9a11
mov qword [rsp + 0x28], r13
ror ax, cl
mov rax, qword [rsp + 0x28]
movsx cx, r14b
rcr cl, 0x9c
bts ecx, r9d
movabs rcx, 0x646e614865636976
cmp spl, 0x90
xor rax, rcx
cmc
test rsi, 0x51f412c
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x28], r13
mov rax, qword [rsp + 0x28]
cmp r9d, esp
stc
xor rax, 0x656c
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x28], r13
shl ax, 0x97
rcr ah, 0x25
bt rax, rbp
mov qword [rsp + 0x20], 3
and eax, ecx
mov rax, qword [rsp + 0x20]
test r8w, 0xd8a
clc
test rax, rax
jmp 0x140c0fa02
je 0x140c0fa4f
sub eax, eax
cmovns cx, si
stc
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x28]
stc
test bh, 0x13
xor qword [rsp + rax*8 + 0x38], rcx
not cl
setle cl
movzx ecx, cx
inc rax
movsx ecx, r13w
movsxd rcx, esp
shr cl, 0xbe
mov rcx, qword [rsp + 0x20]
cmp rax, rcx
jmp 0x140c0fa49
jb 0x140c0fa19
mov qword [rsp + 0x28], r13
adc al, 0x15
ror ah, cl
cdqe
mov rax, qword [rsp + 0x28]
xor rax, rbp
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
ror ah, 0x21
xor ah, cl
mov rax, qword [rsp + 0x20]
cmp ax, r12w
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x20], r13
mov qword [rsp + 0x70], 2
mov rax, qword [rsp + 0x70]
stc
test r12w, ax
test rax, rax
jmp 0x140c0fa9f
je 0x140c0f107
xor eax, eax
add cl, 0x92
setg cl
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x20]
cmp dil, 0xaf
stc
xor qword [rsp + rax*8 + 0x28], rcx
bswap ecx
xchg cl, cl
cmovs cx, r14w
inc rax
setge cl
sbb cl, 0xa2
mov rcx, qword [rsp + 0x70]
clc
cmp rax, rcx
jmp 0x140c0fae6
jb 0x140c0fab7
jmp 0x140c0f107
mov rcx, qword [rsp + 0x78]
call fcn.140c0aad9
nop
bts r12d, edx
add rsp, 0x88
pop rbx
movsx r13, r14w
movzx r14w, dl
pop rbp
pop rdi
movzx r15d, r12w
movsxd r13, r12d
mov r14d, 0xe89bd682
pop rsi
movsx r15w, spl
movzx r13w, cl
pop r12
jmp 0x140c0fb32
pop r13
cmovno r14w, r14w
mov r15b, 8
not r15b
pop r14
movsxd r15, edi
mov r15, r15
pop r15
jmp 0x140c0fb4e
ret