Function at 0x14001d4b0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x30
mov r12, rcx
mov rbx, r8
xorps xmm0, xmm0
lea rcx, str.apiVersion
movups xmmword [rbp - 0x10], xmm0
mov rdi, rdx
mov dword [rbp - 0x10], 0xa
mov r14d, 0x405
lea r8, [rbp - 0x10]
mov word [rbp - 2], r14w
lea rdx, [rbp + 0x50]
mov rax, qword [rbp - 8]
movabs r15, 0xffff000000000000
and rax, r15
mov r13, r9
or rax, rcx
mov rcx, rbx
mov qword [rbp - 8], rax
call fcn.140015670
mov ecx, dword [rbx]
movabs rsi, 0xffffffffffff
mov rax, qword [rbx + 8]
shl rcx, 5
and rax, rsi
add rcx, rax
cmp qword [rbp + 0x50], rcx
je 0x14001dc6c
xorps xmm0, xmm0
lea rcx, str.robustBufferAccess
movups xmmword [rbp - 0x10], xmm0
mov word [rbp - 2], r14w
lea r8, [rbp - 0x10]
mov rax, qword [rbp - 8]
lea rdx, [rbp + 0x50]
and rax, r15
mov dword [rbp - 0x10], 0x12
or rax, rcx
mov rcx, r13
mov qword [rbp - 8], rax
call fcn.140015670
mov ecx, dword [r13]
mov rax, qword [r13 + 8]
shl rcx, 5
and rax, rsi
add rcx, rax
cmp qword [rbp + 0x50], rcx
je 0x14001dc6c
mov edx, 0x30
mov rcx, r12
lea r8d, [rdx - 0x20]
call fcn.14001b250
mov rsi, rax
test rax, rax
je 0x14001d5c4
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
mov dword [rax], 0
lea rcx, str.apiVersion
xorps xmm0, xmm0
lea r8, [rbp - 0x10]
movups xmmword [rbp - 0x10], xmm0
mov word [rbp - 2], r14w
lea rdx, [rbp + 0x50]
mov rax, qword [rbp - 8]
and rax, r15
mov dword [rbp - 0x10], 0xa
or rax, rcx
mov rcx, rbx
mov qword [rbp - 8], rax
call fcn.140015670
mov ecx, dword [rbx]
lea rdi, [0x140201b48]
mov rax, qword [rbx + 8]
movabs rdx, 0xffffffffffff
and rax, rdx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp + 0x50]
cmp rax, rcx
je 0x14001d632
add rax, 0x10
jmp 0x14001d63f
xorps xmm0, xmm0
mov rax, rdi
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea rcx, str.applicationVersion
mov dword [rsi + 0x2c], eax
lea r8, [rbp - 0x10]
xorps xmm0, xmm0
lea rdx, [rbp + 0x50]
movups xmmword [rbp - 0x10], xmm0
mov word [rbp - 2], r14w
mov rax, qword [rbp - 8]
and rax, r15
mov dword [rbp - 0x10], 0x12
or rax, rcx
mov rcx, rbx
mov qword [rbp - 8], rax
call fcn.140015670
mov ecx, dword [rbx]
movabs rdx, 0xffffffffffff
mov rax, qword [rbx + 8]
and rax, rdx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp + 0x50]
cmp rax, rcx
je 0x14001d6a5
add rax, 0x10
jmp 0x14001d6b2
xorps xmm0, xmm0
mov rax, rdi
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea rcx, str.engineVersion
mov dword [rsi + 0x18], eax
lea r8, [rbp - 0x10]
xorps xmm0, xmm0
lea rdx, [rbp + 0x50]
movups xmmword [rbp - 0x10], xmm0
mov word [rbp - 2], r14w
mov rax, qword [rbp - 8]
and rax, r15
mov r15d, 0xd
or rax, rcx
mov dword [rbp - 0x10], r15d
mov rcx, rbx
mov qword [rbp - 8], rax
call fcn.140015670
mov ecx, dword [rbx]
movabs rdx, 0xffffffffffff
mov rax, qword [rbx + 8]
and rax, rdx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp + 0x50]
cmp rax, rcx
je 0x14001d71b
add rax, 0x10
jmp 0x14001d728
xorps xmm0, xmm0
mov rax, rdi
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea r8, [rbp - 0x10]
mov dword [rsi + 0x28], eax
lea rdx, [rbp + 0x50]
xorps xmm0, xmm0
movabs rcx, 0xffff000000000000
movups xmmword [rbp - 0x10], xmm0
mov word [rbp - 2], r14w
mov rax, qword [rbp - 8]
and rax, rcx
mov dword [rbp - 0x10], 0xf
lea rcx, str.applicationName
or rax, rcx
mov rcx, rbx
mov qword [rbp - 8], rax
call fcn.140015670
mov rax, qword [rbx + 8]
movabs rdx, 0xffffffffffff
mov r14d, dword [rbx]
and rax, rdx
shl r14, 5
add r14, rax
cmp qword [rbp + 0x50], r14
je 0x14001d8c0
xorps xmm0, xmm0
lea r8, [rbp - 0x10]
movups xmmword [rbp - 0x10], xmm0
mov eax, 0x405
mov dword [rbp - 0x10], 0xf
mov word [rbp - 2], ax
lea rdx, [rbp + 0x50]
mov rax, qword [rbp - 8]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.applicationName
or rax, rcx
mov rcx, rbx
mov qword [rbp - 8], rax
call fcn.140015670
mov rax, qword [rbp + 0x50]
cmp rax, r14
je 0x14001d7e9
add rax, 0x10
jmp 0x14001d7f6
xorps xmm0, xmm0
mov rax, rdi
movups xmmword [0x140201b48], xmm0
mov ecx, 0x1000
test word [rax + 0xe], cx
je 0x14001d80d
movsx eax, byte [rax + 0xd]
mov r14d, r15d
sub r14d, eax
jmp 0x14001d810
mov r14d, dword [rax]
lea edx, [r14 + 1]
mov rcx, r12
call fcn.140017f70
mov r12, rax
lea r8, [rbp - 0x10]
xorps xmm0, xmm0
lea rdx, [rbp + 0x50]
movups xmmword [rbp - 0x10], xmm0
mov eax, 0x405
mov dword [rbp - 0x10], 0xf
mov word [rbp - 2], ax
movabs rax, 0xffff000000000000
mov rcx, qword [rbp - 8]
and rcx, rax
lea rax, str.applicationName
or rcx, rax
mov qword [rbp - 8], rcx
mov rcx, rbx
call fcn.140015670
mov ecx, dword [rbx]
movabs r8, 0xffffffffffff
mov rax, qword [rbx + 8]
and rax, r8
shl rcx, 5
add rcx, rax
mov rax, qword [rbp + 0x50]
cmp rax, rcx
je 0x14001d88e
lea rdx, [rax + 0x10]
jmp 0x14001d89b
xorps xmm0, xmm0
mov rdx, rdi
movups xmmword [0x140201b48], xmm0
mov eax, 0x1000
test word [rdx + 0xe], ax
jne 0x14001d8ad
mov rdx, qword [rdx + 8]
and rdx, r8
mov r8d, r14d
mov rcx, r12
call fcn.140118b40
mov qword [rsi + 0x10], r12
mov r12, qword [rbp + 0x40]
xorps xmm0, xmm0
lea r8, [rbp - 0x10]
movups xmmword [rbp - 0x10], xmm0
mov eax, 0x405
mov dword [rbp - 0x10], 0xa
mov word [rbp - 2], ax
lea rdx, [rbp + 0x50]
mov rax, qword [rbp - 8]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.engineName
or rax, rcx
mov rcx, rbx
mov qword [rbp - 8], rax
call fcn.140015670
mov rax, qword [rbx + 8]
movabs rdx, 0xffffffffffff
mov r14d, dword [rbx]
and rax, rdx
shl r14, 5
add r14, rax
cmp qword [rbp + 0x50], r14
je 0x14001da50
xorps xmm0, xmm0
lea r8, [rbp - 0x10]
movups xmmword [rbp - 0x10], xmm0
mov eax, 0x405
mov dword [rbp - 0x10], 0xa
mov word [rbp - 2], ax
lea rdx, [rbp + 0x50]
mov rax, qword [rbp - 8]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.engineName
or rax, rcx
mov rcx, rbx
mov qword [rbp - 8], rax
call fcn.140015670
mov rax, qword [rbp + 0x50]
cmp rax, r14
je 0x14001d980
add rax, 0x10
jmp 0x14001d98d
xorps xmm0, xmm0
mov rax, rdi
movups xmmword [0x140201b48], xmm0
mov ecx, 0x1000
test word [rax + 0xe], cx
je 0x14001d9a1
movsx eax, byte [rax + 0xd]
sub r15d, eax
jmp 0x14001d9a4
mov r15d, dword [rax]
lea edx, [r15 + 1]
mov rcx, r12
call fcn.140017f70
mov r14, rax
lea r8, [rbp - 0x10]
xorps xmm0, xmm0
lea rdx, [rbp + 0x50]
movups xmmword [rbp - 0x10], xmm0
mov eax, 0x405
mov dword [rbp - 0x10], 0xa
mov word [rbp - 2], ax
movabs rax, 0xffff000000000000
mov rcx, qword [rbp - 8]
and rcx, rax
lea rax, str.engineName
or rcx, rax
mov qword [rbp - 8], rcx
mov rcx, rbx
call fcn.140015670
mov ecx, dword [rbx]
movabs r8, 0xffffffffffff
mov rax, qword [rbx + 8]
and rax, r8
shl rcx, 5
add rcx, rax
mov rax, qword [rbp + 0x50]
cmp rax, rcx
je 0x14001da22
lea rdx, [rax + 0x10]
jmp 0x14001da2f
xorps xmm0, xmm0
mov rdx, rdi
movups xmmword [0x140201b48], xmm0
mov eax, 0x1000
test word [rdx + 0xe], ax
jne 0x14001da41
mov rdx, qword [rdx + 8]
and rdx, r8
mov r8d, r15d
mov rcx, r14
call fcn.140118b40
mov qword [rsi + 0x20], r14
mov edx, pe_nt_image_headers64
mov r8d, 0x10
mov rcx, r12
call fcn.14001b250
mov rbx, rax
test rax, rax
je 0x14001da7c
lea rcx, [rax + 4]
xor edx, edx
mov r8d, 0xec
call fcn.140119350
xorps xmm0, xmm0
mov dword [rbx], 0x3b9bb078
movups xmmword [rbp - 0x10], xmm0
lea rcx, str.robustBufferAccess
mov dword [rbp - 0x10], 0x12
mov r15d, 0x405
lea r8, [rbp - 0x10]
mov word [rbp - 2], r15w
lea rdx, [rbp + 0x50]
mov rax, qword [rbp - 8]
movabs r14, 0xffff000000000000
and rax, r14
or rax, rcx
mov rcx, r13
mov qword [rbp - 8], rax
call fcn.140015670
mov ecx, dword [r13]
movabs rdx, 0xffffffffffff
mov rax, qword [r13 + 8]
and rax, rdx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp + 0x50]
cmp rax, rcx
je 0x14001daf5
add rax, 0x10
jmp 0x14001db02
xorps xmm0, xmm0
mov rax, rdi
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea rcx, str.pNext
mov dword [rbx + 0x10], eax
lea r8, [rbp - 0x10]
xorps xmm0, xmm0
lea rdx, [rbp + 0x50]
movups xmmword [rbp - 0x10], xmm0
mov word [rbp - 2], r15w
mov rax, qword [rbp - 8]
and rax, r14
mov dword [rbp - 0x10], 5
or rax, rcx
mov rcx, r13
mov qword [rbp - 8], rax
call fcn.140015670
mov rax, qword [r13 + 8]
movabs rdx, 0xffffffffffff
mov r14d, dword [r13]
and rax, rdx
shl r14, 5
add r14, rax
cmp qword [rbp + 0x50], r14
je 0x14001dbd3
xorps xmm0, xmm0
lea r8, [rbp - 0x10]
movups xmmword [rbp - 0x10], xmm0
mov word [rbp - 2], r15w
lea rdx, [rbp + 0x50]
mov rax, qword [rbp - 8]
movabs rcx, 0xffff000000000000
and rax, rcx
mov dword [rbp - 0x10], 5
lea rcx, str.pNext
or rax, rcx
mov rcx, r13
mov qword [rbp - 8], rax
call fcn.140015670
mov rax, qword [rbp + 0x50]
cmp rax, r14
je 0x14001dbb2
lea rdi, [rax + 0x10]
jmp 0x14001dbbc
xorps xmm0, xmm0
movups xmmword [0x140201b48], xmm0
lea r8, [rbx + 8]
mov rdx, rdi
mov rcx, r12
call fcn.1400278b0
test al, al
je 0x14001dc87
mov rcx, rsi
call fcn.14001b440
mov r14, rax
mov rcx, rbx
cmp dword [rcx], 0x3b9bb078
je 0x14001dc01
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x14001dbe1
movabs rdi, 0xaf63bd4c8601b7df
mov rcx, rdi
jmp 0x14001dc11
mov ecx, dword [rcx + 0x10]
movabs rdi, 0xaf63bd4c8601b7df
xor rcx, rdi
mov qword [rbp + 0x50], rcx
lea rdx, [rbp + 0x50]
xor ecx, ecx
mov r8, rbx
call fcn.14001bba0
mov r11, qword [rbp + 0x48]
movabs r8, 0x100000001b3
mov rax, qword [rbp + 0x50]
mov r9, rbx
mov ecx, eax
mov edx, r14d
mov r10, qword [r11]
xor rdx, rdi
imul rdx, r8
shr r14, 0x20
xor rdx, r14
shr rax, 0x20
imul rdx, r8
xor rdx, rcx
mov rcx, r11
imul rdx, r8
mov r8, rsi
xor rdx, rax
call qword [r10 + 8]
jmp 0x14001dc85
mov rax, qword [rdi]
xor r9d, r9d
xor r8d, r8d
movabs rdx, 0x4d25767f9dce13f5
mov rcx, rdi
call qword [rax + 8]
mov al, 1
mov rbx, qword [rsp + 0x88]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret