Function at 0x140c208da
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
test rsi, r12
push rsi
push rdi
not dil
xor dil, 0x9a
push rbx
bsr edi, eax
xadd di, di
sub rsp, 0x98
movzx di, al
movsx rdi, bp
movsx di, al
mov rdi, rcx
call fcn.140c206c0
mov esi, eax
cmp eax, 2
jmp 0x140c20919
jne 0x140c2103d
movabs rbx, 0x9ab9cbbbef3b2f3a
cwde
sal r15, cl
movabs r15, 0x6d6e6f7269766e45
movabs r12, 0x6d65747379536553
sar r14b, cl
movabs r14, 0x6976697250746e65
mov qword [rsp + 0x30], rbx
movzx rax, ax
movzx eax, bp
mov rax, qword [rsp + 0x30]
jmp 0x140c20968
xor rax, r12
clc
mov qword [rsp + 0x30], rax
cmp r10, 0xffffffffd1b6581b
mov qword [rsp + 0x70], rbx
mov rax, qword [rsp + 0x70]
test sp, 0x4436
xor rax, r15
cmp dx, dx
mov qword [rsp + 0x38], rax
inc ah
mov qword [rsp + 0x70], rbx
mov rax, qword [rsp + 0x70]
xor rax, r14
clc
test r9, rcx
mov qword [rsp + 0x40], rax
and eax, ebp
ror eax, cl
mov qword [rsp + 0x70], rbx
inc al
cmovp ax, r8w
movzx rax, r8w
mov rax, qword [rsp + 0x70]
xor rax, 0x6567656c
test esp, r15d
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x70], rbx
cmovns ax, cx
bt ax, 0x27
mov qword [rsp + 0x60], 4
or eax, esp
test si, 0xb123
mov rax, qword [rsp + 0x60]
clc
jmp 0x140c209fb
test rax, rax
jmp 0x140c20a03
je 0x140c20a43
xor eax, eax
cmovne cx, di
or ch, cl
add ch, dh
mov rcx, qword [rsp + 0x70]
xor qword [rsp + rax*8 + 0x30], rcx
dec cl
cmovs ecx, r11d
inc rax
shl cx, 0x9b
bts ecx, eax
rcr cl, 0x9a
mov rcx, qword [rsp + 0x60]
cmp rax, rcx
jmp 0x140c20a3d
jb 0x140c20a13
lea rcx, [rsp + 0x30]
jmp 0x140c20a4d
mov dl, 1
jmp 0x140c20a54
call fcn.140c1da73
mov qword [rsp + 0x30], rbx
and ax, 0xd603
xadd ah, ch
sar al, cl
mov rax, qword [rsp + 0x30]
movabs rcx, 0x776d726946746547
xor rcx, rax
mov qword [rsp + 0x70], rcx
shrd cx, cx, 0x95
mov rcx, 0x18abc98d
not ax
mov qword [rsp + 0x30], rbx
mov rax, qword [rsp + 0x30]
rol ch, cl
movzx ecx, r15w
movabs rcx, 0x7269766e45657261
xor rcx, rax
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x30], rbx
btc cx, 0xb2
movzx ecx, r12w
dec cl
mov rax, qword [rsp + 0x30]
movsxd rcx, r11d
movabs rcx, 0x6156746e656d6e6f
xor rcx, rax
mov qword [rsp + 0x80], rcx
btr eax, eax
or cl, r9b
mov qword [rsp + 0x30], rbx
mov rax, qword [rsp + 0x30]
bswap rcx
cmc
mov ecx, 0xbd07bea3
movabs rcx, 0x41656c62616972
test r8b, 0x31
stc
xor rcx, rax
mov qword [rsp + 0x88], rcx
ror al, 0x17
shrd ax, ax, 0x2b
mov qword [rsp + 0x30], rbx
sar ax, cl
mov qword [rsp + 0x60], 4
cmp ebp, esp
mov rax, qword [rsp + 0x60]
test rax, rax
jmp 0x140c20b37
je 0x140c20ba1
sub eax, eax
sub rcx, r15
nop word cs:[rax + rax]
movsxd rcx, edx
bswap cx
mov rcx, qword [rsp + 0x30]
cmp r9b, 0x9b
xor qword [rsp + rax*8 + 0x70], rcx
movsx cx, bpl
mov rcx, 0xffffffff840faa27
inc rax
bts rcx, r12
shrd rcx, rax, 0x92
sbb ch, 0x10
mov rcx, qword [rsp + 0x60]
cmp ax, di
test r15w, 0xf097
cmp rbx, 0xffffffffe89f159a
cmp rax, rcx
jmp 0x140c20b9b
jb 0x140c20b55
mov qword [rsp + 0x30], rbx
mov rax, qword [rsp + 0x30]
mov ch, 0x31
movabs rcx, 0x32336c656e72656b
jmp 0x140c20bbd
xor rcx, rax
sub ax, di
sal ax, 0x9b
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x30], rbx
bt ax, 0x14
btr ax, 0x3b
mov rax, qword [rsp + 0x30]
jmp 0x140c20bec
mov qword [rsp + 0x68], rax
sub al, r8b
test r15w, cx
mov qword [rsp + 0x30], rbx
bt ax, 0x95
bts ax, sp
mov qword [rsp + 0x20], 2
mov rax, qword [rsp + 0x20]
test r13, 0x1d33f6a2
test rax, rax
je 0x140c20c67
xor eax, eax
nop dword [rax]
add cl, r13b
sal rcx, cl
bts rcx, rbx
mov rcx, qword [rsp + 0x30]
cmp edx, r11d
cmp ecx, 0x6cb434bd
test r15b, dil
xor qword [rsp + rax*8 + 0x60], rcx
bswap rcx
inc rax
jmp 0x140c20c58
mov rcx, qword [rsp + 0x20]
clc
cmp rax, rcx
jb 0x140c20c34
lea rcx, [rsp + 0x60]
jmp 0x140c20c71
call fcn.140c1d772
lea rdx, [rsp + 0x70]
jmp 0x140c20c86
mov rcx, rax
jmp 0x140c20c8e
call fcn.140c1d89d
mov qword [rsp + 0x30], rbx
mov rcx, qword [rsp + 0x30]
movsx edx, cx
movzx dx, r10b
cmp r9b, 0xb2
movabs rdx, 0x366664346562387b
clc
xor rdx, rcx
mov qword [rsp + 0x30], rdx
sbb dl, bpl
bt edx, edi
mov qword [rsp + 0x20], rbx
bt dx, r13w
rcl cx, 0x31
btc rcx, 2
mov rcx, qword [rsp + 0x20]
movabs rdx, 0x312d616333392d31
clc
xor rdx, rcx
shl cl, cl
xchg rcx, rcx
mov qword [rsp + 0x38], rdx
add ch, ch
mov qword [rsp + 0x20], rbx
mov rcx, qword [rsp + 0x20]
btc rdx, rbp
movabs rdx, 0x643061612d326431
jmp 0x140c20d11
xor rdx, rcx
mov qword [rsp + 0x40], rdx
setb dh
sub edx, esp
mov qword [rsp + 0x20], rbx
cwd
sar rcx, 0x88
mov rcx, qword [rsp + 0x20]
movabs rdx, 0x303839306530302d
xor rdx, rcx
bsf cx, di
movzx cx, r8b
mov qword [rsp + 0x48], rdx
ror rcx, 0x11
movzx rcx, si
mov qword [rsp + 0x20], rbx
movsx rdx, bx
mov rcx, qword [rsp + 0x20]
shrd edx, esi, 0xbf
movabs rdx, 0x7d6338623233
xor rdx, rcx
rol ch, 0xa2
bt cx, 0x91
jmp 0x140c20d7d
mov qword [rsp + 0x50], rdx
not rcx
mov qword [rsp + 0x20], rbx
movzx rcx, r10w
cmp bpl, bl
add rcx, 0xffffffffd1aaaf9b
mov qword [rsp + 0x58], 5
rcr rcx, 0x25
movsx cx, r9b
mov rcx, qword [rsp + 0x58]
test rcx, rcx
jmp 0x140c20db7
je 0x140c20e0a
sub ecx, ecx
ror dx, cl
movsxd rdx, ecx
nop word cs:[rax + rax]
movsx rdx, cx
bts edx, r8d
mov rdx, qword [rsp + 0x20]
test cx, sp
stc
xor qword [rsp + rcx*8 + 0x30], rdx
cqo
mov dl, 0x28
mov dl, sil
inc rcx
btr dx, r10w
shl edx, 0xbb
sar dh, cl
mov rdx, qword [rsp + 0x58]
stc
cmp rcx, rdx
jb 0x140c20dd9
mov qword [rsp + 0x20], rbx
movsx edx, sp
not cx
mov rcx, qword [rsp + 0x20]
rol edx, cl
movabs rdx, 0x6f42657275636553
xor rdx, rcx
or cx, 0x7f3c
mov qword [rsp + 0x20], rdx
sar ecx, cl
cmp ax, r12w
ror cl, 0x22
mov qword [rsp + 0x58], rbx
shr ch, 0x25
xor cl, r15b
mov rcx, qword [rsp + 0x58]
xor rcx, 0x746f
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x58], rbx
inc cl
movsx rcx, r14w
movsx cx, dh
mov qword [rsp + 0x90], 2
rol rcx, 0x21
neg rcx
mov rcx, qword [rsp + 0x90]
test rcx, rcx
jmp 0x140c20e8a
je 0x140c20ee4
xor ecx, ecx
or dx, 0x9b7
movzx edx, r12w
btc dx, 0xb9
nop dword [rax]
movzx rdx, bp
mov rdx, qword [rsp + 0x58]
xor qword [rsp + rcx*8 + 0x20], rdx
inc dh
mov dx, sp
inc rcx
and rdx, 0xffffffffc59a450d
or dx, bx
test bpl, r14b
mov rdx, qword [rsp + 0x90]
cmp r10b, 0xbd
cmp rcx, rdx
jmp 0x140c20ede
jb 0x140c20eab
lea rcx, [rsp + 0x20]
movsx rdx, bx
not r9d
movsx r9d, r13w
lea rdx, [rsp + 0x30]
seto r9b
mov r8, rdi
movsx r9, r15w
bswap r9w
mov r9d, 1
jmp 0x140c20f13
call rax
mov qword [rsp + 0x30], rbx
shl ah, 0x12
clc
or al, 0x9d
mov rax, qword [rsp + 0x30]
xor rax, r12
test dl, spl
mov qword [rsp + 0x30], rax
bt rax, rax
bswap ax
mov qword [rsp + 0x70], rbx
clc
mov rax, qword [rsp + 0x70]
xor rax, r15
mov qword [rsp + 0x38], rax
bt rax, 0x8b
cmp r14, 0x7da2c2a3
sar rax, 0x82
mov qword [rsp + 0x70], rbx
sal rax, 0x91
adc ax, 0xb1b6
seta al
mov rax, qword [rsp + 0x70]
test cl, r9b
test edx, 0xaf892496
xor rax, r14
mov qword [rsp + 0x40], rax
cbw
adc rax, rdi
seto al
mov qword [rsp + 0x70], rbx
rol al, cl
adc rax, 0xfffffffff21a7394
sar ah, 0xb2
mov rax, qword [rsp + 0x70]
jmp 0x140c20fa3
xor rax, 0x6567656c
mov qword [rsp + 0x48], rax
mov ax, 0x2aae
cbw
btc ax, 0
mov qword [rsp + 0x70], rbx
bswap rax
xchg ah, ah
btr eax, 0x31
mov qword [rsp + 0x60], 4
bsr ax, r15w
mov rax, qword [rsp + 0x60]
test ah, 0xaf
clc
test rax, rax
jmp 0x140c20fe6
je 0x140c2102c
xor eax, eax
cmp r12w, di
sub ch, 0x8a
xor cl, r13b
nop word cs:[rax + rax]
adc cx, r9w
mov rcx, qword [rsp + 0x70]
clc
xor qword [rsp + rax*8 + 0x30], rcx
inc rax
mov rcx, qword [rsp + 0x60]
cmp bl, r14b
cmp rax, rcx
jmp 0x140c21026
jb 0x140c21008
lea rcx, [rsp + 0x30]
xor edx, edx
jmp 0x140c21038
call fcn.140c1da73
cmp esi, 2
cmovs bx, r13w
mov dil, bpl
sete al
btr esi, r13d
xor esi, r13d
add rsp, 0x98
bswap esi
pop rbx
pop rdi
movzx esi, si
movsx r15, r15w
jmp 0x140c21069
pop rsi
mov r12w, di
pop r12
cmovle r14w, r13w
pop r14
movsx r15w, sil
mov r15b, dil
pop r15
jmp 0x140c21086
ret