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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xf8
mov r15, r9
mov r14, r8
mov rbx, rdx
mov r13, rcx
mov qword [rbp - 0x61], rdx
xor r12d, r12d
mov rax, qword [rcx + 0x60]
sub rax, qword [rcx + 0x58]
sar rax, 6
movabs rdi, 0xcbf29ce484222325
movabs r9, 0x100000001b3
cmp r15, rax
jb 0x1400accb4
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x79], xmm1
xor r8d, r8d
lea rdx, [0x1400bbcb6]
lea rcx, [rsp + 0x50]
call fcn.140004240
nop
mov dword [rsp + 0x20], 2
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x28]
call fcn.1400038d0
nop
mov r12, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov qword [rsp + 0x48], r12
cmp dword [rsp + 0x20], 4
jg 0x1400acb47
mov rsi, qword [rsp + 0x38]
test rsi, rsi
je 0x1400aca9a
cmp qword [0x140137680], 0
je 0x1400aca95
lea rdx, [rsp + 0x28]
cmp qword [rsp + 0x40], 0x10
cmovae rdx, qword [rsp + 0x28]
mov r9, rdi
xor ecx, ecx
test rsi, rsi
je 0x1400aca75
movabs r8, 0x100000001b3
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r8
inc rcx
cmp rcx, rsi
jb 0x1400aca62
lea r8, [rsp + 0x28]
lea rdx, [rbp - 0x61]
lea rcx, [0x140137670]
call fcn.140016da0
cmp qword [rax + 8], 0
je 0x1400acb47
test rsi, rsi
jne 0x1400acad8
lea rdx, [rbp - 0x51]
lea rcx, [rsp + 0x20]
call fcn.1400b4880
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x1400acab7
mov rax, qword [rax]
mov rdx, rax
mov rcx, r12
call fcn.140004f80
mov rcx, rax
lea rdx, [0x1400bbc98]
call fcn.140003f20
nop
lea rcx, [rbp - 0x51]
jmp 0x1400acb41
lea rdx, [rbp - 0x31]
lea rcx, [rsp + 0x20]
call fcn.1400b4880
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x1400acaf5
mov rax, qword [rax]
mov rdx, rax
mov rcx, r12
call fcn.140004f80
lea rdx, [0x140101238]
mov rcx, rax
call fcn.140003f20
lea rdx, [rsp + 0x28]
cmp qword [rsp + 0x40], 0x10
cmovae rdx, qword [rsp + 0x28]
mov r8, qword [rsp + 0x38]
mov rcx, rax
call fcn.140004f80
mov rcx, rax
lea rdx, [0x1400bc2a0]
call fcn.140003f20
nop
lea rcx, [rbp - 0x31]
call fcn.140003b00
nop
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x1400acb66
lea rdx, str.Assertion__
mov rcx, qword [rsp + 0x48]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x1400acb85
lea rdx, str.index___subproperties.size__
mov rcx, qword [rsp + 0x48]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x1400acba4
lea rdx, str.__failed_at
mov rcx, qword [rsp + 0x48]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x1400acbc3
lea rdx, str.C:Userso2f4p0r9m0g4k2r1_source_reposl2mapconv2l2mapconv2unreal_srcProperty.cpp
mov rcx, qword [rsp + 0x48]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x1400acbe2
lea rdx, [0x1400bc210]
mov rcx, qword [rsp + 0x48]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x1400acc00
mov edx, 0xe
mov rcx, qword [rsp + 0x48]
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___int____ptr64]
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x1400acc1f
lea rdx, [0x1400bc2a0]
mov rcx, qword [rsp + 0x48]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x1400acc3e
lea rdx, str.Index_out_of_bounds
mov rcx, qword [rsp + 0x48]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x1400acc92
mov rsi, qword [rsp + 0x48]
xor r8d, r8d
lea rdx, [rbp - 0x11]
call fcn.1400b4b50
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x1400acc6c
mov rax, qword [rax]
mov rdx, rax
mov rcx, rsi
call fcn.140004f80
lea rdx, [0x140003e00]
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]
nop
lea rcx, [rbp - 0x11]
call fcn.140003b00
nop
lea rcx, [rsp + 0x28]
call fcn.140003b00
nop
lea rcx, [rsp + 0x50]
call fcn.140003b00
xor r12d, r12d
movabs r9, 0x100000001b3
shl r15, 6
add r15, qword [r13 + 0x58]
mov r8, qword [r14 + 0x10]
mov rdx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x1400acccd
mov rdx, qword [r14]
mov rcx, r12
test r8, r8
je 0x1400accf3
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
xor rdi, rax
imul rdi, r9
inc rcx
cmp rcx, r8
jb 0x1400acce0
mov r9, rdi
mov r8, r14
lea rdx, [rbp - 0x61]
mov rcx, r15
call fcn.140016da0
mov rdx, qword [rax + 8]
test rdx, rdx
jne 0x1400acd12
mov rdx, qword [r15 + 8]
cmp rdx, qword [r15 + 8]
jne 0x1400acdf5
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x79], xmm1
mov r8d, 6
lea rdx, str.Unreal
lea rcx, [rsp + 0x50]
call fcn.140004240
nop
lea r8, [rsp + 0x50]
mov edx, 3
lea rcx, [rsp + 0x20]
call fcn.1400b4710
mov rsi, rax
mov rcx, rax
call fcn.1400b4ac0
test al, al
je 0x1400acd77
lea rdx, str.Cant_find_property:
mov rcx, qword [rsi + 0x28]
call fcn.140003f20
mov rcx, rsi
call fcn.1400b4ac0
test al, al
je 0x1400acd9d
mov r8, qword [r14 + 0x10]
cmp qword [r14 + 0x18], 0x10
jb 0x1400acd91
mov r14, qword [r14]
mov rdx, r14
mov rcx, qword [rsi + 0x28]
call fcn.140004f80
mov rcx, rsi
call fcn.1400b4810
nop
lea rcx, [rsp + 0x28]
call fcn.140003b00
nop
lea rcx, [rsp + 0x50]
call fcn.140003b00
mov qword [rbx], r12
mov qword [rbx + 8], r12
xor eax, eax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], r12
mov qword [rbx + 0x20], r12
xorps xmm0, xmm0
movups xmmword [rbx + 0x28], xmm0
mov qword [rbx + 0x38], rax
mov qword [rbx + 0x40], r12
mov qword [rbx + 0x48], r12
mov qword [rbx + 0x50], r12
mov qword [rbx + 0x58], r12
mov qword [rbx + 0x60], r12
mov qword [rbx + 0x68], r12
jmp 0x1400ace01
add rdx, 0x30
mov rcx, rbx
call fcn.1400ace20
mov rax, rbx
add rsp, 0xf8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret