Function at 0x14006eb61
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x48
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], rcx
call fcn.140067645
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x40], rax
call fcn.14006a4d0
mov rax, qword [rsp + 0x40]
mov al, byte [rax]
mov cl, 0x96
xor cl, 0x96
cmp al, cl
jne 0x14006ea7c
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
call fcn.14006d540
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14006ea7c
mov eax, dword [0x1401f6418]
mov ecx, dword [0x1401f641c]
mov edx, 0xbbe03f52
xor edx, 0x812f5b02
xor ecx, edx
or eax, ecx
mov edx, eax
xor edx, 0x859de71a
mov ecx, 0x924270b9
xor ecx, 0x6dbd8f46
xor edx, ecx
mov ecx, 0xf6c65aac
xor ecx, 0x735bbdb6
and ecx, edx
shl ecx, 1
mov edx, 0x51d1807b
xor edx, 0xd44c6761
sub ecx, edx
sub eax, ecx
mov ecx, 0x3f6eda1b
xor ecx, 0x1ad15713
add eax, ecx
mov ecx, eax
xor ecx, 0xbade6d0e
xor ecx, 0xffffffff
or eax, 0xbade6d0e
and eax, ecx
mov ecx, 0x66648cae
xor ecx, 0x1d833b5b
cmp eax, ecx
je 0x14006eb4f
mov rcx, qword [rsp + 0x38]
mov eax, dword [0x1401f6420]
or eax, dword [0x1401f6424]
mov r8d, 0x11a3a112
xor edx, edx
div r8d
mov edx, 0x5743444d
xor edx, 0xce168c5d
xor eax, edx
mov edx, 0x848463ac
xor edx, 0x1f7f47fe
sub eax, edx
mov dword [rsp + 0x28], eax
mov eax, 0x211bced2
xor eax, 0xb441db87
mov dword [rsp + 0x24], eax
call fcn.14006df10
mov rdx, qword [rsp + 0x40]
mov ecx, dword [rsp + 0x24]
mov r8b, al
mov eax, dword [rsp + 0x28]
mov byte [rsp + 0x2e], r8b
mov dl, byte [rdx]
mov r8b, 0x1f
xor r8b, 0x1f
cmp dl, r8b
sete dl
mov byte [rsp + 0x2f], dl
cmp eax, ecx
jb 0x14006e944
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x14006e9d2
jmp 0x14006ea7c
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
mov al, byte [rsp + 0x2e]
mov byte [rdx + 4], al
add rdx, 8
call fcn.14006d540
mov rax, qword [rsp + 0x40]
mov al, byte [rax]
mov cl, 0x23
xor cl, 0x23
cmp al, cl
jne 0x14006ea7c
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
add rdx, 0xc
call fcn.14006d540
mov rax, qword [rsp + 0x40]
mov al, byte [rax]
mov cl, 0x5c
xor cl, 0x5c
cmp al, cl
jne 0x14006ea7c
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
add rdx, 0x10
call fcn.14006d9fb
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14006ea7c
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
add rdx, 0x20
call fcn.14006d9fb
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x14006ea7c
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
add rdx, 0x30
call fcn.14006e740
mov ecx, dword [0x1401f6428]
mov edx, dword [0x1401f642c]
mov eax, ecx
xor eax, edx
xor eax, 0xffffffff
mov r8d, edx
and r8d, eax
mov eax, 0xdd3abf79
xor eax, 0xdd3abf7b
imul eax, r8d
sub eax, edx
sub ecx, eax
mov edx, 0x661bacd3
xor edx, 0x3ec6fa86
mov eax, ecx
and eax, edx
mov edx, 0xfa0db78e
xor edx, 0xa2d0e1db
or ecx, edx
add eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xca66402a
and ecx, 0xca66402a
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0xfe0be397
xor edx, edx
div ecx
cmp eax, 0x4f8bdbae
je 0x14006eb58
mov eax, dword [0x1401f6430]
xor eax, 0x6d87edec
or eax, dword [0x1401f6434]
mov ecx, 0xf7428f2a
xor ecx, 0xfdfc9eca
mov edx, 0x4ed5b652
xor edx, 0xb12a49ad
xor ecx, edx
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x2061ec32
xor ecx, 0xf7daef47
xor eax, ecx
mov ecx, 0x210f0a37
xor ecx, 0xee9c4b71
xor edx, edx
div ecx
cmp eax, 0xa3e6bedd
je 0x14006eaf1
add rsp, 0x48
ret
int 0xf0
invalid
popfq
cmp al, 0xef
in eax, dx
jmp 0x14006eaf1
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
call fcn.140067645
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x14006e870