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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xe0
movsxd rbx, r8d
mov rsi, rdx
mov r14, rcx
test r8d, r8d
jns 0x14009cdf5
mov rcx, qword [rcx + 0xd8]
sub rcx, qword [r14 + 0xd0]
movabs rax, 0x4924924924924925
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, ebx
neg eax
cdqe
cmp rax, rdx
jbe 0x14009cdd9
xorps xmm0, xmm0
movups xmmword [rbp - 0x59], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x49], xmm1
mov r8d, 6
lea rdx, str.Unreal
lea rcx, [rbp - 0x59]
call fcn.140004240
nop
mov dword [rsp + 0x20], 2
lea rdx, [rbp - 0x59]
lea rcx, [rsp + 0x28]
call fcn.1400038d0
nop
mov r15, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov qword [rbp - 0x61], r15
cmp dword [rsp + 0x20], 4
jg 0x14009cc83
mov rdi, qword [rbp - 0x71]
test rdi, rdi
je 0x14009cbd8
cmp qword [0x140137680], 0
je 0x14009cbd3
lea rdx, [rsp + 0x28]
cmp qword [rbp - 0x69], 0x10
cmovae rdx, qword [rsp + 0x28]
xor ecx, ecx
movabs r9, 0xcbf29ce484222325
test rdi, rdi
je 0x14009cbb3
movabs r8, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r8
inc rcx
cmp rcx, rdi
jb 0x14009cba0
lea r8, [rsp + 0x28]
lea rdx, [rbp - 0x39]
lea rcx, [0x140137670]
call fcn.140016da0
cmp qword [rax + 8], 0
je 0x14009cc83
test rdi, rdi
jne 0x14009cc16
lea rdx, [rbp - 0x29]
lea rcx, [rsp + 0x20]
call fcn.1400b4880
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x14009cbf5
mov rax, qword [rax]
mov rdx, rax
mov rcx, r15
call fcn.140004f80
mov rcx, rax
lea rdx, [0x1400bbc98]
call fcn.140003f20
nop
lea rcx, [rbp - 0x29]
jmp 0x14009cc7d
lea rdx, [rbp - 9]
lea rcx, [rsp + 0x20]
call fcn.1400b4880
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x14009cc33
mov rax, qword [rax]
mov rdx, rax
mov rcx, r15
call fcn.140004f80
lea rdx, [0x140101238]
mov rcx, rax
call fcn.140003f20
lea rdx, [rsp + 0x28]
cmp qword [rbp - 0x69], 0x10
cmovae rdx, qword [rsp + 0x28]
mov r8, qword [rbp - 0x71]
mov rcx, rax
call fcn.140004f80
mov rcx, rax
lea rdx, [0x1400bc2a0]
call fcn.140003f20
nop
lea rcx, [rbp - 9]
call fcn.140003b00
nop
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x14009cca1
lea rdx, str.Assertion__
mov rcx, qword [rbp - 0x61]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x14009ccbf
lea rdx, str.static_cast_std::size_t___index____import_map.size__
mov rcx, qword [rbp - 0x61]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x14009ccdd
lea rdx, str.__failed_at
mov rcx, qword [rbp - 0x61]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x14009ccfb
lea rdx, str.C:Userso2f4p0r9m0g4k2r1_source_reposl2mapconv2l2mapconv2unreal_srcArchive.cpp
mov rcx, qword [rbp - 0x61]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x14009cd19
lea rdx, [0x1400bc210]
mov rcx, qword [rbp - 0x61]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x14009cd36
mov edx, 0x29
mov rcx, qword [rbp - 0x61]
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 0x14009cd54
lea rdx, [0x1400bc2a0]
mov rcx, qword [rbp - 0x61]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x14009cd72
lea rdx, str.Index_out_of_import_map_bounds
mov rcx, qword [rbp - 0x61]
call fcn.140003f20
lea rcx, [rsp + 0x20]
call fcn.1400b4ac0
test al, al
je 0x14009cdc5
mov rdi, qword [rbp - 0x61]
xor r8d, r8d
lea rdx, [rbp + 0x17]
call fcn.1400b4b50
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x14009cd9f
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
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 + 0x17]
call fcn.140003b00
nop
lea rcx, [rsp + 0x28]
call fcn.140003b00
nop
lea rcx, [rbp - 0x59]
call fcn.140003b00
not ebx
mov ecx, ebx
imul rdx, rcx, 0x38
mov rcx, qword [r14 + 0xd0]
movups xmm0, xmmword [rdx + rcx + 0x28]
movups xmmword [rsi], xmm0
jmp 0x14009cfd9
jle 0x14009cf7d
mov rcx, qword [rcx + 0xf0]
sub rcx, qword [r14 + 0xe8]
movabs rax, 0x2e8ba2e8ba2e8ba3
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov r15, rbx
cmp rbx, rdx
jbe 0x14009cf68
xorps xmm0, xmm0
movups xmmword [rbp - 0x59], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x49], xmm1
mov r8d, 6
lea rdx, str.Unreal
lea rcx, [rbp - 0x59]
call fcn.140004240
nop
lea r8, [rbp - 0x59]
mov edx, 2
lea rcx, [rsp + 0x20]
call fcn.1400b4710
mov rdi, rax
mov rcx, rax
call fcn.1400b4ac0
test al, al
je 0x14009ce88
lea rdx, str.Assertion__
mov rcx, qword [rdi + 0x28]
call fcn.140003f20
mov rcx, rdi
call fcn.1400b4ac0
test al, al
je 0x14009cea4
lea rdx, str.static_cast_std::size_t__index____export_map.size__
mov rcx, qword [rdi + 0x28]
call fcn.140003f20
mov rcx, rdi
call fcn.1400b4ac0
test al, al
je 0x14009cec0
lea rdx, str.__failed_at
mov rcx, qword [rdi + 0x28]
call fcn.140003f20
mov rcx, rdi
call fcn.1400b4ac0
test al, al
je 0x14009cedc
lea rdx, str.C:Userso2f4p0r9m0g4k2r1_source_reposl2mapconv2l2mapconv2unreal_srcArchive.cpp
mov rcx, qword [rdi + 0x28]
call fcn.140003f20
mov rcx, rdi
call fcn.1400b4ac0
test al, al
je 0x14009cef8
lea rdx, [0x1400bc210]
mov rcx, qword [rdi + 0x28]
call fcn.140003f20
mov rcx, rdi
call fcn.1400b4ac0
test al, al
je 0x14009cf13
mov edx, 0x2f
mov rcx, qword [rdi + 0x28]
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]
mov rcx, rdi
call fcn.1400b4ac0
test al, al
je 0x14009cf2f
lea rdx, [0x1400bc2a0]
mov rcx, qword [rdi + 0x28]
call fcn.140003f20
mov rcx, rdi
call fcn.1400b4ac0
test al, al
je 0x14009cf4b
lea rdx, str.Index_out_of_export_map_bounds
mov rcx, qword [rdi + 0x28]
call fcn.140003f20
mov rcx, rdi
call fcn.1400b4810
nop
lea rcx, [rsp + 0x28]
call fcn.140003b00
nop
lea rcx, [rbp - 0x59]
call fcn.140003b00
imul rcx, r15, 0x58
mov rax, qword [r14 + 0xe8]
movups xmm0, xmmword [rcx + rax - 0x30]
movups xmmword [rsi], xmm0
jmp 0x14009cfd9
xorps xmm0, xmm0
movups xmmword [rbp - 0x59], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x49], xmm1
mov r8d, 4
lea rdx, str.None
lea rcx, [rbp - 0x59]
call fcn.140004240
nop
lea r8, [rbp - 0x59]
lea rdx, [rbp - 0x39]
mov rcx, r14
call fcn.14009da50
mov rax, qword [rbp - 0x39]
lea rdx, [rax + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14009cfc5
mov rdx, qword [rdx]
mov rcx, qword [rax + 0x20]
mov qword [rsi], rdx
mov qword [rsi + 8], rcx
lea rcx, [rbp - 0x59]
call fcn.140003b00
mov rax, rsi
mov rbx, qword [rsp + 0x128]
add rsp, 0xe0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret