Function at 0x140024d00
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rcx
mov r8, qword [rcx]
movabs rcx, 0xf22d37b226703b
movabs rax, 0x66d47a3edab33ea1
xor rcx, rax
mov rax, r8
sub rax, rcx
add rax, 0xffffffffffffffff
movabs rcx, 0x6626570968954e9a
add rax, rcx
mov qword [rsp + 0x50], rax
mov rcx, rax
or rcx, rcx
movabs rdx, 0xe2be0efc436ae964
movabs r9, 0x1d41f103bc95169b
xor rdx, r9
xor rcx, rdx
mov rdx, r8
or rdx, rdx
movabs r9, 0xaa34a55c5dbe5e68
movabs r10, 0x55cb5aa3a241a197
xor r9, r10
xor rdx, r9
or rcx, rdx
movabs rdx, 0x4b2a84a9264b6a21
movabs r9, 0xb4d57b56d9b495de
xor rdx, r9
xor rcx, rdx
movabs r9, 0xef8ba6baf7e26eea
movabs rdx, 0x10745945081d9115
xor r9, rdx
mov rdx, rax
xor rdx, r9
movabs r9, 0x1408d28f2240d895
movabs r10, 0xebf72d70ddbf276a
xor r9, r10
xor r8, r9
and rdx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
movabs rdx, 0xe62734abf91d6392
movabs r8, 0xe62734abf91d6392
xor rdx, r8
cmp rcx, rdx
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x140024e31
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
add rcx, 8
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rax
jmp 0x140024e3b
call fcn.140007e9d
jmp 0x140025185
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x28], rax
mov eax, dword [0x1402512e8]
imul eax, dword [0x1402512ec]
mov ecx, 0xffffffff
xor ecx, 0x9f8a83c0
add eax, ecx
add eax, 1
mov edx, eax
xor edx, 0xffffffff
and edx, 0x5bb783e7
mov r8d, 0x3167b339
xor r8d, 0x6ad030de
mov ecx, 0x7ae8b986
xor ecx, 0x85174679
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x5bb783e7
or eax, 0x5bb783e7
imul eax, edx
add eax, ecx
mov ecx, 0x85bdd31b
xor ecx, 0x3bcaf0a0
xor eax, ecx
cmp eax, 0xfdbfe81c
jae 0x14002518a
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x40]
mov eax, dword [0x1402512f0]
mov r8d, 0x812f0d0c
xor r8d, 0xc5934e5
xor eax, r8d
mov r9d, dword [0x1402512f4]
xor r8d, r8d
sub r8d, r9d
add eax, r8d
mov r8d, 0xa6ff8a4d
xor r8d, 0x8839a7f
and eax, r8d
mov r8d, 0xb3eee1c
xor r8d, 0xedd44ddd
and r8d, eax
mov r9d, 0xe44b5371
xor r9d, 0x1bb4ac8e
xor r8d, r9d
add eax, 0xe6eaa3c1
add eax, 1
add eax, r8d
xor eax, 0xa9493c69
cmp rcx, rdx
setl cl
mov byte [rsp + 0x27], cl
cmp eax, 0x2d1368b1
je 0x140024eba
mov al, byte [rsp + 0x27]
test al, 1
jne 0x140025178
jmp 0x140024f50
mov eax, dword [0x1402512f8]
xor eax, 0xa9be005
mov edx, dword [0x1402512fc]
mov ecx, eax
and ecx, edx
mov r8d, 0x7c23e727
xor r8d, 0x7c23e725
imul ecx, r8d
xor eax, edx
add eax, ecx
mov ecx, 0x427a53a9
xor ecx, 0x85145b14
add eax, ecx
mov ecx, 0x8c999c49
xor ecx, 0x551788d4
add eax, ecx
mov ecx, eax
xor ecx, 0x921d7036
xor ecx, 0xffffffff
mov edx, 0xb957e1a8
xor edx, 0x2b4a919e
or eax, edx
and eax, ecx
mov ecx, 0xc97cdbee
xor ecx, 0x4afbfb2d
cmp eax, ecx
jbe 0x140025193
mov rcx, qword [rsp + 0x28]
mov eax, dword [0x140251300]
mov edx, dword [0x140251304]
add eax, 0xfb6051d2
add eax, edx
sub eax, 0xfb6051d2
mov r8d, 0xe416f9c0
xor r8d, 0xe09d08d9
mov edx, eax
and edx, r8d
shl edx, 1
xor eax, 0x48bf119
add eax, edx
mov edx, 0x90b38ff8
xor edx, 0x6b3ff08
add eax, edx
add eax, 0x83591053
cmp rcx, 0
setl cl
mov byte [rsp + 0x26], cl
cmp eax, 0xa08e726d
ja 0x140024fc1
mov al, byte [rsp + 0x26]
test al, 1
jne 0x140025105
jmp 0x140025033
mov eax, dword [0x140251308]
mov ecx, 0x2e7f4069
xor ecx, 0x9c41ecae
xor eax, ecx
imul eax, dword [0x14025130c]
mov ecx, 0xe6291426
xor edx, edx
div ecx
mov ecx, 0x7f4f6fcc
xor edx, edx
div ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x55b14180
mov ecx, 0xffffffff
xor ecx, 0x683bb428
or eax, edx
or ecx, 0x683bb428
xor eax, 0xffffffff
and eax, ecx
cmp eax, 0xbe9ea949
jae 0x14002519c
mov rcx, qword [rsp + 0x28]
mov eax, dword [0x140251310]
mov edx, dword [0x140251314]
mov r8d, 0x44836133
xor r8d, 0x2789c612
xor edx, r8d
or eax, edx
or eax, 0x32bad46a
mov r8d, 0x53f4bba0
xor r8d, 0x3032e043
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x48]
mov r8d, 0xb271d13b
xor r8d, 0xc901a1fb
sub eax, r8d
cmp rcx, qword [rdx]
setl cl
mov byte [rsp + 0x25], cl
cmp eax, 0x229cae3f
jbe 0x14002519c
mov al, byte [rsp + 0x25]
test al, 1
jne 0x140025112
jmp 0x140025105
mov rcx, rdx
call fcn.140013507
jmp 0x140025185
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rcx, qword [rcx]
add rcx, 8
shl rax, 5
add rcx, rax
call fcn.140024caf
mov rcx, qword [rsp + 0x28]
mov rax, rcx
and rax, 0xffffffffffffffff
mov rdx, rcx
or rdx, 0xffffffffffffffff
add rax, rdx
mov rdx, rax
xor rdx, rcx
cmp rdx, 0
setl dl
cmp rcx, 0
setne cl
and cl, dl
test cl, 1
mov qword [rsp + 0x38], rax
jne 0x14002516e
jmp 0x140024e3b
call fcn.140007e9d
jmp 0x140025185
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
mov qword [rax], rcx
add rsp, 0x58
ret
xchg byte ds:[rdi], dl
clc
jmp 0x140024eba
xor byte [rax + 0x1f], ch
out dx, eax
jmp 0x140024fc1
jmp 0x12beb8432