Function at 0x1400202e0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x60
lea rbp, [rsp + 0x60]
mov qword [rbp - 0x18], rdx
mov qword [rbp - 0x20], rcx
mov eax, 0x20
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x28], rax
sub rsp, 0x20
call fcn.140009f59
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x18]
add rsp, 0x20
add rax, 0x60
mov qword [rbp - 0x10], rax
mov rax, qword [rcx]
mov qword [rbp - 8], rax
cmp rax, rdx
jle 0x14002034d
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call fcn.14001fe90
add rsp, 0x20
jmp 0x140020764
mov rax, qword [rbp - 8]
mov rcx, qword [rbp - 0x18]
cmp rax, rcx
jge 0x140020764
mov rax, qword [rbp - 0x20]
mov rcx, rax
add rcx, 8
mov qword [rbp - 0x38], rcx
mov rax, qword [rax + 8]
mov qword [rbp - 0x30], rax
cmp rax, 0
je 0x1400203ad
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x30]
mov rax, qword [rax]
movabs rdx, 0xd561c96cfb909e97
movabs r8, 0x6a9e3693046f6168
xor rdx, r8
and rax, rdx
cmp rax, rcx
jge 0x1400204e8
mov rdx, qword [rbp - 8]
mov r8, qword [rbp - 0x18]
movabs rcx, 0x81ef466e2f40cbe
movabs rax, 0xf7e10b991d0bf341
xor rcx, rax
mov rax, r8
xor rax, rcx
and rax, rdx
movabs rcx, 0x74e5640bc53558d
movabs r9, 0xf8b1a9bf43acaa72
xor rcx, r9
mov r9, rdx
xor r9, rcx
mov rcx, r8
and rcx, r9
sub rcx, rax
mov qword [rbp - 0x40], rcx
mov rax, rcx
xor rax, 0xffffffffffffffff
mov r9, rcx
xor r9, 0xffffffffffffffff
or rax, r9
xor rax, 0xffffffffffffffff
mov r9, r8
xor r9, 0xffffffffffffffff
or rax, r9
mov r9, r8
xor r9, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or r9, r8
mov r8, rcx
and r8, r9
xor r8, 0xffffffffffffffff
and rax, r8
movabs r8, 0xbefe4628affe3378
movabs r9, 0x4101b9d75001cc87
xor r8, r9
xor rax, r8
movabs r8, 0x74fabb4d301ac222
movabs r9, 0x74fabb4d301ac222
xor r8, r9
cmp rax, r8
setl al
xor rcx, rdx
cmp rcx, 0xffffffffffffffff
setg dl
xor al, 0xff
xor dl, 0xff
mov cl, 1
xor cl, 0
xor r8d, r8d
xor r8b, 1
xor cl, r8b
or al, dl
or cl, 1
xor al, 0xff
and al, cl
test al, 1
jne 0x1400204d6
mov r8, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x30]
mov rcx, qword [rbp - 8]
mov r9d, 0x20
sub rsp, 0x30
mov qword [rsp + 0x20], 8
call fcn.140011560
add rsp, 0x30
mov rcx, rax
mov rax, qword [rbp - 0x38]
mov qword [rax], rcx
jmp 0x1400204e8
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x140020764
mov rax, qword [rbp - 8]
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x18]
mov qword [rcx], rdx
mov qword [rbp - 0x48], rax
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x48]
mov qword [rbp - 0x50], rax
cmp rax, rcx
jge 0x140020752
mov rcx, qword [rbp - 0x28]
mov edx, 0x20
sub rsp, 0x20
call fcn.140006de0
mov rcx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x28]
add rsp, 0x20
mov rcx, qword [rcx]
add rcx, 8
shl rax, 5
add rcx, rax
sub rsp, 0x20
call fcn.140063c80
mov rax, qword [rbp - 0x10]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140020752
mov r9, qword [rbp - 0x50]
movabs rcx, 0xd3103939ce148ee8
movabs rax, 0xd3103939ce148ee9
xor rcx, rax
mov rax, r9
add rax, rcx
mov qword [rbp - 0x58], rax
mov rdx, r9
xor rdx, 0xffffffffffffffff
movabs rcx, 0xb6f03b5c859b913e
movabs r8, 0x795bab00704d04bd
xor rcx, r8
and rcx, rdx
mov r10, 0xffffffffffffffff
movabs rdx, 0xcfab905cf5d69583
xor r10, rdx
and r9, r10
movabs rdx, 0x365ab4038cb723be
movabs r8, 0xc9a54bfc7348dc41
xor rdx, r8
movabs r8, 0x4df42ff63a1f1735
movabs r11, 0xb20bd009c5e0e8ca
xor r8, r11
xor rdx, r8
movabs r8, 0xcfab905cf5d69583
and rdx, r8
movabs r8, 0xf4fd1f8782649586
movabs r11, 0xb02e0787d9b6a79
xor r8, r11
and r8, r10
or rcx, r9
or rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x140020757
mov eax, dword [0x1401dc018]
imul eax, dword [0x1401dc01c]
mov edx, 0xb2b43c75
xor edx, 0x4d4bc38a
mov ecx, eax
xor ecx, edx
and ecx, 0x54965f1e
mov edx, 0xffffffff
xor edx, 0x54965f1e
and eax, edx
sub eax, ecx
mov ecx, 0x16069be3
xor ecx, 0xe9f9641c
mov r11d, eax
xor r11d, ecx
and r11d, 0x15fe131e
mov ecx, 0xc10b01bd
xor ecx, 0xd4f512a3
mov edx, 0x612ea17a
xor edx, 0x9ed15e85
xor ecx, edx
and eax, ecx
or r11d, eax
mov eax, 0xeba6d9e3
xor eax, 0x1459261c
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x7375a292
mov edx, 0xffffffff
xor edx, 0x6c364ee9
mov eax, ecx
and eax, 0x6c364ee9
and r11d, edx
mov r10d, 0xcd158a53
xor r10d, 0xa123c4ba
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0x7375a292
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x6c364ee9
and ecx, edx
or eax, ecx
mov ecx, 0xb2fdd387
xor ecx, 0x30c193dd
cmp eax, ecx
jae 0x140020769
mov eax, dword [0x1401dc020]
mov edx, dword [0x1401dc024]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
imul eax, eax, 0x5877d9a3
mov ecx, 0x94b06e1f
xor ecx, 0x1511bf37
xor eax, ecx
xor eax, 0x7c0b7259
mov dword [rbp - 0x5c], eax
sub rsp, 0x20
call fcn.1400067fe
mov eax, dword [rbp - 0x5c]
add rsp, 0x20
cmp eax, 0x6044239f
jb 0x140020705
jmp 0x140020752
jmp 0x140020764
mov rax, qword [rbp - 0x58]
mov qword [rbp - 0x48], rax
jmp 0x1400204fb
mov rsp, rbp
pop rbp
ret
test eax, 0x93e9cbac
invalid