Function at 0x14007c730
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
mov r9, rdx
xor eax, eax
nop dword [rax]
test al, al
jne 0x14007c740
mov r8d, 1
test r9, r9
je 0x14007c77a
cmp r9, 1
jne 0x14007c781
movzx edx, byte [rcx]
mov eax, 0x100
cmp edx, 0x2b
je 0x14007caea
mov r9d, 1
cmp edx, 0x2d
je 0x14007caea
jmp 0x14007c86f
xor eax, eax
jmp 0x14007caea
movzx r10d, byte [rcx]
mov eax, dword [0x140217560]
xor edx, edx
div dword [0x140217564]
nop word cs:[rax + rax]
mov eax, dword [0x140217568]
or eax, dword [0x14021756c]
mov edx, eax
not edx
mov r11d, eax
and r11d, 0xaffe0334
and edx, 0x5001fccb
imul edx, r11d
mov r11d, eax
and r11d, 0x5001fccb
or eax, 0x5001fccb
imul eax, r11d
add eax, edx
mov edx, eax
and edx, 0xff62998e
mov r11d, edx
not r11d
and r11d, 0x9ca42086
mov esi, eax
and esi, 0x63429908
imul esi, r11d
and eax, 0x9c200086
or edx, 0x9ca42086
imul edx, eax
add edx, esi
cmp edx, 0xaadbd675
jb 0x14007c7a0
cmp r10b, 0x2b
jne 0x14007c830
inc rcx
lea rax, [r9 - 1]
cmp r9, 6
mov r9, rax
jb 0x14007c86f
jmp 0x14007c9a0
mov eax, dword [0x140217558]
mov edx, dword [0x14021755c]
mov r10d, eax
not r10d
or eax, edx
not edx
or edx, r10d
and edx, eax
mov eax, edx
xor eax, 0x2860124b
and eax, edx
and eax, 0x2cf03bff
add eax, 0xa06db689
cmp eax, 0x3f26b6dd
jb 0x14007c830
cmp r9, 5
jae 0x14007c9a0
mov r11, r9
neg r11
xor r10d, r10d
mov esi, 0xc14b3f27
nop dword [rax]
mov eax, dword [0x140217590]
xor edx, edx
div dword [0x140217594]
mov edx, eax
xor edx, 0xeafc5c85
or eax, 0x1503a37a
and eax, edx
imul eax, eax, 0x46ecb35b
mov edx, eax
not edx
and edx, 0xe571b6c0
mov edi, eax
and edi, 0x1a8e493f
imul edi, edx
mov edx, eax
and edx, 0xe571b6c0
or eax, 0xe571b6c0
imul eax, edx
add eax, edi
cmp eax, 0xeda69971
je 0x14007c880
movzx eax, byte [rcx]
add eax, 0xffffffd0
cmp eax, 9
ja 0x14007cae5
mov edx, r10d
not edx
and edx, 0xa
mov edi, r10d
and edi, 0xfffffff5
imul edi, edx
mov edx, r10d
and edx, 0xa
or r10d, 0xa
imul r10d, edx
add r10d, edi
mov edx, r10d
mov r10d, dword [0x140217598]
mov edi, dword [0x14021759c]
not r10d
mov ebx, r10d
and ebx, edi
not ebx
or r10d, edi
and r10d, ebx
not r10d
add r10d, 0x40560f5a
xor r10d, 0x7a121f3c
add r10d, 0xe349a3e4
cmp r10d, 0x319616ad
jb 0x14007c905
dec r9
inc rcx
mov r10d, dword [0x1402175a0]
mov edi, dword [0x1402175a4]
mov ebx, r10d
or ebx, edi
not r10d
not edi
and edi, r10d
not edi
and edi, ebx
or edi, 0x94134239
imul rdi, rsi
shr rdi, 0x3e
imul r10d, edi, 0x759ee89
cmp r10d, 0xe54022ef
ja 0x14007c949
movsx r10d, ax
add r10d, edx
inc r11
jne 0x14007c880
xor eax, eax
xor r8d, r8d
jmp 0x14007caea
mov eax, dword [0x140217570]
mov edx, dword [0x140217574]
not eax
not edx
and edx, eax
mov eax, edx
not eax
and edx, 0x731044be
mov r10d, eax
and r10d, 0x8cefbb41
imul r10d, edx
mov edx, eax
and edx, 0x731044be
or eax, 0x731044be
imul eax, edx
add eax, r10d
xor eax, 0xd9546af6
imul eax, eax, 0x80245314
cmp eax, 0xa429e771
ja 0x14007c9a0
xor r11d, r11d
mov esi, 0xb4bf7989
mov di, 0xa
mov ebx, 0x9a342a8f
xor edx, edx
nop word cs:[rax + rax]
mov r10d, edx
mov eax, dword [0x140217578]
add eax, dword [0x14021757c]
imul rax, rsi
shr rax, 0x3f
add eax, 0xb6967a4f
not eax
and eax, 0x8018130
cmp eax, 0x21dba27a
ja 0x14007ca13
cmp r9, r11
je 0x14007c995
mov eax, r10d
mul di
seto bpl
movzx edx, byte [rcx + r11]
add edx, 0xffffffd0
cmp edx, 0xa
setae r14b
mov r15d, dword [0x140217580]
sub r15d, dword [0x140217584]
add r15d, 0x5e7d2db
not r15d
and r15d, 0x2ffa4250
cmp r15d, 0x1c0bebb
je 0x14007ca55
or r14b, bpl
jne 0x14007cb51
mov ebp, dword [0x140217588]
mov r14d, dword [0x14021758c]
mov r15d, r14d
not r15d
and r15d, ebp
xor r14d, ebp
add r14d, ebp
sub r14d, r15d
imul r14, rbx
shr r14, 0x3f
or r14d, 0xc000a280
mov ebp, eax
add bp, dx
setb bpl
cmp r14d, 0xf693ce3e
ja 0x14007ca8d
movsx edx, dx
add edx, eax
inc r11
test bpl, bpl
je 0x14007ca10
mov eax, 0x200
jmp 0x14007caea
mov eax, 0x100
shl r10d, 0x10
or r10d, eax
mov eax, r10d
not eax
or r10d, r8d
not r8d
and r8d, eax
not r8d
and r8d, r10d
nop word cs:[rax + rax]
mov eax, dword [0x1402175a8]
imul eax, dword [0x1402175ac]
mov ecx, eax
xor ecx, 0xa6584104
xor eax, 0x41048000
or ecx, 0x492590e2
or eax, 0xb6da6f1d
and eax, ecx
not eax
add eax, 0xf93bbb8b
cmp eax, 0x859f45fa
jb 0x14007cb10
mov eax, r8d
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
xor eax, eax
cmp edx, 0xa
setb al
shl eax, 8
add eax, 0x100
jmp 0x14007caea