Function at 0x14002f420
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rcx
mov r8, qword [rcx]
mov rcx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
xor eax, eax
sub rax, 1
sub rcx, rax
mov rax, r8
sub rax, rcx
mov qword [rsp + 0x50], rax
mov rcx, rax
xor rcx, 0xffffffffffffffff
mov rdx, rax
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov rdx, r8
or rdx, rdx
xor rdx, 0xffffffffffffffff
or rcx, rdx
movabs rdx, 0xa5c084e2cf12b7d2
movabs r9, 0x5a3f7b1d30ed482d
xor rdx, r9
xor rcx, rdx
mov rdx, rax
or rdx, r8
movabs r8, 0x7292fc032d2980ba
movabs r9, 0x8d6d03fcd2d67f45
xor r8, r9
xor rdx, r8
or rcx, rdx
movabs rdx, 0xc50e818b34e54e4c
movabs r8, 0x3af17e74cb1ab1b3
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x9d06a6dc5a2e9f7c
movabs r8, 0x9d06a6dc5a2e9f7c
xor rdx, r8
cmp rcx, rdx
setl dl
cmp rax, 0xffffffffffffffff
setg al
mov cl, al
xor cl, dl
xor cl, 0xff
or al, dl
and al, cl
test al, 1
jne 0x14002f519
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
add rcx, 8
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
jmp 0x14002f667
mov eax, dword [0x1402a93e8]
sub eax, dword [0x1402a93ec]
mov ecx, 0x1bc42969
xor ecx, 0xe43bd696
mov edx, eax
xor edx, ecx
and edx, 0xcb924d04
mov r8d, 0xd11247a2
xor r8d, 0x1a800aa6
mov ecx, 0xa0977f94
xor ecx, 0x5f68806b
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xcb924d04
or eax, 0xcb924d04
imul eax, edx
add eax, ecx
sub eax, 0xb0b6f0db
and eax, eax
mov ecx, 0x1a186388
xor ecx, 0xe5e79c77
xor eax, ecx
mov ecx, 0xe48cfe7c
xor ecx, 0x9072858c
mov edx, 0xd96ec62b
xor edx, 0x269139d4
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x74fe7bf0
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x9fdc46ee
xor ecx, 0x4ec57997
cmp eax, ecx
jbe 0x14002f835
mov ecx, dword [0x1402a93f0]
mov r8d, dword [0x1402a93f4]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
mov r9d, 0x32c81c0d
xor r9d, 0xcd37e3f2
xor eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, 0xc215b0db
xor eax, 0xd7568660
imul ecx, eax
and ecx, 0x6cd45947
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7a8e1ad3
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x7a8e1ad3
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov dword [rsp + 0x2c], eax
mov eax, 0x7280ff50
xor eax, 0x4d18792b
mov dword [rsp + 0x28], eax
call fcn.14000ee80
mov ecx, dword [rsp + 0x28]
mov eax, dword [rsp + 0x2c]
cmp eax, ecx
je 0x14002f835
jmp 0x14002f766
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x20], rax
cmp rax, rcx
jl 0x14002f759
mov rax, qword [rsp + 0x20]
movabs rcx, 0xbc45c719d73aeb4c
movabs rdx, 0xbc45c719d73aeb4c
xor rcx, rdx
cmp rax, rcx
jl 0x14002f6b7
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x48]
cmp rax, qword [rcx]
jl 0x14002f6c4
mov rcx, rdx
call fcn.140025e55
jmp 0x14002f766
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 5
add rcx, rax
call fcn.14002f3dd
mov rcx, qword [rsp + 0x20]
xor eax, eax
mov edx, eax
sub rdx, rcx
xor eax, eax
sub rax, 0xffffffffffffffff
add rdx, rax
movabs rax, 0x6fdbedc4c55638eb
movabs r8, 0x6fdbedc4c55638eb
xor rax, r8
sub rax, rdx
mov rdx, rax
xor rdx, rcx
cmp rdx, 0
setl dl
movabs r8, 0xb37a5dbc5a84948d
movabs r9, 0xb37a5dbc5a84948d
xor r8, r9
cmp rcx, r8
setne cl
and cl, dl
test cl, 1
mov qword [rsp + 0x38], rax
jne 0x14002f74f
jmp 0x14002f667
call fcn.14000ee80
jmp 0x14002f766
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
mov qword [rax], rcx
mov ecx, dword [0x1402a93f8]
xor ecx, 0x4e342e1b
and ecx, dword [0x1402a93fc]
mov edx, 0x3cf8e300
xor edx, 0x13b30bb6
mov eax, ecx
and eax, edx
shl eax, 1
mov edx, 0x897765f8
xor edx, 0xa63c8d4e
xor ecx, edx
add ecx, eax
or ecx, 0xf9ffa9c5
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x2cdbc425
or eax, edx
mov edx, 0xffffffff
xor edx, 0x2cdbc425
mov r8d, 0xffffffff
xor r8d, 0x2cdbc425
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x7b38144e
xor edx, 0x84c7ebb1
xor ecx, edx
or eax, ecx
cmp eax, 0xd10e01c4
jb 0x14002f83e
mov eax, dword [0x1402a9400]
mov ecx, dword [0x1402a9404]
mov edx, 0x1a84b06
xor edx, 0x94403f55
xor ecx, edx
and eax, ecx
sub eax, 0xd87fe37b
mov ecx, 0xa421891a
xor ecx, 0xa74adf79
or eax, ecx
add eax, 0x799d7313
cmp eax, 0x9e9964d6
jbe 0x14002f7f3
add rsp, 0x58
ret
mov esp, 0xe9fd64d9
test ebp, edi
invalid
jb 0xececc848
invalid