Function at 0x1400363a0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x40], rdx
mov rax, rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [rax]
mov qword [rsp + 0x50], rcx
mov rdx, rax
add rdx, 8
mov qword [rsp + 0x58], rdx
mov rax, qword [rax + 8]
mov qword [rsp + 0x60], rax
mov rdx, rcx
add rdx, 1
mov qword [rsp + 0x68], rdx
mov r8, rcx
xor r8, 0xffffffffffffffff
and r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and rcx, r9
or r8, rcx
movabs r9, 0x5d09d7916f7ce7a7
movabs rcx, 0xa2f6286e90831858
xor r9, rcx
mov rcx, rdx
xor rcx, r9
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov rdx, r8
xor rdx, 0xffffffffffffffff
movabs r9, 0x73694b3f54c415f5
movabs r10, 0x8c96b4c0ab3bea0a
xor r9, r10
xor r8, r9
and rdx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0xed317c6fda5efccf
movabs r9, 0x12ce839025a10330
xor r8, r9
xor rdx, r8
and rcx, rdx
mov qword [rsp + 0x70], rcx
cmp rax, 0
je 0x1400364b1
mov rax, qword [rsp + 0x70]
cmp rax, 0
jl 0x1400364a7
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
movabs rcx, 0xbfffffffffffffff
and rcx, qword [rax]
cmp rcx, rdx
mov qword [rsp + 0x38], rax
jl 0x1400364b1
jmp 0x140036511
call fcn.1400091c0
jmp 0x140036605
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
mov r8d, 1
mov r9d, 8
mov qword [rsp + 0x20], 8
call fcn.140014320
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x70]
mov qword [rdx], rax
movabs rdx, 0x546b414af906218b
movabs r8, 0x546b414af906218b
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x38], rax
jge 0x140036511
call fcn.1400091c0
jmp 0x140036605
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x30], rax
mov eax, dword [0x1401f2d98]
xor eax, dword [0x1401f2d9c]
mov r8d, 0xffffffff
xor r8d, 0x2303fc3
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x3d9b9b
xor r8d, 0xffc26464
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x2303fc3
or eax, 0x2303fc3
imul eax, edx
add eax, ecx
mov ecx, 0xa9589d80
xor ecx, 0x8f266124
xor eax, ecx
sub eax, 0x14875d16
mov ecx, 0x1ecc1bb9
xor ecx, 0x6fad4a5f
add eax, ecx
add eax, 0x14875d16
cmp eax, 0xdf17606d
jb 0x1400366a6
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x48]
mov r10, qword [rsp + 0x68]
mov eax, dword [str.__b_]
mov r11d, dword [0x1401f2da4]
xor r11d, 0xbc5941c7
or eax, r11d
xor r11d, r11d
sub r11d, eax
xor eax, eax
sub eax, 0x1aa48fb8
add r11d, eax
xor eax, eax
sub eax, r11d
or eax, 0x2d880996
mov r11d, 0x2ac1d101
xor r11d, 0xa557ad18
imul eax, r11d
mov qword [r9], r10
mov qword [rcx + rdx*8 + 8], r8
cmp eax, 0xb913a3d
jbe 0x140036592
jmp 0x140036605
mov eax, dword [0x1401f2da8]
xor eax, 0xe6097c9b
mov ecx, dword [0x1401f2dac]
xor ecx, 0xd69dc096
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xf641ec9d
add eax, ecx
mov ecx, 0xf84be48f
xor ecx, 0xf84be48e
add eax, ecx
add eax, 0xc5899103
mov ecx, 0x4ffe826
xor edx, edx
div ecx
cmp eax, 0x532906d6
jae 0x1400366af
mov eax, dword [0x1401f2db0]
or eax, dword [0x1401f2db4]
mov edx, eax
and edx, 0x3a281d49
mov ecx, 0x7d0e694d
xor ecx, 0x7d0e694f
imul ecx, edx
add eax, 0x3a281d49
sub eax, ecx
mov ecx, 0x6e4a546f
xor ecx, 0x6658f076
xor edx, edx
div ecx
sub eax, 0xb3b3fffe
mov ecx, 0xb8e126c7
xor ecx, 0x4a1c5889
cmp eax, ecx
je 0x140036651
mov al, 0xff
invalid
add rsp, 0x78
ret
invalid
je 0x1400366a3
or dl, al
jmp 0x140036592
xor ebx, ecx
std
jbe 0x14003669d
cdq
invalid