Function at 0x1800284f0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xa0]
sub rsp, 0x1a0
mov rax, qword [0x1800641c0]
xor rax, rsp
mov qword [rbp + 0x90], rax
mov byte [rsp + 0x40], r9b
mov qword [rbp + 0x70], r8
mov qword [rsp + 0x60], rdx
mov rdi, rcx
xor ecx, ecx
mov dword [rsp + 0x48], ecx
mov rbx, qword [r8]
mov r14, rbx
shr r14, 0x38
mov r15, rbx
shr r15, 0x30
mov r12, rbx
shr r12, 0x28
mov r13, rbx
shr r13, 0x20
mov rax, rbx
shr rax, 0x18
mov qword [rsp + 0x58], rax
mov rax, rbx
shr rax, 0x10
mov qword [rsp + 0x50], rax
mov rax, rbx
shr rax, 8
mov qword [rsp + 0x48], rax
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x18]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
xor esi, esi
cmp eax, 0xc000
je 0x1800287ba
cmp eax, 0x20000
je 0x1800287ba
movzx ecx, bl
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs rdx, 0x100000001b3
imul rcx, rdx
movzx eax, byte [rsp + 0x48]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rsp + 0x50]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rsp + 0x58]
xor rcx, rax
imul rcx, rdx
movzx eax, r13b
xor rcx, rax
imul rcx, rdx
movzx eax, r12b
xor rcx, rax
imul rcx, rdx
movzx eax, r15b
xor rcx, rax
imul rcx, rdx
xor rcx, r14
imul rcx, rdx
mov rdx, qword [rsp + 0x60]
mov r8, qword [rdx + 0x70]
and r8, rcx
add r8, r8
mov rcx, qword [rdx + 0x58]
mov rax, qword [rcx + r8*8 + 8]
mov rdx, qword [rdx + 0x48]
cmp rax, rdx
je 0x180028651
mov rcx, qword [rcx + r8*8]
cmp rbx, qword [rax + 0x10]
je 0x180028653
nop dword [rax]
cmp rax, rcx
je 0x180028651
mov rax, qword [rax + 8]
cmp rbx, qword [rax + 0x10]
jne 0x180028640
jmp 0x180028653
xor eax, eax
test rax, rax
cmove rax, rdx
cmp rax, rdx
je 0x180028668
mov rbx, qword [rax + 0x18]
jmp 0x180028878
lea rax, [0x180059de8]
mov qword [rsp + 0x70], rax
lea rax, [0x180059df0]
mov qword [rbp - 0x80], rax
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
mov dword [rsp + 0x48], 2
xor r8d, r8d
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x70]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_iostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64____ptr64]
nop
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea rbx, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rsp + rcx + 0x70], rbx
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rsp + rcx + 0x6c], edx
lea rcx, [rbp - 0x78]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp - 0x78], rax
xor ecx, ecx
mov qword [rbp - 0x10], rcx
mov dword [rbp - 8], ecx
lea rdx, str.mods::shader::PushShaderInjections_did_not_find_modded_pipeline_layout
lea rcx, [rbp - 0x80]
call fcn.180005fe0
lea rdx, str.__pipeline:
lea rcx, [rbp - 0x80]
call fcn.180005fe0
mov rdx, qword [rbp + 0x70]
mov rdx, qword [rdx]
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___void_const____ptr64____ptr64]
lea rdx, [0x180059e30]
lea rcx, [rbp - 0x80]
call fcn.180005fe0
lea rdx, [rbp + 0x70]
lea rcx, [rsp + 0x70]
call fcn.18002e890
nop
cmp qword [rax + 0x18], 0xf
jbe 0x180028744
mov rax, qword [rax]
mov rdx, rax
mov ecx, 2
call fcn.18002dfa0
nop
mov rdx, qword [rbp + 0x88]
cmp rdx, 0xf
jbe 0x180028794
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18002878e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18002878e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18003019c
nop
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x70], rbx
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rsp + rcx + 0x6c], edx
jmp 0x180028a5b
movzx ecx, bl
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs rdx, 0x100000001b3
imul rcx, rdx
movzx eax, byte [rsp + 0x48]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rsp + 0x50]
xor rcx, rax
imul rcx, rdx
movzx eax, byte [rsp + 0x58]
xor rcx, rax
imul rcx, rdx
movzx eax, r13b
xor rcx, rax
imul rcx, rdx
movzx eax, r12b
xor rcx, rax
imul rcx, rdx
movzx eax, r15b
xor rcx, rax
imul rcx, rdx
xor rcx, r14
imul rcx, rdx
mov r8, qword [rsp + 0x60]
mov rdx, qword [r8 + 0x30]
and rdx, rcx
add rdx, rdx
mov rcx, qword [r8 + 0x18]
mov rax, qword [rcx + rdx*8 + 8]
mov r9, qword [r8 + 8]
cmp rax, r9
je 0x180028861
mov rcx, qword [rcx + rdx*8]
cmp rbx, qword [rax + 0x10]
je 0x180028863
nop
cmp rax, rcx
je 0x180028861
mov rax, qword [rax + 8]
cmp rbx, qword [rax + 0x10]
jne 0x180028850
jmp 0x180028863
xor eax, eax
test rax, rax
je 0x18002890e
cmp rax, r9
je 0x18002890e
mov esi, dword [rax + 0x18]
lea r14, [0x180064758]
cmp qword [0x180064890], 0
je 0x1800288ac
mov rcx, r14
call sub.KERNEL32.dll_AcquireSRWLockExclusive
movss xmm0, dword [rbp + 0x100]
mov rax, qword [0x180064890]
movss dword [rax], xmm0
mov rcx, r14
call sub.KERNEL32.dll_ReleaseSRWLockExclusive
mov qword [rbp + 0x70], r14
mov byte [rbp + 0x78], 1
mov rcx, r14
call sub.KERNEL32.dll_AcquireSRWLockShared
nop
mov rax, qword [rdi]
mov r10, qword [rax + 0x60]
mov edx, 0xdf
mov eax, 0x20
cmp byte [rsp + 0x40], 0
cmovne edx, eax
mov rax, qword [0x180064880]
mov qword [rsp + 0x30], rax
mov eax, dword [0x180064888]
mov dword [rsp + 0x28], eax
xor ecx, ecx
mov dword [rsp + 0x20], ecx
mov r9d, esi
mov r8, rbx
mov rcx, rdi
call r10
nop
mov rcx, r14
call sub.KERNEL32.dll_ReleaseSRWLockShared
mov al, 1
jmp 0x180028a7a
lea rax, [0x180059de8]
mov qword [rsp + 0x70], rax
lea rax, [0x180059df0]
mov qword [rbp - 0x80], rax
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::constructor_void____ptr64]
nop
mov dword [rsp + 0x48], 1
xor r8d, r8d
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x70]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_iostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char______ptr64____ptr64]
nop
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea rbx, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rsp + rcx + 0x70], rbx
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rsp + rcx + 0x6c], edx
lea rcx, [rbp - 0x78]
call qword [sym.imp.MSVCP140.dll_protected:_void___cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void____ptr64]
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp - 0x78], rax
xor ecx, ecx
mov qword [rbp - 0x10], rcx
mov dword [rbp - 8], ecx
lea rdx, str.mods::shader::PushShaderInjections_did_not_find_modded_pipeline_root_index
lea rcx, [rbp - 0x80]
call fcn.180005fe0
lea rdx, str.__pipeline:
lea rcx, [rbp - 0x80]
call fcn.180005fe0
mov rdx, qword [rbp + 0x70]
mov rdx, qword [rdx]
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___void_const____ptr64____ptr64]
lea rdx, [0x180059e30]
lea rcx, [rbp - 0x80]
call fcn.180005fe0
lea rdx, [rbp + 0x70]
lea rcx, [rsp + 0x70]
call fcn.18002e890
nop
cmp qword [rax + 0x18], 0xf
jbe 0x1800289ea
mov rax, qword [rax]
mov rdx, rax
mov ecx, 2
call fcn.18002dfa0
nop
mov rdx, qword [rbp + 0x88]
cmp rdx, 0xf
jbe 0x180028a3a
inc rdx
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180028a34
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180028a34
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18003019c
nop
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x70], rbx
mov rax, qword [rsp + 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rsp + rcx + 0x6c], edx
lea rcx, [rbp - 0x78]
call fcn.1800136c0
lea rcx, [rbp - 0x70]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_iostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
xor al, al
mov rcx, qword [rbp + 0x90]
xor rcx, rsp
call fcn.180030970
mov rbx, qword [rsp + 0x1e8]
add rsp, 0x1a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret