Function at 0x1400aaf00
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xe0
mov rax, qword [0x140332240]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rsi, rcx
xor r15d, r15d
xor r8d, r8d
xor edx, edx
lea rcx, str.Properties
call fcn.140151870
cmp dword [rsi], 0xffffffff
je 0x1400ab690
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], rax
mov r8, rsi
lea rdx, [rbp - 0x29]
lea rcx, [0x140359100]
call fcn.1400a8220
nop
mov edi, r15d
mov rax, qword [rbp - 0x21]
mov rdx, qword [rbp - 0x29]
sub rax, rdx
sar rax, 5
movabs r13, 0xcbf29ce484222325
movabs r14, 0x100000001b3
test rax, rax
je 0x1400ab1a2
mov ebx, r15d
movabs r12, 0x7fffffffffffffff
nop
lea rcx, [rbx + rdx]
cmp qword [rcx + 0x18], 0xf
jbe 0x1400aafbe
mov rcx, qword [rcx]
call fcn.1401a4180
test al, al
je 0x1400aafdd
movsxd rdx, edi
shl rdx, 5
add rdx, qword [rbp - 0x29]
mov r8, rsi
mov rcx, rsi
call fcn.1400aeb30
mov rcx, qword [rbp - 0x29]
add rcx, rbx
cmp qword [rcx + 0x18], 0xf
jbe 0x1400aafee
mov rcx, qword [rcx]
mov edx, 0x101
call fcn.140159df0
test al, al
je 0x1400ab181
mov rcx, qword [rbp - 0x29]
add rcx, rbx
mov rdx, qword [rcx + 0x10]
mov rax, r12
sub rax, rdx
cmp rax, 7
jb 0x1400ab6c9
cmp qword [rcx + 0x18], 0xf
jbe 0x1400ab025
mov rcx, qword [rcx]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], 7
lea r9, str.Remove
lea rcx, [rbp + 7]
call fcn.1400191e0
nop
mov r8d, 1
lea rdx, [0x1402e53ec]
lea rcx, [rbp + 7]
call fcn.140019680
xorps xmm0, xmm0
movups xmmword [rbp - 0x59], xmm0
mov qword [rbp - 0x49], r15
mov qword [rbp - 0x41], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x59], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x49], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rbp - 0x59]
cmp qword [rbp - 0x41], 0xf
cmova rcx, qword [rbp - 0x59]
call fcn.140196e70
nop
lea rcx, [rbp - 0x59]
call fcn.140016e20
nop
lea rcx, [rbp + 7]
call fcn.140016e20
mov rcx, qword [rbp - 0x29]
add rcx, rbx
mov rax, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0xf
jbe 0x1400ab0c8
mov rcx, qword [rcx]
cmp rax, 8
jne 0x1400ab0f2
mov r8, rax
lea rdx, str.BaseInfo
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400ab0f2
lea rcx, str.Not_deletable_sorry_
call fcn.140196e70
jmp 0x1400ab17c
mov qword [rbp - 0x61], 0
lea rdx, [rbp - 0x61]
lea rcx, str.Delete_Component
call fcn.1401977c0
test al, al
je 0x1400ab17c
mov r8, qword [rbp - 0x29]
add r8, rbx
mov r10, qword [r8 + 0x10]
mov rdx, r8
cmp qword [r8 + 0x18], 0xf
jbe 0x1400ab126
mov rdx, qword [r8]
mov r9, r13
mov rcx, r15
test r10, r10
je 0x1400ab144
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r14
inc rcx
cmp rcx, r10
jb 0x1400ab131
lea rdx, [rbp - 0x39]
lea rcx, [0x1403591c0]
call fcn.140016850
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x1400ab17c
cmp rcx, qword [0x1403591c8]
je 0x1400ab17c
mov rcx, qword [rcx + 0x68]
test rcx, rcx
je 0x1400ab2d5
mov rax, qword [rcx]
mov rdx, rsi
call qword [rax + 0x10]
call fcn.140159d80
inc edi
add rbx, 0x20
mov rcx, qword [rbp - 0x21]
mov rdx, qword [rbp - 0x29]
sub rcx, rdx
sar rcx, 5
movsxd rax, edi
cmp rax, rcx
jb 0x1400aafb0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x11], xmm0
mov qword [rbp - 1], rax
lea rdx, [rbp - 0x11]
lea rcx, [0x140359100]
call fcn.140038e70
nop
mov r8b, 1
xor edx, edx
lea rcx, str.Add_Component
call fcn.1401a56b0
test al, al
je 0x1400ab39d
mov r12d, r15d
mov dword [rbp - 0x61], r15d
mov rax, qword [rbp - 9]
mov rdx, qword [rbp - 0x11]
sub rax, rdx
sar rax, 5
test rax, rax
je 0x1400ab398
mov r13, r15
nop dword [rax + rax]
lea rcx, [rdx + r13]
cmp qword [rcx + 0x18], 0xf
jbe 0x1400ab20e
mov rcx, qword [rcx]
xor r9d, r9d
call fcn.1401a6310
test al, al
je 0x1400ab372
mov rdi, qword [rbp - 0x11]
add rdi, r13
mov rbx, qword [rbp - 0x29]
mov r14, qword [rbp - 0x21]
cmp rbx, r14
je 0x1400ab2dc
mov r15, qword [rdi + 0x18]
mov r12, qword [rdi + 0x10]
nop
mov rdx, rdi
cmp r15, 0xf
jbe 0x1400ab24c
mov rdx, qword [rdi]
mov r8, qword [rbx + 0x10]
mov rcx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1400ab25d
mov rcx, qword [rbx]
cmp r8, r12
jne 0x1400ab26b
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400ab274
add rbx, 0x20
cmp rbx, r14
jne 0x1400ab240
xor r15d, r15d
mov r12d, dword [rbp - 0x61]
cmp rbx, r14
je 0x1400ab2dc
lea rdx, [0x1400159a0]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, rax
lea rdx, str.WARNING_ALREADY_EXISTS
call fcn.140031320
mov rdx, qword [rbp - 0x11]
add rdx, r13
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x1400ab2b8
mov rdx, qword [rdx]
mov rcx, rax
call fcn.1400161a0
lea rdx, [0x1400159a0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
jmp 0x1400ab372
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
nop
mov r8, qword [rdi + 0x10]
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1400ab2ed
mov rdx, qword [rdi]
movabs r9, 0xcbf29ce484222325
mov rcx, r15
test r8, r8
je 0x1400ab323
movabs r14, 0x100000001b3
nop dword [rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, r14
inc rcx
cmp rcx, r8
jb 0x1400ab310
mov r8, rdi
lea rdx, [rbp - 0x39]
lea rcx, [0x140359140]
call fcn.140016850
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x1400ab364
cmp rcx, qword [0x140359148]
je 0x1400ab364
mov rcx, qword [rcx + 0x68]
test rcx, rcx
je 0x1400ab6c2
mov rax, qword [rcx]
mov r8, rsi
lea rdx, [rbp + 7]
call qword [rax + 0x10]
jmp 0x1400ab372
call fcn.1401c51d0
mov qword [rbp + 7], rax
call fcn.1401c51d0
inc r12d
mov dword [rbp - 0x61], r12d
add r13, 0x20
mov rcx, qword [rbp - 9]
mov rdx, qword [rbp - 0x11]
sub rcx, rdx
sar rcx, 5
movsxd rax, r12d
cmp rax, rcx
jb 0x1400ab200
call fcn.1401a6260
mov r8b, 1
xor edx, edx
lea rcx, str.Add_Script
call fcn.1401a56b0
test al, al
je 0x1400ab509
mov r12, qword [0x140359220]
mov rbx, qword [r12]
cmp rbx, r12
je 0x1400ab504
nop word [rax + rax]
lea rdi, [rbx + 0x10]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1400ab3e1
mov rcx, qword [rdi]
xor r9d, r9d
call fcn.1401a6310
test al, al
je 0x1400ab4f5
call fcn.14002fe50
mov r14d, eax
mov rdx, rsi
lea rcx, [0x140359300]
call fcn.14002efc0
test al, al
je 0x1400ab44e
mov r8, rsi
lea rdx, [rbp - 0x39]
lea rcx, [0x140359300]
call fcn.140030a90
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x18]
test rdx, rdx
je 0x1400ab44e
mov rax, qword [rdx]
cmp dword [rax + r14*4], 0
je 0x1400ab44e
mov rdx, qword [rdx + 0x18]
mov rax, qword [rcx + 0x20]
lea rcx, [rax + rax*2]
mov rax, qword [rdx + r14*8]
lea rcx, [rax + rcx*8]
test rcx, rcx
jne 0x1400ab45d
mov rdx, rsi
lea rcx, [0x140359100]
call fcn.14002ffe0
call fcn.14002fe50
mov r14d, eax
mov rdx, rsi
lea rcx, [0x140359300]
call fcn.14002efc0
test al, al
je 0x1400ab4f5
mov r8, rsi
lea rdx, [rbp - 0x59]
lea rcx, [0x140359300]
call fcn.140030a90
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x18]
test rdx, rdx
je 0x1400ab4f5
mov rax, qword [rdx]
cmp dword [rax + r14*4], 0
je 0x1400ab4f5
mov rdx, qword [rdx + 0x18]
mov rax, qword [rcx + 0x20]
lea rcx, [rax + rax*2]
mov rax, qword [rdx + r14*8]
lea rdx, [rax + rcx*8]
test rdx, rdx
je 0x1400ab4f5
xorps xmm0, xmm0
movups xmmword [rbp + 7], xmm0
mov qword [rbp + 0x17], r15
mov qword [rbp + 0x1f], r15
mov r8, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x1400ab4d7
mov rdi, qword [rdi]
mov rdx, rdi
lea rcx, [rbp + 7]
call fcn.140016990
lea r8, [rbp + 7]
mov edx, dword [rsi]
lea rcx, [0x140359100]
call fcn.14002fd80
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r12
jne 0x1400ab3d0
call fcn.1401a6260
mov r8b, 1
xor edx, edx
lea rcx, str.Physics_Shortcuts
call fcn.1401a56b0
test al, al
je 0x1400ab67d
call fcn.14002eaf0
mov ebx, eax
mov rdx, rsi
lea rcx, [0x140359300]
call fcn.14002efc0
test al, al
je 0x1400ab57d
mov r8, rsi
lea rdx, [rbp - 0x59]
lea rcx, [0x140359300]
call fcn.140030a90
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x18]
test rdx, rdx
je 0x1400ab57d
mov rax, qword [rdx]
cmp dword [rax + rbx*4], 0
je 0x1400ab57d
mov rdx, qword [rdx + 0x18]
mov rax, qword [rcx + 0x20]
lea rcx, [rax + rax*4]
mov rax, qword [rdx + rbx*8]
lea r15, [rax + rcx*4]
test r15, r15
jne 0x1400ab58e
lea rcx, str.Requires_Transform_component
call fcn.140196e70
call fcn.140154dd0
xor r9d, r9d
lea rcx, str.Static_Object
call fcn.1401a6310
test al, al
je 0x1400ab5ad
test r15, r15
je 0x1400ab5ad
mov edx, dword [rsi]
call fcn.1400ab6d0
xor r9d, r9d
lea rcx, str.Dynamic_Object
call fcn.1401a6310
test al, al
je 0x1400ab5cc
test r15, r15
je 0x1400ab5cc
mov edx, dword [rsi]
call fcn.1400ab9b0
call fcn.14002eaf0
mov ebx, eax
mov rdx, rsi
lea rcx, [0x140359300]
call fcn.14002efc0
test al, al
je 0x1400ab627
mov r8, rsi
lea rdx, [rbp - 0x59]
lea rcx, [0x140359300]
call fcn.140030a90
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x18]
test rdx, rdx
je 0x1400ab627
mov rax, qword [rdx]
cmp dword [rax + rbx*4], 0
je 0x1400ab627
mov rdx, qword [rdx + 0x18]
mov rax, qword [rcx + 0x20]
lea rcx, [rax + rax*4]
mov rax, qword [rdx + rbx*8]
lea rcx, [rax + rcx*4]
test rcx, rcx
jne 0x1400ab677
mov rdx, qword [0x140358d08]
dec word [rdx + 0x5d88]
mov eax, dword [rdx + 0x4898]
shr eax, 2
test al, 1
movsxd rcx, dword [rdx + 0x49c8]
lea eax, [rcx - 1]
mov dword [rdx + 0x49c8], eax
mov rax, qword [rdx + 0x49d0]
mov r8d, dword [rax + rcx*4 - 8]
mov dword [rdx + 0x4898], r8d
je 0x1400ab677
test r8b, 4
jne 0x1400ab677
mov eax, dword [rdx + 0x5d84]
mov dword [rdx + 0x38d8], eax
call fcn.1401a6260
nop
lea rcx, [rbp - 0x11]
call fcn.14002aa00
nop
lea rcx, [rbp - 0x29]
call fcn.14002aa00
call fcn.1401543f0
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.14026cac0
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
nop
call fcn.140016b20
int3