Function at 0x140072410
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
push rbp
push r13
push r15
sub rsp, 0x60
mov r15, r8
mov r13, rdx
mov rbp, rcx
cmp rdx, r8
je 0x14007270b
mov r9, qword [rcx + 0x18]
movabs r10, 0x100000001b3
mov qword [rax + 8], rbx
mov qword [rax - 0x20], rsi
mov qword [rax - 0x28], rdi
mov rdi, rdx
mov qword [rax - 0x30], r12
mov r12, qword [rcx + 8]
movabs rcx, 0xcbf29ce484222325
mov qword [rax - 0x38], r14
mov rax, qword [rdx + 8]
mov rdx, qword [rdx + 0x10]
mov qword [rsp + 0x88], rax
mov rax, rdx
shr rax, 8
movzx r8d, al
movzx eax, dl
xor rax, rcx
mov qword [rsp + 0x30], r12
imul rax, r10
mov qword [rsp + 0x28], r9
xor r8, rax
mov rax, rdx
shr rax, 0x10
movzx ecx, al
mov rax, rdx
shr rax, 0x18
imul r8, r10
xor r8, rcx
movzx ecx, al
imul r8, r10
mov rax, rdx
shr rax, 0x20
xor r8, rcx
movzx ecx, al
mov rax, rdx
shr rax, 0x28
imul r8, r10
xor r8, rcx
movzx ecx, al
imul r8, r10
mov rax, rdx
shr rdx, 0x38
shr rax, 0x30
xor r8, rcx
movzx eax, al
imul r8, r10
xor rax, r8
imul rax, r10
xor rax, rdx
imul rax, r10
and rax, qword [rbp + 0x30]
shl rax, 4
add rax, r9
mov qword [rsp + 0x90], rax
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x98], rcx
nop
mov rsi, rdi
mov r14, rdi
mov rdi, qword [rdi]
mov rbx, qword [rsi + 0x18]
test rbx, rbx
je 0x140072561
mov eax, 0xffffffff
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140072561
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140072561
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov edx, 0x20
mov rcx, rsi
call fcn.14013b70c
dec qword [rbp + 0x10]
cmp r14, qword [rsp + 0x20]
je 0x14007259c
cmp rdi, r15
jne 0x140072520
cmp qword [rsp + 0x98], r13
jne 0x1400726e0
mov rax, qword [rsp + 0x90]
mov qword [rax], rdi
jmp 0x1400726e0
mov rax, qword [rsp + 0x90]
cmp qword [rsp + 0x98], r13
jne 0x1400725b3
mov qword [rax], r12
jmp 0x1400725bb
mov r12, qword [rsp + 0x88]
mov qword [rax + 8], r12
cmp rdi, r15
je 0x1400726e0
nop dword [rax + rax]
mov rdx, qword [rdi + 0x10]
movabs r9, 0x100000001b3
mov r13, qword [rbp + 0x30]
mov rax, rdx
shr rax, 8
movabs rcx, 0xcbf29ce484222325
movzx r8d, al
movzx eax, dl
xor rax, rcx
imul rax, r9
xor r8, rax
mov rax, rdx
imul r8, r9
shr rax, 0x10
movzx ecx, al
mov rax, rdx
xor r8, rcx
shr rax, 0x18
imul r8, r9
movzx ecx, al
mov rax, rdx
xor r8, rcx
shr rax, 0x20
imul r8, r9
movzx ecx, al
mov rax, rdx
xor r8, rcx
shr rax, 0x28
imul r8, r9
movzx ecx, al
mov rax, rdx
xor r8, rcx
shr rax, 0x30
imul r8, r9
shr rdx, 0x38
movzx ecx, al
xor r8, rcx
imul r8, r9
xor r8, rdx
imul r8, r9
and r13, r8
shl r13, 4
add r13, qword [rsp + 0x28]
mov r12, qword [r13 + 8]
nop dword [rax + rax]
mov rsi, rdi
mov r14, rdi
mov rdi, qword [rdi]
mov rbx, qword [rsi + 0x18]
test rbx, rbx
je 0x1400726c1
mov eax, 0xffffffff
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1400726c1
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1400726c1
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov edx, 0x20
mov rcx, rsi
call fcn.14013b70c
dec qword [rbp + 0x10]
cmp r14, r12
je 0x140072718
cmp rdi, r15
jne 0x140072680
mov qword [r13], rdi
mov rax, qword [rsp + 0x88]
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x80]
mov r14, qword [rsp + 0x40]
mov qword [rax], rdi
mov qword [rdi + 8], rax
mov rdi, qword [rsp + 0x50]
mov rax, r15
add rsp, 0x60
pop r15
pop r13
pop rbp
ret
mov r9, qword [rsp + 0x30]
mov qword [r13], r9
mov qword [r13 + 8], r9
cmp rdi, r15
jne 0x1400725d0
jmp 0x1400726e0