Function at 0x180152e40
Capabilities:
Hash data using fnv

Disassembly:
mov r11, rsp
push rbp
push r12
push r13
push r14
lea rbp, [r11 - 0x118]
sub rsp, 0x1f8
mov rax, qword [0x180190240]
xor rax, rsp
mov qword [rbp + 0xc8], rax
mov r14, qword [rbp + 0x148]
mov r13, r8
mov qword [rbp + 0x38], r9
mov r12d, edx
mov qword [rsp + 0x60], r8
mov dword [rbp - 0x28], ecx
mov rax, qword [r14 + 8]
cmp qword [r14], rax
je 0x180153ad7
mov qword [r11 + 0x10], rbx
mov rcx, r14
mov qword [r11 - 0x28], rsi
xor esi, esi
mov qword [r11 - 0x30], rdi
mov qword [r11 - 0x38], r15
call fcn.180153b70
test rax, rax
je 0x180152ee7
xor edi, edi
mov rdx, rdi
mov rcx, r14
call fcn.180029b00
mov rdx, rdi
mov rcx, r14
mov rbx, rax
call fcn.180029b00
lea rdx, [rbx + 0xc]
mov rcx, rax
call fcn.1800c5b10
inc esi
mov rcx, r14
movsxd rdi, esi
call fcn.180153b70
cmp rdi, rax
jb 0x180152eb0
mov rcx, r14
call fcn.1800c5f40
xorps xmm0, xmm0
mov qword [rsp + 0x78], 0
mov rcx, r14
xor esi, esi
movdqu xmmword [rsp + 0x68], xmm0
call fcn.180153b70
test rax, rax
je 0x180152fd9
xor ebx, ebx
nop word [rax + rax]
mov rdx, rbx
mov rcx, r14
call fcn.180029b00
xor edi, edi
lea rbx, [rbp + 0xb8]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rbp + 0xb8], xmm0
mov dword [rbp + 0xc0], eax
nop dword [rax]
mov r8d, dword [rbx]
lea ecx, [rdi + 1]
mov eax, 0x55555556
mov edi, ecx
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
sub ecx, eax
movsxd rax, ecx
mov ecx, dword [rbp + rax*4 + 0xb8]
cmp r8d, ecx
jge 0x180152f96
mov dword [rbp + 0x90], r8d
lea rdx, [rbp + 0x90]
mov dword [rbp + 0x94], ecx
mov dword [rbp + 0x98], esi
jmp 0x180152fb0
mov dword [rbp + 0x80], ecx
lea rdx, [rbp + 0x80]
mov dword [rbp + 0x84], r8d
mov dword [rbp + 0x88], esi
lea rcx, [rsp + 0x68]
call fcn.1800b50e0
add rbx, 4
cmp edi, 3
jl 0x180152f50
inc esi
mov rcx, r14
movsxd rbx, esi
call fcn.180153b70
cmp rbx, rax
jb 0x180152f20
mov r14, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x68]
mov rdx, r14
movzx r8d, byte [rsp + 0x50]
mov rcx, rbx
call fcn.1800c5bb0
lea rcx, [rbp - 0x20]
call fcn.1800c7c30
lea rcx, [rsp + 0x68]
xor r15b, r15b
xor esi, esi
call fcn.180153b70
cmp rax, 1
je 0x180153130
nop word [rax + rax]
movsxd rdi, esi
lea rcx, [rsp + 0x68]
mov rdx, rdi
call fcn.180029b00
cmp dword [rax], r12d
jge 0x180153045
mov r8, rax
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x20]
call fcn.18012c290
mov rdx, rdi
lea rcx, [rsp + 0x68]
call fcn.180029b00
cmp dword [rax + 4], r12d
lea r8, [rax + 4]
jge 0x180153069
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x20]
call fcn.18012c290
lea rdx, [rdi + 1]
lea rcx, [rsp + 0x68]
call fcn.180029b00
mov rdx, rdi
lea rcx, [rsp + 0x68]
mov r14, rax
call fcn.180029b00
mov ecx, dword [r14]
cmp dword [rax], ecx
jne 0x1801530d2
mov ecx, dword [r14 + 4]
cmp dword [rax + 4], ecx
jne 0x1801530d2
mov r8, rdi
mov qword [rbp + 0x90], rbx
lea rdx, [rbp + 0x80]
mov r15b, 1
lea rcx, [rbp + 0x90]
call fcn.1800d24d0
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x68]
mov r8, qword [rax]
call fcn.18011e700
mov rbx, qword [rsp + 0x68]
dec esi
jmp 0x18015310b
test r15b, r15b
jne 0x180153108
mov r8, rax
lea rdx, [rbp + 0xa8]
lea rcx, [rbp - 0x20]
call fcn.18012c290
mov rdx, rdi
lea rcx, [rsp + 0x68]
call fcn.180029b00
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x20]
lea r8, [rax + 4]
call fcn.18012c290
xor r15b, r15b
lea rcx, [rsp + 0x68]
inc esi
call fcn.180153b70
dec rax
movsxd rcx, esi
cmp rcx, rax
jb 0x180153020
mov r14, qword [rsp + 0x70]
test r15b, r15b
jne 0x180153152
lea r8, [r14 - 0xc]
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x20]
call fcn.18012c290
lea r8, [r14 - 8]
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x20]
call fcn.18012c290
lea rcx, [rbp - 0x80]
movaps xmmword [rsp + 0x1d0], xmm6
call fcn.1800c7a80
mov rdi, rbx
cmp rbx, r14
je 0x18015323a
nop
mov r8, qword [r13]
movsxd rsi, dword [rdi]
movsxd r15, dword [rdi + 4]
lea rdx, [rsi + rsi*4]
add rdx, rdx
lea rcx, [r15 + r15*4]
add rcx, rcx
movups xmm1, xmmword [r8 + rdx*8]
movups xmm0, xmmword [r8 + rcx*8]
movsd xmm6, qword [r8 + rdx*8 + 0x10]
lea rdx, [rbp + 0x90]
subsd xmm6, qword [r8 + rcx*8 + 0x10]
subpd xmm1, xmm0
mov r8, rdi
lea rcx, [rbp - 0x20]
mulsd xmm6, xmm6
mulpd xmm1, xmm1
movaps xmm0, xmm1
unpckhpd xmm0, xmm1
addsd xmm1, xmm0
addsd xmm6, xmm1
call fcn.1800c1ad0
mov rcx, qword [rbp - 0x18]
cmp qword [rax], rcx
jne 0x1801531f7
lea rdx, [rbp - 0x60]
movsd qword [rbp - 0x58], xmm6
lea rcx, [rbp - 0x80]
mov dword [rbp - 0x60], esi
mov dword [rbp - 0x5c], r15d
call fcn.1801421c0
mov esi, dword [rdi]
mov r15d, dword [rdi + 4]
lea r8, [rdi + 4]
lea rdx, [rbp + 0x80]
lea rcx, [rbp - 0x20]
call fcn.1800c1ad0
mov rcx, qword [rbp - 0x18]
cmp qword [rax], rcx
jne 0x18015322d
lea rdx, [rbp - 0x50]
movsd qword [rbp - 0x48], xmm6
lea rcx, [rbp - 0x80]
mov dword [rbp - 0x50], r15d
mov dword [rbp - 0x4c], esi
call fcn.1801421c0
add rdi, 0xc
cmp rdi, r14
jne 0x180153170
mov r15, qword [rbp - 0x78]
mov r12, qword [rbp - 0x80]
cmp r12, r15
je 0x180153a93
lea rcx, [rbp + 0x40]
call fcn.1800c7c30
cmp rbx, r14
je 0x18015328a
nop dword [rax]
mov r8, rbx
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x40]
call fcn.1800c11f0
lea r8, [rbx + 4]
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x40]
call fcn.1800c11f0
add rbx, 0xc
cmp rbx, r14
jne 0x180153260
movzx edi, byte [rbp - 0x68]
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], 0
mov rbx, qword [r12]
lea r14, [r12 + 8]
movsd xmm6, qword [r14]
mov rax, r15
sub rax, r12
mov qword [rbp + 0xa8], rbx
and rax, 0xfffffffffffffff0
movabs rsi, 0x100000001b3
cmp rax, 0x20
jl 0x1801532f4
movups xmm0, xmmword [r15 - 0x10]
lea rdx, [r15 - 0x10]
mov byte [rsp + 0x20], dil
lea r9, [rbp + 0x90]
mov r8, rdx
mov rcx, r12
movups xmmword [rbp + 0x90], xmm0
call fcn.18001c1c0
add r15, 0xfffffffffffffff0
mov qword [rbp - 0x78], r15
cmp r12, r15
je 0x180153379
sub r14, r12
lea rsi, [r15 - 0x10]
mov r13d, 0x10
sub r13, r12
mov r8, r14
lea rdx, [rbp + 0xa8]
mov rcx, r12
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
sete al
test al, al
je 0x18015336b
lea rax, [rsi + r13]
and rax, 0xfffffffffffffff0
cmp rax, 0x20
jl 0x18015335e
movups xmm0, xmmword [rsi]
lea r9, [rbp + 0x90]
mov byte [rsp + 0x20], dil
mov r8, rsi
mov rdx, rsi
mov rcx, r12
movups xmmword [rbp + 0x90], xmm0
call fcn.18001c1c0
sub r15, 0x10
sub rsi, 0x10
cmp r12, r15
jne 0x180153311
mov qword [rbp - 0x78], r15
movabs rsi, 0x100000001b3
mov r10, qword [rsp + 0x60]
movsxd rax, ebx
mov r8, qword [r10]
lea r13, [rax + rax*4]
shl r13, 4
mov qword [rbp + 0x80], r13
cmp byte [r8 + r13 + 0x3a], 0
jne 0x180153a54
movsxd rax, dword [rbp + 0xac]
lea r9, [rax + rax*4]
add r9, r9
cmp byte [r8 + r9*8 + 0x3a], 0
jne 0x180153a54
movabs rax, 0xcbf29ce484222325
movzx edx, bl
xor rdx, rax
movzx eax, byte [rbp + 0xa9]
imul rdx, rsi
xor rdx, rax
movzx eax, byte [rbp + 0xaa]
imul rdx, rsi
xor rdx, rax
movzx eax, byte [rbp + 0xab]
imul rdx, rsi
xor rdx, rax
mov rax, qword [rbp - 8]
imul rdx, rsi
and rdx, qword [rbp + 0x10]
add rdx, rdx
mov rcx, qword [rax + rdx*8 + 8]
cmp rcx, qword [rbp - 0x18]
je 0x180153426
mov rax, qword [rax + rdx*8]
cmp ebx, dword [rcx + 0x10]
je 0x180153428
cmp rcx, rax
je 0x180153426
mov rcx, qword [rcx + 8]
cmp ebx, dword [rcx + 0x10]
jne 0x180153416
jmp 0x180153428
xor ecx, ecx
mov rax, qword [rbp - 0x18]
test rcx, rcx
cmovne rax, rcx
cmp rax, qword [rbp - 0x18]
jne 0x180153a54
movups xmm0, xmmword [r8 + r9*8]
movups xmm2, xmmword [r8 + r13]
movsd xmm1, qword [r8 + r13 + 0x10]
subsd xmm1, qword [r8 + r9*8 + 0x10]
subpd xmm2, xmm0
mulsd xmm1, xmm1
mulpd xmm2, xmm2
movaps xmm0, xmm2
unpckhpd xmm0, xmm2
addsd xmm2, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm6
jne 0x180153a54
mov rax, qword [r8 + r13 + 0x18]
mov rcx, qword [r8 + r13 + 0x20]
mov qword [rsp + 0x58], rax
mov qword [rbp + 0x90], rcx
cmp rax, rcx
je 0x180153555
nop dword [rax]
movsxd r13, dword [rax]
xor esi, esi
lea r14, [r13*2]
add r14, r13
shl r14, 5
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rbp + 0x140]
mov r12, qword [rax]
mov rcx, qword [r14 + r12]
mov rdx, qword [r14 + r12 + 8]
cmp rcx, rdx
je 0x1801534f1
mov r8d, dword [rbp - 0x28]
call fcn.180161e30
cmp rax, qword [r14 + r12 + 8]
je 0x1801536f1
mov r10, qword [rsp + 0x60]
mov rax, qword [r10 + 0x18]
lea rcx, [r13*4]
add rcx, r13
shl rcx, 4
add rax, rcx
cmp dword [rax + rsi*4], ebx
je 0x180153522
cmp byte [rsi + rax + 0x10], 0x7f
jne 0x1801536f1
cmp byte [rsi + rax + 0x14], 0xff
jne 0x1801536f1
inc rsi
add r14, 0x18
cmp rsi, 4
jl 0x1801534c0
mov rax, qword [rsp + 0x58]
add rax, 4
mov qword [rsp + 0x58], rax
cmp rax, qword [rbp + 0x90]
jne 0x1801534a0
mov r12, qword [rbp - 0x80]
mov r13, qword [rbp + 0x80]
mov r14, qword [r10]
xor ecx, ecx
mov qword [rbp - 0x30], 0
xor eax, eax
xorps xmm0, xmm0
mov qword [rsp + 0x58], rcx
movdqu xmmword [rbp - 0x40], xmm0
mov rsi, qword [r14 + r13 + 0x20]
sub rsi, qword [r14 + r13 + 0x18]
sar rsi, 2
mov qword [rbp + 0x90], rax
test rsi, rsi
je 0x1801535d7
movabs rax, 0x3fffffffffffffff
cmp rsi, rax
ja 0x180153afc
mov rdx, rsi
lea rcx, [rbp + 0x90]
call fcn.18010b300
mov rdx, qword [r14 + r13 + 0x18]
mov rcx, rax
mov r8, qword [r14 + r13 + 0x20]
mov qword [rsp + 0x58], rax
sub r8, rdx
lea rax, [rax + rsi*4]
mov qword [rbp + 0x90], rax
call sub.VCRUNTIME140.dll_memmove
mov r10, qword [rsp + 0x60]
mov rax, qword [r10]
mov r14, qword [rbp + 0x80]
mov r13, qword [rax + r13 + 0x20]
mov r14, qword [r14 + rax + 0x18]
cmp r14, r13
je 0x18015361c
movsxd rsi, dword [r14]
mov rcx, r10
mov edx, esi
call fcn.18012a4a0
mov r10, qword [rsp + 0x60]
lea rcx, [rsi + rsi*4]
add rcx, rcx
add r14, 4
mov rax, qword [r10 + 0x18]
movsd qword [rax + rcx*8 + 0x30], xmm0
cmp r14, r13
jne 0x1801535f0
mov r13, qword [rsp + 0x60]
lea rax, [rbp + 0x20]
mov r9, qword [rbp + 0x38]
mov edx, ebx
mov r8d, dword [rbp + 0xac]
mov rcx, r13
mov byte [rsp + 0x40], 0
mov byte [rsp + 0x38], 1
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x40]
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], rax
call fcn.18005a010
mov rcx, qword [rbp - 0x40]
test eax, eax
jle 0x1801539ce
mov r14, qword [rbp - 0x38]
cmp rcx, r14
je 0x1801539ce
mov r11, qword [rbp + 0x48]
lea rbx, [rcx + 6]
movabs r10, 0x100000001b3
movabs r8, 0xcbf29ce484222325
nop
movzx eax, byte [rbx - 5]
movzx r9d, byte [rbx - 6]
xor r9, r8
imul r9, r10
xor r9, rax
movzx eax, byte [rbx - 4]
imul r9, r10
xor r9, rax
movzx eax, byte [rbx - 3]
imul r9, r10
xor r9, rax
mov rax, qword [rbp + 0x58]
imul r9, r10
mov rdx, r9
and rdx, qword [rbp + 0x70]
add rdx, rdx
mov rcx, qword [rax + rdx*8 + 8]
cmp rcx, r11
je 0x1801536fa
mov rdx, qword [rax + rdx*8]
mov eax, dword [rbx - 6]
cmp eax, dword [rcx + 0x10]
je 0x1801536fc
cmp rcx, rdx
je 0x1801536fa
mov rcx, qword [rcx + 8]
cmp eax, dword [rcx + 0x10]
jne 0x1801536e1
jmp 0x1801536fc
mov r12, qword [rbp - 0x80]
jmp 0x180153a54
xor ecx, ecx
test rcx, rcx
mov rax, r11
cmovne rax, rcx
cmp rax, r11
je 0x1801539b9
movzx eax, byte [rbx - 1]
movzx edx, byte [rbx - 2]
xor rdx, r8
mov r8, qword [rbp + 0x58]
imul rdx, r10
xor rdx, rax
movzx eax, byte [rbx]
imul rdx, r10
xor rdx, rax
movzx eax, byte [rbx + 1]
imul rdx, r10
xor rdx, rax
imul rdx, r10
and rdx, qword [rbp + 0x70]
add rdx, rdx
mov rcx, qword [r8 + rdx*8 + 8]
cmp rcx, r11
je 0x180153770
mov eax, dword [rbx - 2]
mov r8, qword [r8 + rdx*8]
cmp eax, dword [rcx + 0x10]
je 0x180153772
nop dword [rax + rax]
cmp rcx, r8
je 0x180153770
mov rcx, qword [rcx + 8]
cmp eax, dword [rcx + 0x10]
jne 0x180153760
jmp 0x180153772
xor ecx, ecx
test rcx, rcx
mov rax, r11
cmovne rax, rcx
cmp rax, r11
je 0x1801539af
mov r8, qword [r13]
movsxd r10, dword [rbx - 6]
movsxd rsi, dword [rbx - 2]
and r9, qword [rbp + 0x10]
mov rax, qword [rbp - 8]
add r9, r9
lea rdx, [r10 + r10*4]
add rdx, rdx
lea rcx, [rsi + rsi*4]
add rcx, rcx
movups xmm1, xmmword [r8 + rdx*8]
movups xmm0, xmmword [r8 + rcx*8]
movsd xmm6, qword [r8 + rdx*8 + 0x10]
subsd xmm6, qword [r8 + rcx*8 + 0x10]
mov rcx, qword [rax + r9*8 + 8]
subpd xmm1, xmm0
mulsd xmm6, xmm6
mulpd xmm1, xmm1
movaps xmm0, xmm1
unpckhpd xmm0, xmm1
addsd xmm1, xmm0
addsd xmm6, xmm1
cmp rcx, qword [rbp - 0x18]
je 0x180153803
mov rax, qword [rax + r9*8]
cmp r10d, dword [rcx + 0x10]
je 0x180153805
cmp rcx, rax
je 0x180153803
mov rcx, qword [rcx + 8]
cmp r10d, dword [rcx + 0x10]
jne 0x1801537f2
jmp 0x180153805
xor ecx, ecx
mov rax, qword [rbp - 0x18]
test rcx, rcx
cmovne rax, rcx
cmp rax, qword [rbp - 0x18]
jne 0x180153894
movsd qword [rbp - 0x48], xmm6
mov dword [rbp - 0x50], r10d
mov dword [rbp - 0x4c], esi
cmp r15, qword [rbp - 0x70]
je 0x18015383a
movups xmm0, xmmword [rbp - 0x50]
movups xmmword [r15], xmm0
add r15, 0x10
mov qword [rbp - 0x78], r15
jmp 0x180153856
lea r8, [rbp - 0x50]
mov rdx, r15
lea rcx, [rbp - 0x80]
call fcn.180016ec0
movzx edi, byte [rbp - 0x68]
mov r15, qword [rbp - 0x78]
mov r12, qword [rbp - 0x80]
mov rdx, r15
sub rdx, r12
sar rdx, 4
cmp rdx, 2
jl 0x180153890
movups xmm0, xmmword [r15 - 0x10]
dec rdx
mov byte [rsp + 0x20], dil
lea r9, [rbp + 0x80]
xor r8d, r8d
mov rcx, r12
movups xmmword [rbp + 0x80], xmm0
call fcn.18001c4e0
nop dword [rax]
mov r11, qword [rbp + 0x48]
movzx edx, byte [rbx - 2]
movabs r10, 0x100000001b3
mov r8, qword [rbp - 8]
movabs rax, 0xcbf29ce484222325
xor rdx, rax
movzx eax, byte [rbx - 1]
imul rdx, r10
xor rdx, rax
movzx eax, byte [rbx]
imul rdx, r10
xor rdx, rax
movzx eax, byte [rbx + 1]
imul rdx, r10
xor rdx, rax
imul rdx, r10
and rdx, qword [rbp + 0x10]
add rdx, rdx
mov rcx, qword [r8 + rdx*8 + 8]
cmp rcx, qword [rbp - 0x18]
je 0x180153905
mov eax, dword [rbx - 2]
mov r8, qword [r8 + rdx*8]
cmp eax, dword [rcx + 0x10]
je 0x180153907
cmp rcx, r8
je 0x180153905
mov rcx, qword [rcx + 8]
cmp eax, dword [rcx + 0x10]
jne 0x1801538f5
jmp 0x180153907
xor ecx, ecx
mov rax, qword [rbp - 0x18]
test rcx, rcx
cmovne rax, rcx
cmp rax, qword [rbp - 0x18]
jne 0x1801539af
mov eax, dword [rbx - 2]
mov ecx, dword [rbx - 6]
mov dword [rbp - 0x60], eax
mov dword [rbp - 0x5c], ecx
movsd qword [rbp - 0x58], xmm6
cmp r15, qword [rbp - 0x70]
je 0x180153945
movups xmm0, xmmword [rbp - 0x60]
movups xmmword [r15], xmm0
add r15, 0x10
mov qword [rbp - 0x78], r15
jmp 0x18015396b
lea r8, [rbp - 0x60]
mov rdx, r15
lea rcx, [rbp - 0x80]
call fcn.180016ec0
movzx edi, byte [rbp - 0x68]
movabs r10, 0x100000001b3
mov r15, qword [rbp - 0x78]
mov r12, qword [rbp - 0x80]
mov rdx, r15
sub rdx, r12
sar rdx, 4
cmp rdx, 2
jl 0x1801539ab
movups xmm0, xmmword [r15 - 0x10]
dec rdx
mov byte [rsp + 0x20], dil
lea r9, [rbp + 0x80]
xor r8d, r8d
mov rcx, r12
movups xmmword [rbp + 0x80], xmm0
call fcn.18001c4e0
movabs r10, 0x100000001b3
mov r11, qword [rbp + 0x48]
movabs r8, 0xcbf29ce484222325
add rbx, 8
lea rax, [rbx - 6]
cmp rax, r14
jne 0x180153690
mov rcx, qword [rbp - 0x40]
mov r8, qword [rsp + 0x58]
test r8, r8
je 0x180153a1a
mov rcx, qword [rbp + 0x90]
mov rax, r8
sub rcx, r8
and rcx, 0xfffffffffffffffc
cmp rcx, 0x1000
jb 0x180153a0b
mov r8, qword [r8 - 8]
add rcx, 0x27
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180153af5
mov rdx, rcx
mov rcx, r8
call sub.FactoryServer_Core.dll_public:_static_void___cdecl_FMemory::Free_void____ptr64_
mov rcx, qword [rbp - 0x40]
test rcx, rcx
je 0x180153a54
mov rdx, qword [rbp - 0x30]
mov rax, rcx
sub rdx, rcx
and rdx, 0xfffffffffffffff8
cmp rdx, 0x1000
jb 0x180153a4f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180153af5
call sub.FactoryServer_Core.dll_public:_static_void___cdecl_FMemory::Free_void____ptr64_
cmp r12, r15
jne 0x18015329e
mov rdx, qword [rbp + 0x20]
test rdx, rdx
je 0x180153a8a
mov r8, qword [rbp + 0x30]
lea rcx, [rbp + 0x20]
sub r8, rdx
sar r8, 2
call fcn.18005b9b0
xorps xmm0, xmm0
mov qword [rbp + 0x30], 0
movdqu xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x40]
call fcn.1800ce3b0
lea rcx, [rbp - 0x80]
call fcn.1800cecb0
lea rcx, [rbp - 0x20]
call fcn.1800ce3b0
lea rcx, [rsp + 0x68]
call fcn.180027160
movaps xmm6, xmmword [rsp + 0x1d0]
mov rdi, qword [rsp + 0x1e8]
mov rsi, qword [rsp + 0x1f0]
mov rbx, qword [rsp + 0x228]
mov r15, qword [rsp + 0x1e0]
mov rcx, qword [rbp + 0xc8]
xor rcx, rsp
call fcn.180163c20
add rsp, 0x1f8
pop r14
pop r13
pop r12
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180059960
int3