Function at 0x140011dc0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rcx
mov r8, qword [rcx]
mov qword [rsp + 0x50], r8
mov rax, rcx
add rax, 8
mov qword [rsp + 0x58], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x60], rax
xor ecx, ecx
mov edx, ecx
sub rdx, 1
mov rcx, r8
sub rcx, rdx
mov qword [rsp + 0x68], rcx
mov r9, r8
xor r9, 0xffffffffffffffff
movabs rdx, 0x1e516a0858ec9d14
movabs r10, 0xe1ae95f7a71362eb
xor rdx, r10
and rdx, r9
movabs r9, 0xae066c1b7a4b5305
movabs r10, 0x51f993e485b4acfa
xor r9, r10
movabs r10, 0x290dcd55c4617b54
movabs r11, 0xd6f232aa3b9e84ab
xor r10, r11
xor r9, r10
and r8, r9
or rdx, r8
and rcx, rdx
mov qword [rsp + 0x70], rcx
cmp rax, 0
je 0x140012035
mov ecx, dword [0x1402509f8]
xor ecx, 0x7fe99674
mov edx, dword [0x1402509fc]
xor edx, 0x898dce8
mov eax, ecx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
mov r8d, 0xfe52c5ec
xor r8d, 0x1ad3a13
xor ecx, r8d
mov r8d, 0x13a67505
xor r8d, 0xec598afa
xor edx, r8d
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0x15edf854
sub eax, 0x6ffc3a4f
mov ecx, 0xa48c97aa
xor ecx, 0xa4601e21
and eax, ecx
mov ecx, 0x8586074f
xor ecx, 0xb83718c6
cmp eax, ecx
je 0x1400121aa
mov rcx, qword [rsp + 0x70]
mov eax, dword [0x140250a00]
and eax, dword [0x140250a04]
sub eax, 0xce6cb613
mov r8d, 0x9300a6c
xor edx, edx
div r8d
mov r8d, 0xfdeda51
xor r8d, 0xf02125ae
mov edx, eax
xor edx, r8d
mov r8d, 0xcf593a04
xor r8d, 0x1e0121b8
and r8d, edx
mov r9d, 0xf3bde311
xor r9d, 0x22e5f8ad
mov edx, 0xcea112b8
xor edx, 0x315eed47
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r9d, 0xb8722df5
xor r9d, 0x692a3649
mov r8d, eax
and r8d, r9d
or eax, 0xd1581bbc
imul eax, r8d
add eax, edx
movabs rdx, 0xfd3b2168ee485792
movabs r8, 0xfd3b2168ee485792
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rsp + 0x3f], cl
cmp eax, 0x235d7d66
jb 0x140011ee3
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x14001202b
jmp 0x140011fa5
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov r8, qword [rax]
movabs r9, 0xbfffffffffffffff
mov rcx, r8
and rcx, r9
movabs r9, 0x7f887591a8db38c0
movabs r10, 0x80778a6e5724c73f
xor r9, r10
xor rcx, r9
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
movabs r10, 0xbfffffffffffffff
xor r9, r10
or r8, r9
movabs r9, 0xbadb13a5acd785
movabs r10, 0xff4524ec5a53287a
xor r9, r10
xor rcx, r9
xor r8, 0xffffffffffffffff
or rcx, r8
cmp rcx, rdx
mov qword [rsp + 0x30], rax
jl 0x140012035
jmp 0x140012168
call fcn.140007e9d
jmp 0x1400121a5
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
movabs r8, 0x8bb65cad2df44128
movabs rax, 0x8bb65cad2df44129
xor r8, rax
movabs r9, 0xcd82aa290845605c
movabs rax, 0xcd82aa2908456044
xor r9, rax
movabs rax, 0xadd7a5606ba546eb
movabs r10, 0xadd7a5606ba546e3
xor rax, r10
mov qword [rsp + 0x20], rax
call fcn.140010c40
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x70]
mov qword [rdx], rax
cmp rcx, 0
mov qword [rsp + 0x30], rax
jge 0x140012168
mov eax, dword [0x140250a08]
xor eax, 0x3d443e5d
mov ecx, dword [0x140250a0c]
xor ecx, 0x8cd26035
mov edx, 0x3981ff26
xor edx, 0xf347d6be
add eax, edx
sub eax, ecx
sub eax, 0xcac62998
and eax, 0x55224c04
sub eax, 0xb323bbfd
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x75140769
mov ecx, 0xffffffff
xor ecx, 0xbf0fe2bf
or eax, edx
or ecx, 0xbf0fe2bf
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x35a230d6
xor ecx, 0x290a5697
cmp eax, ecx
jb 0x1400121b3
mov eax, dword [0x140250a10]
add eax, dword [0x140250a14]
mov ecx, 0xde7717fe
xor edx, edx
div ecx
mov ecx, 0x45f1dd81
xor edx, edx
div ecx
imul eax, eax, 0x1e9c1db0
mov dword [rsp + 0x2c], eax
mov eax, 0x6c7db4ab
xor eax, 0x50676932
mov dword [rsp + 0x28], eax
call fcn.140007e9d
mov ecx, dword [rsp + 0x28]
mov eax, dword [rsp + 0x2c]
cmp eax, ecx
jae 0x1400121b3
jmp 0x1400121a5
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x48]
mov r9, qword [rsp + 0x68]
mov rax, qword [rsp + 0x30]
mov qword [r8], r9
add rax, 8
imul rdx, rdx, 0x18
add rax, rdx
mov rdx, qword [rcx]
mov qword [rax], rdx
mov rdx, qword [rcx + 8]
mov qword [rax + 8], rdx
mov rcx, qword [rcx + 0x10]
mov qword [rax + 0x10], rcx
add rsp, 0x78
ret
xor ah, byte [rax + 0x30e90d96]
std
invalid
invalid