Function at 0x140266280
Capabilities:
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xc0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
mov rax, qword [0x140424a38]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov rbx, r9
mov ebp, r8d
mov rsi, rdx
mov rdi, qword [rcx]
movss xmm0, dword [r9 + 8]
xorps xmm9, xmm9
movss xmm8, dword [0x14036ef80]
comiss xmm0, xmm9
jb 0x1402662e5
comiss xmm0, xmm8
jbe 0x14026635a
lea rdx, str.Assert_failed:
lea rcx, [0x140676310]
call fcn.14001ce10
mov rcx, rax
lea rdx, str.event.value___0.0f__event.value___1.0f
call fcn.14001ce10
mov rcx, rax
mov dl, 0xa
call fcn.1400730a0
lea rdx, str.Assert_failed_at
lea rcx, [0x140676310]
call fcn.14001ce10
mov rcx, rax
lea rdx, str.D:_a_sfizz_sfizz_src_sfizzVoice.cpp
call fcn.14001ce10
mov rcx, rax
lea rdx, [0x140381000]
call fcn.14001ce10
mov edx, 0x19b
mov rcx, rax
call fcn.140073e20
mov rcx, rax
mov dl, 0xa
call fcn.1400730a0
int3
mov r15, qword [rdi + 0xb0]
mov qword [rsp + 0x40], r15
mov rcx, r15
call fcn.14026c3a0
mov r13, rax
mov rcx, r15
call fcn.14026c380
mov qword [rsp + 0x48], rax
mov qword [rdi + 0x10], rsi
add rsi, 0x90
mov qword [rdi + 0x18], rsi
movsd xmm0, qword [rbx]
movsd qword [rdi + 0x30], xmm0
mov ecx, dword [rbx + 8]
mov dword [rdi + 0x38], ecx
cmp dword [rdi + 0x30], 2
jne 0x1402663ac
movzx eax, byte [rsi + 0x550]
mov dword [rdi + 0x34], eax
cmp dword [rsi + 0x1d8], 1
jne 0x1402663c2
mov rcx, r13
call fcn.1402200b0
movss dword [rdi + 0x38], xmm0
mov rcx, rsi
call fcn.140228980
test al, al
jne 0x140266c5e
xor r14d, r14d
test ebp, ebp
jns 0x140266451
lea rdx, str.Assert_failed:
lea rcx, [0x140676310]
call fcn.14001ce10
mov rcx, rax
lea rdx, str.delay___0
call fcn.14001ce10
mov rcx, rax
mov dl, 0xa
call fcn.1400730a0
lea rdx, str.Assert_failed_at
lea rcx, [0x140676310]
call fcn.14001ce10
mov rcx, rax
lea rdx, str.D:_a_sfizz_sfizz_src_sfizzVoice.cpp
call fcn.14001ce10
mov rcx, rax
lea rdx, [0x140381000]
call fcn.14001ce10
mov edx, 0x1b1
mov rcx, rax
call fcn.140073e20
mov rcx, rax
mov dl, 0xa
call fcn.1400730a0
int3
mov dword [rsp + 0x30], ebp
mov byte [rsp + 0x34], 1
mov rax, qword [rsp + 0x30]
mov qword [rdi + 0x3c], rax
mov rdx, r13
mov rcx, rsi
call fcn.14026dbf0
mulss xmm0, dword [rdi + 0xa4]
cvttss2si ecx, xmm0
add ecx, ebp
mov dword [rdi + 0x64], ecx
add ecx, dword [r13 + 0x4278]
mov dword [rdi + 0xa8], ecx
mov r12d, 1
cmp dword [rdi + 0x20], r12d
je 0x1402664af
mov dword [rdi + 0x20], r12d
mov rcx, qword [rdi + 8]
test rcx, rcx
je 0x1402664af
mov rax, qword [rcx]
mov r8d, r12d
mov edx, dword [rdi]
call qword [rax]
mov rcx, qword [rdi + 0xb0]
call fcn.14026c3a0
mov rbx, rax
mov edx, 0x87
mov rcx, rax
call fcn.14021fa80
movss dword [rdi + 0x3b0], xmm0
mov edx, 0x88
mov rcx, rbx
call fcn.14021fa80
movss dword [rdi + 0x3b4], xmm0
mov edx, 0x89
mov rcx, rbx
call fcn.14021fa80
movss dword [rdi + 0x3bc], xmm0
mov edx, 0x86
mov rcx, rbx
call fcn.14021fa80
movss dword [rdi + 0x3b8], xmm0
mov edx, 0x8c
mov rcx, rbx
call fcn.14021fa80
movss dword [rdi + 0x3c0], xmm0
mov rax, qword [rsi + 8]
mov rcx, qword [rax]
lea rbx, [0x140423108]
mov rax, rbx
test rcx, rcx
cmovne rax, rcx
cmp qword [rax + 0x10], r14
jbe 0x14026655e
mov rax, rbx
test rcx, rcx
cmovne rax, rcx
cmp qword [rax + 0x18], 0x10
jb 0x140266559
mov rax, qword [rax]
cmp byte [rax], 0x2a
je 0x140266580
mov eax, dword [rsi + 0x110]
cmp eax, 0xffffffff
je 0x140266571
cmp eax, r12d
sete al
jmp 0x140266578
movzx eax, byte [rsi + 0x114]
test al, al
je 0x140266c25
mov rcx, r15
call fcn.14026c3f0
mov r15, r14
mov rcx, qword [rsi + 8]
mov rdx, qword [rcx]
mov rcx, rbx
test rdx, rdx
cmovne rcx, rdx
cmp qword [rcx + 0x10], r14
jbe 0x140266681
mov rcx, rbx
test rdx, rdx
cmovne rcx, rdx
cmp qword [rcx + 0x18], 0x10
jb 0x1402665ba
mov rcx, qword [rcx]
cmp byte [rcx], 0x2a
jne 0x140266681
test rdx, rdx
cmovne rbx, rdx
mov rcx, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x1402665d8
mov rbx, qword [rbx]
test rcx, rcx
je 0x140266696
movzx eax, byte [rbx]
mov edx, 0x811c9dc5
xor rax, rdx
imul rdx, rax, 0x1000193
lea rax, [rbx + 1]
mov qword [rsp + 0x30], rax
lea rax, [rcx - 1]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
lea rcx, [rsp + 0x30]
call fcn.1400c5a00
movabs rcx, 0xb31b4821d5b6aad
cmp rax, rcx
je 0x14026667a
movabs rcx, 0x518c8c460fdd3f36
cmp rax, rcx
je 0x14026667a
movabs rcx, 0x5bb067e0b49a441e
cmp rax, rcx
je 0x140266673
movabs rcx, 0x695cb2131add8432
cmp rax, rcx
je 0x14026666c
movabs rcx, 0xca87f70337362e10
cmp rax, rcx
jne 0x140266696
call fcn.14027a9f0
jmp 0x140266693
call fcn.14027a950
jmp 0x140266693
call fcn.14027aa90
jmp 0x140266693
call fcn.14027ab30
jmp 0x140266693
test rdx, rdx
cmovne rbx, rdx
mov rdx, rbx
mov rcx, rax
call fcn.14027a400
mov r15, rax
mov rcx, rsi
call fcn.140228d30
movaps xmm6, xmm0
cmp byte [rsi + 0x12c], r14b
je 0x1402666b5
mov ebx, dword [rsi + 0x128]
jmp 0x140266758
mov ebx, dword [0x1403b4ec0]
mov eax, dword [0x1403b4ecc]
test eax, 0x2e0
je 0x140266758
test al, 0x20
je 0x1402666e5
mov eax, 0x51eb851f
imul ebx
mov ebx, edx
sar ebx, 5
mov eax, ebx
shr eax, 0x1f
add ebx, eax
jmp 0x140266758
test al, 0x40
je 0x140266737
bt eax, 0xa
jae 0x140266722
cmp ebx, 0x7e
ja 0x140266722
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
addss xmm0, xmm8
mulss xmm0, dword [0x1403843d0]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
xorps xmm1, xmm1
call fcn.14032eb18
cvttsd2si ebx, xmm0
jmp 0x140266758
mov eax, 0x81020409
imul ebx
add ebx, edx
sar ebx, 6
mov eax, ebx
shr eax, 0x1f
add ebx, eax
jmp 0x140266758
test al, al
jns 0x140266750
mov eax, 0x80040021
imul ebx
add ebx, edx
sar ebx, 0xc
mov eax, ebx
shr eax, 0x1f
add ebx, eax
jmp 0x140266758
bt eax, 9
cmovb ebx, r12d
lea rbp, [rdi + 0x1a0]
lea r12, [rbp + 0xd8]
cmp rbp, r12
je 0x140266792
nop dword [rax + rax]
mov rdx, r15
mov rcx, rbp
call fcn.14027b000
movaps xmm1, xmm6
mov rcx, rbp
call fcn.14027af40
mov dword [rbp + 0x10], ebx
add rbp, 0x18
cmp rbp, r12
jne 0x140266770
mov rax, qword [rdi + 0x18]
movsxd r15, dword [rax + 0x11c]
movss xmm2, dword [rax + 0x120]
cmp r15d, 3
jl 0x140266bc0
cmp dword [rax + 0x118], r14d
jg 0x140266bc0
mov dword [rdi + 0x278], r15d
mov dword [rsp + 0x50], r14d
movaps xmm0, xmm2
xorps xmm0, xmmword [0x140397840]
movss dword [rsp + 0x54], xmm0
movss dword [rsp + 0x58], xmm2
mov ecx, 3
cmp r15, rcx
jle 0x140266837
mov r8d, ecx
movss xmm3, dword [0x1403ae66c]
movss xmm4, dword [0x1403a4298]
nop dword [rax + rax]
lea eax, [rcx - 1]
cdq
sub eax, edx
sar eax, 1
test cl, 1
je 0x140266812
movaps xmm1, xmm3
jmp 0x140266815
movaps xmm1, xmm4
mulss xmm1, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm0
movss dword [rsp + r8*4 + 0x50], xmm1
inc ecx
inc r8
cmp r8, r15
jl 0x140266800
jmp 0x14026683c
test r15d, r15d
jle 0x140266873
mov rbx, r14
movss xmm6, dword [0x1403ae658]
movss xmm7, dword [0x140383b98]
nop
movss xmm1, dword [rsp + rbx*4 + 0x50]
mulss xmm1, xmm6
movaps xmm0, xmm7
call fcn.1403301d0
movss dword [rdi + rbx*4 + 0x27c], xmm0
inc rbx
cmp rbx, r15
jl 0x140266850
mov dword [rdi + 0x2a0], r14d
lea r8d, [r15 - 1]
mov dword [rdi + r15*4 + 0x2c0], r14d
mov eax, r14d
test r8d, r8d
jle 0x1402668da
movd xmm0, r8d
cvtdq2ps xmm0, xmm0
movaps xmm2, xmm8
divss xmm2, xmm0
lea rcx, [rdi + 0x2c4]
lea rdx, [rdi + 0x29c]
lea rdx, [rdx + r15*4]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm2
movaps xmm1, xmm8
subss xmm1, xmm0
movss dword [rdx], xmm1
movss dword [rcx], xmm1
inc eax
add rcx, 4
sub rdx, 4
cmp eax, r8d
jl 0x1402668b0
mov r15, qword [rsp + 0x40]
mov rcx, r15
call fcn.14026c3e0
mov rbp, rax
mov edx, dword [rdi + 0x34]
mov rcx, rax
call fcn.14027d920
movaps xmm6, xmm0
mov rbx, qword [rsp + 0x48]
mov qword [rsp + 0x20], rbx
mov r9, r13
movss xmm2, dword [rdi + 0x38]
movaps xmm1, xmm0
mov rcx, rsi
call fcn.14026d390
movss dword [rdi + 0x48], xmm0
mov rcx, r15
call fcn.14026c3c0
cmp byte [rax + 0x200], r14b
je 0x140266940
movaps xmm1, xmm6
mov rcx, rax
call fcn.14027d950
mulss xmm0, dword [rdi + 0x48]
movss dword [rdi + 0x48], xmm0
movzx eax, byte [rsi + 0x550]
mov byte [rdi + 0x58], al
mov r8d, dword [rdi + 0x34]
mov rdx, r13
mov rcx, rsi
call fcn.14026d5d0
movss dword [rdi + 0x4c], xmm0
mov rcx, rsi
call fcn.140228990
movss dword [rdi + 0x50], xmm0
cmp dword [rdi + 0x30], 2
jne 0x14026697a
cmp dword [rsi + 0x1d8], 1
jne 0x14026699c
mov qword [rsp + 0x20], rbx
mov r9, r13
movss xmm2, dword [rdi + 0x38]
mov edx, dword [rdi + 0x34]
mov rcx, rsi
call fcn.14026d930
mulss xmm0, dword [rdi + 0x50]
movss dword [rdi + 0x50], xmm0
lea rcx, [rdi + 0x32c]
movaps xmm1, xmm9
call fcn.1402a6310
mov rcx, rdi
call fcn.1402651f0
mov ebx, r14d
mov rax, qword [rsi + 0x540]
sub rax, qword [rsi + 0x538]
sar rax, 6
test rax, rax
je 0x140266a20
mov rcx, r14
nop dword [rax]
nop word [rax + rax]
imul rcx, rcx, 0x38
add rcx, qword [rdi + 0xb8]
movss xmm0, dword [rdi + 0x38]
movss dword [rsp + 0x20], xmm0
mov r9d, dword [rdi + 0x34]
mov r8d, ebx
mov rdx, rsi
call fcn.1402a5450
inc ebx
mov ecx, ebx
mov rax, qword [rsi + 0x540]
sub rax, qword [rsi + 0x538]
sar rax, 6
cmp rcx, rax
jb 0x1402669e0
mov ebx, r14d
mov rcx, qword [rsi + 0x528]
sub rcx, qword [rsi + 0x520]
movabs r12, 0x2aaaaaaaaaaaaaab
mov rax, r12
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x140266aa7
mov r8, r14
nop dword [rax]
nop dword [rax + rax]
imul rcx, r8, 0x38
add rcx, qword [rdi + 0xd0]
movss xmm3, dword [rdi + 0x38]
mov r8d, ebx
mov rdx, rsi
call fcn.1402a4bc0
inc ebx
mov r8d, ebx
mov rcx, qword [rsi + 0x528]
sub rcx, qword [rsi + 0x520]
mov rax, r12
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r8, rdx
jb 0x140266a60
mov edx, dword [rdi + 0x34]
mov rcx, rbp
call fcn.14027d900
movss dword [rdi + 0x54], xmm0
mov rdx, r13
mov rcx, rsi
call fcn.14026dca0
mov dword [rdi + 0x70], eax
sub eax, dword [rdi + 0x60]
dec eax
mov dword [rdi + 0x74], eax
movzx edx, word [rsi + 0x594]
movss xmm2, dword [rdi + 0xa4]
lea rcx, [rdi + 0x33c]
call fcn.1402a6330
mov rcx, r13
call fcn.14021fed0
movaps xmm1, xmm0
mov rcx, rsi
call fcn.1402289c0
movaps xmm1, xmm0
lea rcx, [rdi + 0x33c]
call fcn.1402a6310
mov rcx, r15
call fcn.14026c3b0
mov r8d, dword [rsi]
mov r9d, dword [rdi + 0x64]
mov edx, dword [rdi]
mov rcx, rax
call fcn.140273f80
mov rdx, rsi
mov rcx, rdi
call fcn.140265390
cmp byte [rsi + 0x1dc], r14b
je 0x140266b56
movzx edx, word [rsi + 0x1de]
mov rcx, r13
call fcn.14021fa80
mov eax, r14d
comiss xmm0, dword [rsi + 0x1e4]
setae al
mov dword [rdi + 0x28], eax
cmp byte [rsi + 0x1dd], r14b
je 0x140266b82
movzx edx, word [rsi + 0x1e0]
mov rcx, r13
call fcn.14021fa80
mov edx, 2
comiss xmm0, dword [rsi + 0x1e8]
cmovae r14d, edx
mov dword [rdi + 0x2c], r14d
mov al, 1
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.140322a80
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov dword [rdi + 0x278], 1
mov dword [rdi + 0x27c], 0x3f800000
mov dword [rdi + 0x2a0], 0x3f800000
mov dword [rdi + 0x2c4], 0x3f800000
movss xmm6, dword [rax + 0x124]
mulss xmm2, dword [0x1403ae658]
movaps xmm1, xmm2
movss xmm0, dword [0x140383b98]
call fcn.1403301d0
movss dword [rdi + 0x280], xmm0
movss dword [rdi + 0x2a4], xmm6
movss dword [rdi + 0x2c8], xmm6
jmp 0x1402668da
mov rcx, r15
call fcn.14026c390
lea r8, [rsi + 8]
lea rdx, [rsp + 0x30]
mov rcx, rax
call fcn.14028d200
mov rcx, qword [rax]
mov qword [rdi + 0x98], rcx
mov qword [rax], r14
lea rcx, [rsp + 0x30]
call fcn.14023a4b0
cmp qword [rdi + 0x98], r14
jne 0x140266c86
cmp dword [rdi + 0x20], 2
je 0x140266c7f
mov rcx, qword [rdi + 8]
mov edx, 2
test rcx, rcx
mov dword [rdi + 0x20], edx
je 0x140266c7f
mov r8d, edx
mov rax, qword [rcx]
mov edx, dword [rdi]
call qword [rax]
xor al, al
jmp 0x140266b84
mov rcx, rdi
call fcn.140266f10
mov rax, qword [rdi + 0x98]
movss xmm0, dword [rdi + 0xa4]
cvtps2pd xmm0, xmm0
movsd xmm1, qword [rax + 0x48]
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [rdi + 0x44], xmm0
mov rdx, r13
mov rcx, rsi
call fcn.14026dd40
mov dword [rdi + 0x60], eax
jmp 0x1402668df