Function at 0x14014cf50
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], rcx
call fcn.14017583a
mov rcx, qword [rsp + 0x58]
xor eax, eax
cmp rcx, 0
mov byte [rsp + 0x67], al
je 0x14014d318
mov eax, dword [0x140209728]
xor edx, edx
div dword [0x14020972c]
mov edx, 0xffffffff
xor edx, 0x1b831022
mov ecx, eax
xor ecx, edx
and ecx, eax
xor ecx, 0x72e100b
mov eax, ecx
xor eax, 0xffffffff
mov r8d, 0x49162ea2
xor r8d, 0xb6e9d15d
mov edx, ecx
xor edx, r8d
and eax, edx
mov edx, 0xffffffff
xor edx, 0x2d34e92c
mov r8d, 0xffffffff
xor r8d, 0x2d34e92c
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, 0x12b96231
xor edx, 0xed469dce
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x2d34e92c
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0x9fbd0ef6
je 0x14014d32b
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x140209730]
mov r8d, dword [0x140209734]
xor r8d, 0xd9ac92c5
xor edx, edx
div r8d
xor edx, edx
sub edx, 0x3d59bfbc
sub eax, edx
or eax, 0x97196e5d
add eax, 0x6f5f4f8
xor edx, edx
sub rdx, rcx
xor ecx, ecx
sub rcx, 0xfffffffffffffff0
add rdx, rcx
movabs rcx, 0xbcaf009296d20ddc
movabs r8, 0xbcaf009296d20ddc
xor rcx, r8
sub rcx, rdx
mov qword [rsp + 0x38], rcx
mov rcx, qword [rcx]
mov qword [rsp + 0x40], rcx
cmp rcx, 0x10
setb cl
mov byte [rsp + 0x4f], cl
cmp eax, 0xf57717f8
jae 0x14014d003
mov cl, byte [rsp + 0x4f]
mov al, 1
test cl, 1
mov byte [rsp + 0x37], al
jne 0x14014d2f2
jmp 0x14014d098
mov eax, dword [0x140209738]
xor eax, 0x37f94d65
and eax, dword [0x14020973c]
mov ecx, 0x28c77974
xor ecx, 0xdd1fcb64
mov edx, 0xf0c400ac
xor edx, 0xf3bff53
xor ecx, edx
mov edx, 0x30576d1e
xor edx, 0x30576d1e
mov r8d, 0x5a6f779d
xor r8d, 0x5a6f779c
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xe25f4b18
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x8e9bf07
xor r8d, 0xeab6f41f
mov edx, eax
and edx, r8d
or eax, 0xe25f4b18
imul eax, edx
add eax, ecx
add eax, 0xbe732109
mov ecx, 0xc480179d
xor ecx, 0xdc85d61b
cmp eax, ecx
jbe 0x14014d334
mov r8, qword [rsp + 0x40]
mov eax, dword [0x140209740]
xor eax, 0x6940ce80
mov ecx, dword [0x140209744]
mov edx, 0x48439253
xor edx, 0xc9a6908e
xor ecx, edx
xor edx, edx
div ecx
mov ecx, 0x83fb5d22
xor ecx, 0x8f44f0a9
and eax, ecx
add eax, 0xd804640f
sub eax, 0xe524d83d
sub eax, 0xd804640f
or eax, 0xd19c93f6
mov rcx, r8
add rcx, 0xfffffffffffffff0
mov qword [rsp + 0x28], rcx
mov rdx, rcx
xor rdx, r8
movabs r8, 0x363218b08df61855
movabs r9, 0x363218b08df61855
xor r8, r9
cmp rdx, r8
setl r8b
cmp rcx, 0xffffffffffffffff
setg cl
or cl, cl
xor cl, 0xff
mov dl, r8b
xor dl, 0xff
xor r8b, 0xff
and dl, r8b
or cl, dl
xor cl, 0xff
mov byte [rsp + 0x36], cl
cmp eax, 0xf5a0bf3d
jae 0x14014d131
mov al, byte [rsp + 0x36]
test al, 1
jne 0x14014d1e7
jmp 0x14014d2df
mov eax, dword [0x140209748]
xor eax, 0xd9612fb7
mov r8d, dword [0x14020974c]
mov edx, r8d
xor edx, 0xffffffff
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, 0x9b573801
xor edx, edx
div ecx
mov ecx, eax
sub ecx, 0x23ac7ef7
mov edx, 0x615ad76f
xor edx, 0x95fd3194
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xc6bc3f38
xor edx, 0x321bd9c3
mov r8d, 0x1420cc48
xor r8d, 0xebdf33b7
xor edx, r8d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0x6a18a617
jbe 0x14014d33d
mov eax, dword [0x140209750]
mov r8d, dword [0x140209754]
mov ecx, 0xa089b45d
xor ecx, 0x5f764ba2
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
add eax, 0x4272a29e
mov ecx, 0x61bcf37b
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0xa95b23d2
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov dword [rsp + 0x24], eax
call fcn.140007f57
mov eax, dword [rsp + 0x24]
cmp eax, 0xdeeb962
jb 0x14014d33d
xor eax, eax
mov byte [rsp + 0x67], al
jmp 0x14014d318
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov qword [rax], rcx
xor eax, eax
mov byte [rsp + 0x37], al
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x38]
mov cl, byte [rsp + 0x4f]
mov al, byte [rsp + 0x37]
mov byte [rsp + 0x23], al
and cl, 1
call fcn.140010de9
mov al, byte [rsp + 0x23]
mov byte [rsp + 0x67], al
mov al, byte [rsp + 0x67]
cmp al, 0
setne al
and al, 1
movzx eax, al
add rsp, 0x68
ret
shl dword [rbx], 0x98
invalid
add edx, 0xf4e99201
std
invalid
scasd eax, dword [rdi]
sub dword [rdi + rdx*2 - 0xe617], edi
jmp qword [rsi + 0x2e]