Function at 0x14017ca00
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], rcx
mov rcx, qword [rcx]
mov qword [rsp + 0x58], rcx
xor eax, eax
cmp rcx, qword [rdx]
mov byte [rsp + 0x67], al
jne 0x14017ccd5
mov rcx, qword [rsp + 0x58]
movabs rdx, 0xdfc06981c4de2bb
movabs rax, 0xdfc06981c4de2bb
xor rdx, rax
mov al, 1
cmp rcx, rdx
mov byte [rsp + 0x67], al
je 0x14017ccd5
mov rcx, qword [rsp + 0x58]
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
mov rdx, qword [rdx + 8]
add rdx, 8
mov qword [rsp + 0x28], rdx
mov rax, qword [rax + 8]
add rax, 8
mov qword [rsp + 0x30], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rsp + 0x38], rax
xor eax, eax
mov qword [rsp + 0x40], rax
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x18], rcx
xor eax, eax
cmp rcx, rdx
mov dword [rsp + 0x24], eax
je 0x14017cc15
mov eax, dword [0x1401df2e8]
xor eax, 0xa9d617cc
mov ecx, dword [0x1401df2ec]
xor ecx, 0x2f70813
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0x6cd3f598
xor edx, 0x932c0a67
mov eax, ecx
xor eax, edx
mov edx, 0x6a434d38
xor edx, 0xc3093770
mov r8d, 0xb7a98d49
xor r8d, 0x485672b6
xor edx, r8d
and eax, edx
or ecx, 0xa94a7a48
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x7c5a7685
xor edx, 0x83a5897a
xor ecx, edx
and eax, ecx
add eax, 0x2d681fc1
sub eax, 0x97d9a775
sub eax, 0x2d681fc1
mov ecx, 0x26ccdf34
xor ecx, 0x2b1d5c02
imul eax, ecx
mov ecx, 0xc4eb6760
xor ecx, 0x454b4902
cmp eax, ecx
jae 0x14017cce3
mov rcx, qword [rsp + 0x18]
mov r8, qword [rsp + 0x30]
mov eax, dword [0x1401df2f0]
xor eax, 0xab3f8cc9
or eax, dword [0x1401df2f4]
imul eax, eax, 0x4ff42b88
sub eax, 0x1477eddd
mov r9d, 0x4fc169f8
xor r9d, 0xde2fc355
xor edx, edx
div r9d
mov rdx, qword [rsp + 0x28]
movzx edx, byte [rdx + rcx]
movzx r8d, byte [r8 + rcx]
sub edx, 0x8861a2b1
sub edx, r8d
mov r8d, 0x873fffd8
xor r8d, 0xf5e5d69
add edx, r8d
mov dword [rsp + 8], edx
cmp edx, 0
sete dl
mov byte [rsp + 0xf], dl
movabs rdx, 0xb9c809bd797702c7
movabs r8, 0xb9c809bd797702c7
xor rdx, r8
movabs r8, 0x849688fe80499d54
movabs r9, 0x849688fe80499d55
xor r8, r9
sub rdx, r8
sub rcx, rdx
mov qword [rsp + 0x10], rcx
cmp eax, 0x33251ac6
jae 0x14017cb40
mov eax, dword [rsp + 8]
mov rcx, qword [rsp + 0x10]
mov dl, byte [rsp + 0xf]
test dl, 1
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0x24], eax
jne 0x14017ca8e
jmp 0x14017cc15
mov eax, dword [rsp + 0x24]
mov dword [rsp + 4], eax
mov eax, dword [0x1401df2f8]
mov edx, dword [0x1401df2fc]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
sub eax, 0x60eeef43
mov ecx, 0x9a82abf4
xor ecx, 0x9a82abf4
sub ecx, eax
xor eax, eax
sub eax, 0xc323dbf7
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x10ef58f6
mov edx, 0xffffffff
xor edx, 0x10ef58f6
and eax, edx
sub eax, ecx
mov ecx, 0x858ad120
xor ecx, 0xf74734ee
cmp eax, ecx
je 0x14017ccec
mov eax, dword [0x1401df300]
add eax, dword [0x1401df304]
xor ecx, ecx
sub ecx, 0xca31f8db
sub eax, ecx
and eax, 0xf01da2f0
mov ecx, 0x35ce35d8
xor edx, edx
div ecx
mov edx, dword [rsp + 4]
mov ecx, 0x91ea0776
xor ecx, 0xd6af9fc0
cmp edx, 0
sete dl
mov byte [rsp + 3], dl
cmp eax, ecx
ja 0x14017ccec
mov al, byte [rsp + 3]
mov byte [rsp + 0x67], al
jmp 0x14017ccd5
mov al, byte [rsp + 0x67]
and al, 1
movzx eax, al
add rsp, 0x68
ret
add dword [rdi], esp
mov ah, dl
jmp 0x14017cb40
adc esi, esp
push rdi
adc cl, ch
invalid