Function at 0x18015d8d0
Capabilities:
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x198]
sub rsp, 0x258
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
mov rax, qword [0x1802993c0]
xor rax, rsp
mov qword [rbp + 0xf0], rax
movaps xmm9, xmm3
mov rdi, rdx
mov qword [rbp - 0x80], rcx
mov qword [rsp + 0x70], r8
mov qword [rbp - 0x50], rcx
mov qword [rbp - 0x40], rdx
mov r12, qword [rbp + 0x1c0]
xor r14d, r14d
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
movdqa xmm2, xmmword [reloc.OLEAUT32.dll_SysReAllocString]
movdqu xmmword [rbp + 0x40], xmm2
mov eax, 0xa7c2
mov word [rbp + 0x30], ax
mov byte [rbp + 0x32], r14b
movups xmmword [rbp + 0x50], xmm0
movdqa xmm1, xmmword [reloc.d2d1.dll_Ordinal_1]
movdqu xmmword [rbp + 0x60], xmm1
mov word [rbp + 0x50], 0x26
movups xmmword [rbp + 0x70], xmm0
movdqu xmmword [rbp + 0x80], xmm2
mov eax, 0x6c26
mov word [rbp + 0x70], ax
mov byte [rbp + 0x72], r14b
movups xmmword [rbp + 0x90], xmm0
movdqa xmm1, xmmword [0x1802351b0]
movdqu xmmword [rbp + 0xa0], xmm1
mov byte [rbp + 0x90], r14b
movups xmmword [rbp + 0xb0], xmm0
movdqu xmmword [rbp + 0xc0], xmm2
mov eax, 0x7226
mov word [rbp + 0xb0], ax
mov byte [rbp + 0xb2], r14b
movups xmmword [rbp + 0xd0], xmm0
movdqu xmmword [rbp + 0xe0], xmm1
mov byte [rbp + 0xd0], r14b
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], r14
mov ecx, 0xc0
call fcn.180038fa0
mov rbx, rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
add rax, 0xc0
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x58]
mov qword [rbp - 0x78], rax
lea rsi, [rbp + 0x30]
mov qword [rbp - 8], rbx
mov qword [rbp], rbx
lea rax, [rsp + 0x58]
mov qword [rbp + 8], rax
nop
mov qword [rbp - 0x68], rbx
mov rdx, rsi
mov rcx, rbx
call fcn.18004d5a0
nop
lea rcx, [rbx + 0x20]
lea rdx, [rsi + 0x20]
call fcn.18004d5a0
nop
add rbx, 0x40
mov qword [rbp], rbx
add rsi, 0x40
lea rax, [rbp + 0xf0]
cmp rsi, rax
jne 0x18015da30
mov qword [rsp + 0x60], rbx
lea r8, [rsp + 0x58]
mov rdx, rdi
lea rcx, [rbp - 0x38]
call fcn.180160120
mov rdx, rax
mov rcx, rdi
call fcn.18003bc80
mov r8, qword [rbp - 0x20]
cmp r8, 0xf
jbe 0x18015da9e
mov rdx, qword [rbp - 0x38]
lea rcx, [rbp - 0x38]
call fcn.1800390b0
movdqa xmm0, xmmword [0x1802351b0]
movdqu xmmword [rbp - 0x28], xmm0
mov byte [rbp - 0x38], 0
mov rbx, qword [rsp + 0x58]
test rbx, rbx
je 0x18015db04
mov rsi, qword [rsp + 0x60]
cmp rbx, rsi
je 0x18015dae2
lea rcx, [rbx + 0x20]
call fcn.180039100
mov rcx, rbx
call fcn.180039100
add rbx, 0x40
cmp rbx, rsi
jne 0x18015dac3
mov rbx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x68]
sub r8, rbx
sar r8, 6
mov rdx, rbx
call fcn.180065320
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], r14
lea r9, [0x1800646e0]
mov edx, 0x40
mov r8d, 3
lea rcx, [rbp + 0x30]
call fcn.1801b3268
mov rdx, rdi
lea rcx, [rbp - 0x38]
call fcn.180160a70
mov rdx, rax
mov rcx, rdi
call fcn.18003bc80
mov r8, qword [rbp - 0x20]
cmp r8, 0xf
jbe 0x18015db4d
mov rdx, qword [rbp - 0x38]
lea rcx, [rbp - 0x38]
call fcn.1800390b0
mov rdx, rdi
lea rcx, [rbp - 0x38]
call fcn.1801608c0
mov rdx, rax
mov rcx, rdi
call fcn.18003bc80
mov r8, qword [rbp - 0x20]
cmp r8, 0xf
jbe 0x18015db7b
mov rdx, qword [rbp - 0x38]
lea rcx, [rbp - 0x38]
call fcn.1800390b0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
xor r10d, r10d
mov r13d, r10d
mov qword [rsp + 0x68], r10
xor al, al
mov byte [rsp + 0x51], al
movups xmm10, xmmword [r12]
mov r15d, r10d
mov rcx, qword [rdi + 0x10]
mov rbx, qword [rsp + 0x60]
test rcx, rcx
je 0x18015de81
mov esi, r10d
movabs rdx, 0x101010101010101
mov r14d, 1
movabs r8, 0xcbf29ce484222325
movabs r11, 0x100000001b3
nop word [rax + rax]
mov rax, rdi
mov r9, qword [rdi + 0x18]
cmp r9, 0xf
jbe 0x18015dbf0
mov rax, qword [rdi]
cmp byte [rax + rsi], 0x26
jne 0x18015dd6f
movsxd rax, r14d
cmp rax, rcx
jae 0x18015de68
mov rax, rdi
cmp r9, 0xf
jbe 0x18015dc12
mov rax, qword [rdi]
movzx ecx, byte [rax + rsi + 1]
mov edx, ecx
xor rdx, r8
imul rdx, r11
and rdx, qword [0x18029a4c0]
add rdx, rdx
mov r8, qword [0x18029a4a8]
mov rax, qword [r8 + rdx*8 + 8]
cmp rax, qword [0x18029a498]
je 0x18015dc58
mov r8, qword [r8 + rdx*8]
cmp cl, byte [rax + 0x10]
je 0x18015dc5b
cmp rax, r8
je 0x18015dc58
mov rax, qword [rax + 8]
cmp cl, byte [rax + 0x10]
jne 0x18015dc48
jmp 0x18015dc5b
mov rax, r10
test rax, rax
je 0x18015de54
mov rax, rdi
cmp r9, 0xf
jbe 0x18015dc70
mov rax, qword [rdi]
movzx eax, byte [rax + rsi + 1]
mov byte [rsp + 0x50], al
lea rdx, [rsp + 0x50]
call fcn.18015ec60
test al, al
je 0x18015de54
lea r8, [rsp + 0x50]
lea rdx, [rbp - 0x68]
call fcn.18015ecd0
mov rcx, qword [rax]
movups xmm0, xmmword [rcx + 0x14]
movups xmmword [r12], xmm0
add r15d, 2
add r14d, 2
add rsi, 2
cmp byte [rsp + 0x51], 0
jne 0x18015dcc1
movups xmm10, xmm0
mov byte [rsp + 0x51], 1
mov r8, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x18015dcce
mov r8, qword [rdi]
movzx r8d, byte [r8 + rsi]
mov edx, 1
lea rcx, [rbp - 0x38]
call fcn.18004d710
nop
movups xmm1, xmmword [rax]
movups xmmword [rbp - 8], xmm1
movups xmm2, xmmword [rax + 0x10]
movups xmmword [rbp + 8], xmm2
xor ecx, ecx
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], 0xf
mov byte [rax], cl
movups xmm0, xmmword [r12]
movups xmmword [rbp + 0x18], xmm0
cmp rbx, r13
je 0x18015dd2e
movups xmmword [rbx], xmm1
movups xmmword [rbx + 0x10], xmm2
mov r8d, 0xf
mov byte [rbp - 8], cl
movups xmmword [rbx + 0x20], xmm0
add rbx, 0x30
mov qword [rsp + 0x60], rbx
jmp 0x18015dd4d
lea r8, [rbp - 8]
mov rdx, rbx
lea rcx, [rsp + 0x58]
call fcn.18015ef80
mov r13, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov r8, qword [rbp + 0x10]
cmp r8, 0xf
jbe 0x18015dd61
mov rdx, qword [rbp - 8]
lea rcx, [rbp - 8]
call fcn.1800390b0
nop
lea rcx, [rbp - 0x38]
call fcn.180039100
jmp 0x18015de47
mov rax, rdi
cmp r9, 0xf
jbe 0x18015dd7b
mov rax, qword [rdi]
xorps xmm0, xmm0
movups xmmword [rbp - 8], xmm0
mov qword [rbp + 8], 1
mov qword [rbp + 0x10], 0xf
movsx eax, byte [rax + rsi]
movzx eax, al
mul rdx
mov byte [rbp - 8], al
mov byte [rbp - 7], 0
movups xmm1, xmmword [rbp - 8]
movups xmmword [rbp - 0x38], xmm1
movups xmm2, xmmword [rbp + 8]
movups xmmword [rbp - 0x28], xmm2
mov qword [rbp + 8], r10
mov qword [rbp + 0x10], 0xf
mov byte [rbp - 8], 0
movups xmm0, xmmword [r12]
movups xmmword [rbp - 0x18], xmm0
cmp rbx, r13
je 0x18015ddf0
movups xmmword [rbx], xmm1
movups xmmword [rbx + 0x10], xmm2
mov edx, 0xf
mov byte [rbp - 0x38], 0
movups xmmword [rbx + 0x20], xmm0
add rbx, 0x30
mov qword [rsp + 0x60], rbx
jmp 0x18015de0f
lea r8, [rbp - 0x38]
mov rdx, rbx
lea rcx, [rsp + 0x58]
call fcn.18015ef80
mov r13, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x18015de47
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18015de41
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18015e0aa
call fcn.1801b2e80
nop
movabs r11, 0x100000001b3
xor r10d, r10d
movabs r8, 0xcbf29ce484222325
movabs rdx, 0x101010101010101
inc r15d
inc r14d
inc rsi
mov rcx, qword [rdi + 0x10]
movsxd rax, r15d
cmp rax, rcx
jb 0x18015dbe0
mov r15, qword [rsp + 0x58]
mov rsi, r15
cmp r15, rbx
je 0x18015dfa8
xorps xmm6, xmm6
movss xmm8, dword [0x1802350c0]
movss xmm7, dword [rsp + 0x70]
mov r14, qword [0x1802a0108]
xor r12d, r12d
nop
mov r9, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x18015debd
mov r9, qword [rsi]
lea rcx, [rsi + 0x20]
call fcn.180168660
mov r10d, eax
mov rcx, qword [r14 + 0x3c38]
movaps xmm2, xmm9
mov rdx, qword [0x1802a00e8]
test eax, 0xff000000
je 0x18015df5c
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [r9 + r8], r12b
jne 0x18015def0
add r8, r9
cmp r9, r8
je 0x18015df5c
test rcx, rcx
jne 0x18015df0e
mov rax, qword [rdx + 0x38]
mov rcx, qword [rax + 8]
ucomiss xmm9, xmm6
jne 0x18015df1d
mov rax, qword [rdx + 0x38]
movss xmm2, dword [rax + 0x10]
movups xmm0, xmmword [rdx + 0x88]
movups xmmword [rbp - 0x78], xmm0
mov byte [rsp + 0x48], r12b
movss dword [rsp + 0x40], xmm6
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x30], r9
lea rax, [rbp - 0x78]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r10d
lea r9, [rsp + 0x70]
call fcn.1801916a0
mov r14, qword [0x1802a0108]
mov rax, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x18015df69
mov rax, qword [rsi]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm8
movaps xmm2, xmm9
lea rdx, [rbp - 0x68]
mov rcx, qword [r14 + 0x3c38]
call fcn.1801914a0
addss xmm7, dword [rax]
movss dword [rsp + 0x70], xmm7
add rsi, 0x30
cmp rsi, rbx
jne 0x18015deb0
xorps xmm0, xmm0
mov r14, qword [rbp - 0x80]
movups xmmword [r14], xmm0
xor eax, eax
mov qword [r14 + 0x10], rax
mov qword [r14 + 0x18], 0xf
mov byte [r14], al
mov qword [r14 + 0x20], rax
mov qword [r14 + 0x28], rax
mov qword [r14 + 0x38], rax
movups xmmword [r14 + 0x2c], xmm0
movups xmmword [r14 + 0x3c], xmm0
mov word [r14 + 0x4c], ax
mov byte [r14 + 0x4e], al
lea rcx, [r14 + 0x50]
call fcn.18010b490
nop
movups xmmword [r14 + 0x2c], xmm10
test r15, r15
je 0x18015e05f
mov rsi, r15
cmp r15, rbx
je 0x18015e011
nop
mov rcx, rsi
call fcn.180039100
add rsi, 0x30
cmp rsi, rbx
jne 0x18015e000
sub r13, r15
sar r13, 4
movabs rax, 0xaaaaaaaaaaaaaaab
imul r13, rax
lea rdx, [r13*2]
add rdx, r13
shl rdx, 4
mov rax, r15
cmp rdx, 0x1000
jb 0x18015e056
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18015e0b0
mov rcx, r15
call fcn.1801b2e80
nop
mov rcx, rdi
call fcn.180039100
mov rax, r14
mov rcx, qword [rbp + 0xf0]
xor rcx, rsp
call fcn.1801b2e60
lea r11, [rsp + 0x258]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1801c1464
nop
call fcn.1801c1464
int3