Function at 0x180041928
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov r14, r9
mov r12, r8
mov dword [rbp + 0x48], edx
mov r10, qword [0x18010ead0]
movabs rcx, 0xcbf29ce484222325
xor r9d, r9d
movzx eax, byte [rbp + r9 + 0x48]
xor rcx, rax
movabs r8, 0x100000001b3
imul rcx, r8
inc r9
cmp r9, 4
jb 0x180041961
mov rax, qword [r10 + 0x2a0]
and rax, rcx
add rax, rax
mov r8, qword [r10 + 0x288]
mov rdi, qword [r8 + rax*8 + 8]
mov rcx, qword [r10 + 0x278]
cmp rdi, rcx
je 0x1800419bc
mov r9, qword [r8 + rax*8]
jmp 0x1800419b5
cmp rdi, r9
je 0x1800419bc
mov rdi, qword [rdi + 8]
cmp edx, dword [rdi + 0x10]
jne 0x1800419ac
jmp 0x1800419be
xor edi, edi
test rdi, rdi
cmove rdi, rcx
cmp rdi, rcx
je 0x180041c0d
xor r15d, r15d
xor r13d, r13d
test r12, r12
jne 0x180041a6b
mov r12, qword [rdi + 0x20]
mov rbx, qword [r12]
cmp rbx, r12
je 0x180041a62
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
and qword [rbp - 0x30], 0
and qword [rbp - 0x28], 0
lea rdx, [rbx + 0x10]
cmp qword [rbx + 0x28], 0x10
jb 0x180041a0a
mov rdx, qword [rbx + 0x10]
mov r8, qword [rbx + 0x20]
lea rcx, [rbp - 0x40]
call fcn.18000a394
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
and qword [rbp - 0x10], 0
and qword [rbp - 8], 0
lea rdx, [rbx + 0x30]
cmp qword [rbx + 0x48], 0x10
jb 0x180041a38
mov rdx, qword [rbx + 0x30]
mov r8, qword [rbx + 0x40]
lea rcx, [rbp - 0x20]
call fcn.18000a394
nop
mov eax, dword [rbp - 0x30]
inc eax
add r15d, eax
lea rcx, [rbp - 0x40]
call fcn.18000b1e0
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r12
jne 0x1800419ea
mov r12, qword [rbp + 0x50]
jmp 0x180041b35
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
and qword [rbp - 0x30], r13
and qword [rbp - 0x28], r13
mov rcx, r12
call qword [sym.imp.msvcrt.dll_strlen]
mov r8, rax
mov rdx, r12
lea rcx, [rbp - 0x40]
call fcn.18000a2b4
lea rcx, [rbp - 0x40]
cmp qword [rbp - 0x28], 0x10
cmovae rcx, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x30]
call fcn.18000b1ac
mov r9, rax
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x50]
lea rcx, [rdi + 0x18]
call fcn.18000b024
mov rbx, qword [rax + 8]
test rbx, rbx
jne 0x180041aca
mov rbx, qword [rdi + 0x20]
mov rdx, qword [rbp - 0x28]
cmp rdx, 0x10
jb 0x180041b05
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180041b00
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180041c27
call fcn.18009087c
and qword [rbp - 0x30], r13
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], r13b
cmp rbx, qword [rdi + 0x20]
je 0x180041c0d
mov r15d, dword [rbx + 0x40]
lea rcx, [rbx + 0x30]
cmp qword [rcx + 0x18], 0x10
jb 0x180041b31
mov rcx, qword [rcx]
lea r13, [rcx + 1]
mov rcx, qword [rbp + 0x60]
mov edx, dword [rcx]
mov dword [rcx], r15d
cmp edx, r15d
jae 0x180041b4a
mov al, 1
jmp 0x180041c0f
test r12, r12
jne 0x180041bfc
mov rdi, qword [rdi + 0x20]
mov rbx, qword [rdi]
jmp 0x180041be9
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
and qword [rbp - 0x30], 0
and qword [rbp - 0x28], 0
lea rdx, [rbx + 0x10]
cmp qword [rbx + 0x28], 0x10
jb 0x180041b7f
mov rdx, qword [rbx + 0x10]
mov r8, qword [rbx + 0x20]
lea rcx, [rbp - 0x40]
call fcn.18000a394
nop
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
and qword [rbp - 0x10], 0
and qword [rbp - 8], 0
lea rdx, [rbx + 0x30]
cmp qword [rbx + 0x48], 0x10
jb 0x180041bad
mov rdx, qword [rbx + 0x30]
mov r8, qword [rbx + 0x40]
lea rcx, [rbp - 0x20]
call fcn.18000a394
nop
lea rdx, [rbp - 0x40]
cmp qword [rbp - 0x28], 0x10
cmovae rdx, qword [rbp - 0x40]
mov rcx, r14
call qword [sym.imp.msvcrt.dll_strcpy]
add r14, qword [rbp - 0x30]
mov byte [r14], 0x2c
inc r14
lea rcx, [rbp - 0x40]
call fcn.18000b1e0
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x180041b5f
mov byte [r14 - 1], 0
jmp 0x180041b43
mov rdx, r13
mov rcx, r14
call qword [sym.imp.msvcrt.dll_strcpy]
jmp 0x180041b43
xor al, al
mov rbx, qword [rsp + 0xb0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180094aa0
int3