Function at 0x1400315d0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rcx
mov rdx, qword [rcx]
movabs rcx, 0xca1589448ee03daa
movabs rax, 0x35ea76bb711fc255
xor rcx, rax
mov rax, rdx
add rax, rcx
mov qword [rsp + 0x50], rax
mov rcx, rax
and rcx, rcx
xor rcx, 0xffffffffffffffff
and rcx, rdx
movabs r8, 0x4d639d6eb7ca7f14
movabs r9, 0xb29c6291483580eb
xor r8, r9
xor rcx, r8
mov r8, rdx
xor r8, 0xffffffffffffffff
movabs r9, 0xfa14c263a2743b9e
movabs r10, 0x5eb3d9c5d8bc461
xor r9, r10
xor rdx, r9
or r8, rdx
mov rdx, rax
and rdx, r8
movabs r8, 0x29427f3aceb13001
movabs r9, 0xd6bd80c5314ecffe
xor r8, r9
xor rdx, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
cmp rcx, 0
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x14003176d
mov eax, dword [0x1401dc888]
add eax, dword [0x1401dc88c]
mov ecx, eax
xor ecx, 0x5789c373
xor ecx, 0xffffffff
or eax, 0x5789c373
and eax, ecx
sub eax, 0xa558a42b
mov ecx, 0xfdce794
xor ecx, 0xb848a361
add eax, ecx
mov ecx, 0xfe3e0f2a
xor ecx, 0x5b66ab01
add eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xa9258d91
or ecx, 0xa9258d91
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0x6bc9de52
jae 0x140031acd
mov rcx, qword [rsp + 0x48]
mov edx, dword [0x1401dc890]
xor edx, 0x1fcb277
mov r8d, dword [0x1401dc894]
xor r8d, 0xd4424f06
mov eax, edx
and eax, r8d
xor edx, r8d
or eax, edx
mov r8d, 0xfcbfa8d0
xor r8d, 0x4b37bd8
xor edx, edx
div r8d
sub eax, 0x17de9119
mov edx, eax
xor edx, 0xffffffff
and edx, 0x96700e1e
mov r8d, 0xffffffff
xor r8d, 0x96700e1e
and eax, r8d
sub eax, edx
add rcx, 8
mov qword [rsp + 0x38], rcx
cmp eax, 0x610dc40b
ja 0x1400316ed
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x30], rax
jmp 0x140031844
mov eax, dword [0x1401dc898]
mov ecx, dword [0x1401dc89c]
mov edx, 0xbe7469e2
xor edx, 0xc7756114
xor ecx, edx
xor edx, edx
div ecx
add eax, 0x33503ba6
xor ecx, ecx
sub ecx, 0x3b7eaea4
add eax, ecx
mov ecx, 0x3530e64f
xor ecx, 0xab60530f
xor edx, edx
div ecx
cmp eax, 0xd9b8781c
ja 0x140031ad6
mov ecx, dword [0x1401dc8a0]
xor ecx, 0x90eab0f6
mov edx, dword [0x1401dc8a4]
mov eax, ecx
xor eax, 0xffffffff
and eax, edx
xor edx, 0xffffffff
and ecx, edx
sub ecx, eax
sub ecx, 0x8e5cb5f3
mov eax, 0x8a9206e4
xor eax, 0x5db42a59
sub ecx, eax
mov edx, 0x64520ce1
xor edx, 0x9badf31e
mov eax, ecx
xor eax, edx
and eax, 0xf62194c2
mov edx, 0x1c612c8f
xor edx, 0xea40b84d
mov r8d, 0xadeb38c3
xor r8d, 0x5214c73c
xor edx, r8d
and ecx, edx
or eax, ecx
mov dword [rsp + 0x2c], eax
mov eax, 0xfd416d5c
xor eax, 0x8f0e31b3
mov dword [rsp + 0x28], eax
call fcn.1400067fe
mov ecx, dword [rsp + 0x28]
mov eax, dword [rsp + 0x2c]
cmp eax, ecx
je 0x1400317b3
jmp 0x140031996
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x20], rax
cmp rax, rcx
jl 0x140031913
mov rax, qword [rsp + 0x20]
movabs rcx, 0xa21addfbceb0425a
movabs rdx, 0xa21addfbceb0425a
xor rcx, rdx
cmp rax, rcx
jl 0x140031894
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x48]
cmp rax, qword [rcx]
jl 0x1400318a1
mov rcx, rdx
call fcn.1400137e9
jmp 0x140031996
mov rcx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x38]
mov rax, qword [rax]
shl rcx, 4
lea rcx, [rax + rcx + 8]
call fcn.140031594
mov rcx, qword [rsp + 0x20]
mov rax, rcx
dec rax
mov r8, rcx
neg r8
mov rdx, rcx
and rdx, r8
mov r9, rcx
not r9
mov r8, rax
and r8, r9
or rdx, r8
sets r8b
test rcx, rcx
setne cl
sete dl
or dl, r8b
add cl, dl
inc cl
test cl, 1
mov qword [rsp + 0x30], rax
jne 0x140031909
jmp 0x140031844
call fcn.1400067fe
jmp 0x140031996
mov eax, dword [0x1401dc8a8]
mov ecx, dword [str._8vZ]
xor ecx, 0x928fd5fe
or eax, ecx
xor eax, 0xbbea309e
mov ecx, eax
xor ecx, 0x7e3c103
xor ecx, 0xffffffff
or eax, 0x7e3c103
and eax, ecx
mov ecx, 0xc271a48d
xor edx, edx
div ecx
cmp eax, 0x6a525553
jae 0x140031adf
mov rcx, qword [rsp + 0x48]
mov eax, dword [0x1401dc8b0]
xor eax, dword [0x1401dc8b4]
mov r8d, 0xd065e2c4
xor edx, edx
div r8d
add eax, 0x1e6cecd8
mov r8d, 0xc637d4a4
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x40]
mov qword [rcx], rdx
cmp eax, 0xcd6c97b
jae 0x140031952
jmp 0x140031996
mov ecx, dword [0x1401dc8b8]
xor ecx, 0xf2f76854
add ecx, dword [0x1401dc8bc]
mov eax, ecx
or eax, 0x45ca37c5
xor eax, 0xffffffff
mov edx, 0x5e34df90
xor edx, 0xa1cb206f
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x45ca37c5
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xa278c472
xor ecx, 0x1e65535b
imul eax, ecx
mov ecx, eax
xor ecx, 0x4adcef54
xor ecx, 0xffffffff
mov edx, 0xe1a3bc8f
xor edx, 0xab7f53db
or eax, edx
and eax, ecx
cmp eax, 0xdcdd9dcf
ja 0x140031ae8
mov r11d, dword [0x1401dc8c0]
mov r10d, dword [0x1401dc8c4]
mov eax, 0x22aebccf
xor eax, 0xdd514330
mov ecx, r11d
xor ecx, eax
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x73de6cb2
mov eax, ecx
and eax, 0x73de6cb2
and r11d, edx
mov r9d, r8d
and r9d, 0x73de6cb2
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x73de6cb2
and ecx, edx
or eax, ecx
or eax, 0x9d7bb133
mov edx, 0xffffffff
xor edx, 0x8ef15b0
mov ecx, eax
xor ecx, edx
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x903022c6
xor edx, 0x314f05ff
mov r8d, 0x1d05939
xor r8d, 0xfe2fa6c6
xor edx, r8d
or eax, edx
mov edx, 0xed57b57d
xor edx, 0x12a84a82
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xa17f2739
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x825e7933
ja 0x140031ae8
add rsp, 0x58
ret
pop rdx
pop rdx
fiadd dword [rbx - 0x17]
invalid
test eax, 0xe9bc4bc2
invalid
push rbx
invalid
mov ebx, 0xe93f24ac
adc edi, edi
invalid