Function at 0x140023f20
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], rcx
mov rdx, qword [rcx]
movabs rcx, 0xc953336b38fd08d9
movabs rax, 0xce21067af20f9140
xor rcx, rax
mov rax, rdx
sub rax, rcx
add rax, 0xffffffffffffffff
movabs rcx, 0x7723511caf29999
add rax, rcx
mov qword [rsp + 0x60], rax
mov rcx, rax
xor rcx, rdx
movabs rdx, 0xcce2eb743f2e1fec
movabs r8, 0xcce2eb743f2e1fec
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 0x140023fbe
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
add rcx, 8
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], rax
jmp 0x14002405c
mov eax, dword [0x1401dc1c8]
mov ecx, dword [0x1401dc1cc]
mov edx, 0x5a2f3519
xor edx, 0xe2ccc601
xor ecx, edx
or eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xe8cb5d53
add eax, ecx
mov ecx, 0x2eaf5a8
xor ecx, 0x79ad77d6
sub eax, ecx
mov ecx, 0x187ea778
xor ecx, 0x7a2cf8f6
imul eax, ecx
cmp eax, 0x46ec6b34
je 0x140024434
mov eax, dword [0x1401dc1d0]
xor edx, edx
div dword [0x1401dc1d4]
or eax, 0xb3d2c30
xor ecx, ecx
sub ecx, 0xc7593709
add eax, ecx
add eax, 0x80fbdb6c
mov dword [rsp + 0x3c], eax
mov eax, 0x45fe93d0
xor eax, 0xff30ee0f
mov dword [rsp + 0x38], eax
call fcn.1400067fe
mov ecx, dword [rsp + 0x38]
mov eax, dword [rsp + 0x3c]
cmp eax, ecx
jb 0x14002400e
jmp 0x14002442f
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
cmp rax, rcx
jl 0x1400242b0
mov ecx, dword [0x1401dc1d8]
sub ecx, dword [0x1401dc1dc]
mov eax, ecx
and eax, 0x40ca518d
xor ecx, 0x40ca518d
or eax, ecx
mov ecx, 0x1c11eb09
xor ecx, 0x87d6dcee
sub eax, ecx
or eax, eax
xor eax, 0xffffffff
mov ecx, 0x638579bc
or ecx, 0x638579bc
mov edx, 0x960a2131
xor edx, 0x69f5dece
xor ecx, edx
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0x7ff5e3e9
jae 0x14002443d
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x1401dc1e0]
mov r8d, dword [0x1401dc1e4]
xor r8d, 0xa7eef674
mov r9d, 0x58d66e8
xor r9d, 0x58d66e9
mov edx, eax
add edx, r9d
xor eax, 0xffffffff
or eax, r8d
add eax, edx
mov edx, eax
and edx, edx
xor edx, 0xffffffff
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xaa97b369
or edx, r8d
mov r8d, 0xffffffff
xor r8d, 0xaa97b369
mov r9d, 0xffffffff
xor r9d, 0xaa97b369
or r8d, r9d
and eax, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
mov r8d, 0x3bf3aaf
xor r8d, 0xfc40c550
xor eax, r8d
or edx, eax
mov r8d, 0x85a5ab40
xor r8d, 0xac47b0c1
mov eax, edx
or eax, r8d
mov r8d, 0x880e72ac
xor r8d, 0x77f18d53
xor eax, r8d
or edx, 0x29e21b81
mov r8d, 0x9da9ddc5
xor r8d, 0x6256223a
xor edx, r8d
mov r8d, 0x4f3d90eb
xor r8d, 0xb0c26f14
xor eax, r8d
xor edx, 0xffffffff
and eax, edx
xor eax, 0xae5a6e84
cmp rcx, 0
setl cl
mov byte [rsp + 0x2f], cl
cmp eax, 0x91a9553b
jae 0x1400240c9
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x1400241da
jmp 0x1400241c7
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x58]
cmp rax, qword [rcx]
jl 0x1400241e7
mov rcx, rdx
call fcn.1400137e9
jmp 0x14002442f
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx]
add rcx, 8
imul rax, rax, 0x38
add rcx, rax
call fcn.140023eb9
mov rcx, qword [rsp + 0x30]
movabs rdx, 0x6bd8e33f7142a46
movabs rax, 0xf94271cc08ebd5b9
xor rdx, rax
movabs rax, 0xeae81cdfec9ee20a
movabs r8, 0x1517e32013611df5
xor rax, r8
xor rdx, rax
xor eax, eax
sub rax, 1
sub rdx, rax
mov rax, rcx
sub rax, rdx
mov r8, rax
xor r8, 0xffffffffffffffff
mov rdx, rcx
and rdx, r8
mov r9, rcx
xor r9, 0xffffffffffffffff
mov r8, rax
and r8, r9
or rdx, r8
cmp rdx, 0
setl r8b
cmp rcx, 0
setne cl
or cl, cl
xor cl, 0xff
mov r9b, 1
xor r9b, 0
mov dl, r8b
xor dl, r9b
xor r8b, 0xff
and dl, r8b
or cl, dl
xor cl, 0xff
test cl, 1
mov qword [rsp + 0x48], rax
jne 0x1400242a6
jmp 0x14002405c
call fcn.1400067fe
jmp 0x14002442f
mov r11d, dword [0x1401dc1e8]
mov eax, 0x83d0f5f7
xor eax, 0xe9f61545
xor r11d, eax
imul r11d, dword [0x1401dc1ec]
mov eax, 0xdbbe7f04
xor eax, 0x244180fb
mov ecx, r11d
xor ecx, eax
mov edx, 0xffffffff
xor edx, 0xbb4b97d8
mov r8d, 0xffffffff
xor r8d, 0xf6397658
mov eax, ecx
and eax, 0xf6397658
and r11d, r8d
mov r10d, 0x8c3668b4
xor r10d, 0x7a0f1eec
mov r9d, edx
and r9d, r10d
mov r10d, r8d
and r10d, 0xbb4b97d8
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0xc0215c7d
xor edx, 0x36182a25
or edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0x84d3ac70
xor ecx, 0x88a82f1b
and eax, ecx
mov ecx, 0xda445d16
xor ecx, 0xfd1be571
add eax, ecx
cmp eax, 0xfbffbf
je 0x140024446
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
mov eax, dword [0x1401dc1f0]
mov r9d, dword [0x1401dc1f4]
mov r8d, r9d
and r8d, eax
mov r10d, 0x1fc069de
xor r10d, 0xe03f9621
xor r8d, r10d
add eax, r9d
add eax, 1
add eax, r8d
mov r8d, 0x9995ddaf
xor r8d, 0x6649e2f
xor eax, r8d
mov r8d, 0xe769334e
xor r8d, 0x1896ccb1
mov r9d, eax
xor r9d, r8d
and r9d, 0xf9f580bc
mov r10d, 0xffffffff
xor r10d, 0xf9f580bc
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0xf9f580bc
or eax, 0xf9f580bc
imul eax, r9d
add eax, r8d
mov r8d, eax
xor r8d, 0xd77d4f22
mov r9d, 0xaa685441
xor r9d, 0x7d151b63
mov r10d, 0x8edb2c47
xor r10d, 0x7124d3b8
xor r9d, r10d
and eax, r9d
shl eax, 1
sub eax, r8d
mov qword [rcx], rdx
cmp eax, 0xdd23c18b
je 0x140024446
jmp 0x14002442f
add rsp, 0x68
ret
movabs al, byte [0xfffffbd1e995fd57]
cmp byte [rbp - 0x7c16ebc3], 0xfc
invalid
xor esp, dword [rax + 0x10e9ccd2]
invalid