Function at 0x180195810
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
push rbp
push rbx
lea rbp, [rax - 0x5f]
sub rsp, 0xc8
mov qword [rax - 0x18], rsi
mov rbx, rcx
mov qword [rax - 0x20], rdi
mov qword [rax - 0x38], r14
mov qword [rax - 0x40], r15
mov r15, qword [0x1802eec40]
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movsxd rax, dword [rcx + 0x74]
mov r14, qword [r15 + 0x4078]
movaps xmmword [rsp + 0x50], xmm9
cmp eax, 0xffffffff
je 0x1801958f4
mov rsi, qword [rcx + 0x188]
imul rdi, rax, 0x70
add rdi, qword [rcx + 0x18]
cmp byte [rsi + 0x159], 0
je 0x180195879
call fcn.18014ef90
test byte [rbx + 0x94], 1
je 0x180195888
lea rax, [rdi + 0x48]
jmp 0x180195899
cmp byte [rbx + 0x242], 0
lea rax, [rdi + 0x44]
jne 0x180195899
lea rax, [rdi + 0x40]
movss xmm0, dword [rax]
maxss xmm0, dword [rsi + 0x130]
movss dword [rax], xmm0
cmp byte [rdi + 0x62], 0
je 0x1801958d3
movss xmm1, dword [rsi + 0x134]
movss xmm0, dword [rbx + 0x80]
addss xmm1, dword [rbx + 0x88]
maxss xmm0, xmm1
movss dword [rbx + 0x80], xmm0
mov eax, dword [rsi + 0x1d8]
mov dword [rdi + 0x3c], eax
movss xmm0, dword [rbx + 0x8c]
maxss xmm0, dword [rsi + 0x154]
movss dword [rbx + 0x8c], xmm0
cmp byte [r15 + 0x6140], 0
je 0x18019590f
xor r8d, r8d
lea rdx, [0x180233c94]
xor ecx, ecx
call fcn.180155a90
mov eax, dword [rbx + 0x80]
mov dword [r14 + 0x11c], eax
mov r8d, dword [rbx + 0x70]
movsx r9d, word [rbx + 0x228]
movss xmm7, dword [rbx + 0x7c]
movss xmm6, dword [rbx + 0x80]
lea eax, [r8 + 1]
mov dword [rbp + 0x6f], r9d
mov dword [rbp + 0x67], eax
movsx eax, word [rbx + 0x226]
mov dword [rbp + 0x77], eax
movsx eax, word [rbx + 0x78]
test eax, eax
jne 0x18019595b
lea rcx, [rbx + 0x1a8]
jmp 0x18019596f
dec eax
movsxd rcx, eax
mov rax, qword [rbx + 0x1c8]
lea rdx, [rcx + rcx*2]
lea rcx, [rax + rdx*8]
test byte [rbx + 0x94], 1
mov qword [rbp - 0x39], rcx
je 0x18019599e
test r8d, r8d
je 0x18019598d
test dword [rbx + 0x94], 0x10000
je 0x18019599e
movaps xmm0, xmm6
subss xmm0, xmm7
addss xmm0, dword [rcx + 8]
movss dword [rcx + 8], xmm0
movss xmm9, dword [0x1801d8180]
xor edi, edi
comiss xmm6, dword [rbx + 0x124]
jb 0x180195d48
movss xmm0, dword [rbx + 0x12c]
comiss xmm0, xmm7
jb 0x180195d48
cmp word [rbx + 0x20a], 0xffff
mov qword [rsp + 0xb0], r12
mov qword [rsp + 0xa8], r13
movaps xmmword [rsp + 0x60], xmm8
je 0x180195a05
movss xmm0, dword [r15 + 0x114]
comiss xmm0, xmm7
jb 0x180195a05
comiss xmm6, xmm0
jbe 0x180195a05
cmp dword [rcx + 0x14], edi
jge 0x180195a05
mov eax, dword [rbx + 0x70]
mov dword [rcx + 0x14], eax
mov eax, dword [rbx + 0x9c]
lea r15, [rbx + 4]
mov r12d, edi
cmp eax, 0x1000000
jne 0x180195a38
test byte [r15], 0x40
je 0x180195a3b
mov ecx, dword [rbx + 0x98]
movaps xmm1, xmm9
and ecx, 1
add ecx, 0x2f
call fcn.180150cf0
mov r9d, dword [rbp + 0x6f]
mov r12d, eax
mov esi, dword [rbx + 0xa0]
mov r13d, edi
cmp esi, 0x1000000
cmove esi, edi
cmp dword [rbx + 0x70], edi
jle 0x180195a74
test byte [r15], 0x80
je 0x180195a74
test dword [rbx + 0x94], 0x10000
je 0x180195a6d
mov r13d, dword [rbx + 0xa4]
jmp 0x180195a74
mov r13d, dword [rbx + 0xa8]
movzx r15d, word [rbx + 0x22e]
mov eax, esi
shr r15w, 0xf
or eax, r13d
xor r15b, 1
or eax, r12d
jne 0x180195a9a
cmp dword [rbp + 0x67], r9d
je 0x180195a9a
test r15b, r15b
je 0x180195acf
test dword [rbx + 4], 0x100000
jne 0x180195ab9
movups xmm0, xmmword [rbx + 0x140]
mov rax, qword [r14 + 0x2b0]
movups xmmword [rbp - 0x49], xmm0
movups xmmword [rax + 0x60], xmm0
mov rdx, qword [r14 + 0x2b0]
xor r8d, r8d
mov rcx, qword [rbx + 0x1a0]
call fcn.180187000
xorps xmm8, xmm8
test r12d, r12d
jne 0x180195ae0
test esi, esi
je 0x180195b8b
movss xmm0, dword [rbx + 0x110]
movaps xmm1, xmm7
movaps xmm2, xmm6
maxss xmm0, dword [rbx + 0x130]
maxss xmm1, dword [rbx + 0x134]
minss xmm2, dword [rbx + 0x13c]
movss dword [rbp - 0x49], xmm0
movss xmm0, dword [rbx + 0x118]
movss dword [rbp - 0x45], xmm1
movss dword [rbp - 0x3d], xmm2
minss xmm0, dword [rbx + 0x138]
movss dword [rbp - 0x41], xmm0
test r12d, r12d
je 0x180195b60
comiss xmm2, xmm1
jbe 0x180195b60
mov rcx, qword [r14 + 0x2b0]
lea r8, [rbp - 0x41]
mov dword [rsp + 0x28], edi
lea rdx, [rbp - 0x49]
mov r9d, r12d
movss dword [rsp + 0x20], xmm8
call fcn.180181310
movss xmm2, dword [rbp - 0x3d]
movss xmm1, dword [rbp - 0x45]
test esi, esi
je 0x180195b8b
comiss xmm2, xmm1
jbe 0x180195b8b
mov rcx, qword [r14 + 0x2b0]
lea r8, [rbp - 0x41]
mov dword [rsp + 0x28], edi
lea rdx, [rbp - 0x49]
mov r9d, esi
movss dword [rsp + 0x20], xmm8
call fcn.180181310
mov r12, qword [rsp + 0xb0]
test r15b, r15b
je 0x180195c69
mov rsi, qword [rbx + 0x38]
movsx rax, word [rbx + 0x22e]
lea r15, [rsi + rax*8]
cmp rsi, r15
ja 0x180195c69
movsx rax, word [rsi + 4]
movss xmm1, dword [rbx + 0x7c]
maxss xmm1, dword [rbx + 0x134]
movss xmm0, dword [rbx + 0x80]
minss xmm0, dword [rbx + 0x13c]
imul rcx, rax, 0x70
comiss xmm0, xmm1
mov rax, qword [rbx + 0x18]
movss xmm3, dword [rcx + rax + 0xc]
movss xmm2, dword [rcx + rax + 8]
maxss xmm2, dword [rbx + 0x110]
minss xmm3, dword [rbx + 0x118]
movss dword [rbp - 0x45], xmm1
movss dword [rbp - 0x3d], xmm0
maxss xmm2, dword [rbx + 0x130]
minss xmm3, dword [rbx + 0x138]
movss dword [rbp - 0x49], xmm2
movss dword [rbp - 0x41], xmm3
maxss xmm2, dword [rcx + rax + 0x20]
movss dword [rbp - 0x49], xmm2
minss xmm3, dword [rcx + rax + 0xc]
movss dword [rbp - 0x41], xmm3
jbe 0x180195c5c
mov r9d, dword [rsi]
lea r8, [rbp - 0x41]
mov rcx, qword [r14 + 0x2b0]
lea rdx, [rbp - 0x49]
mov dword [rsp + 0x28], edi
movss dword [rsp + 0x20], xmm8
call fcn.180181310
add rsi, 8
cmp rsi, r15
jbe 0x180195bb5
movaps xmm8, xmmword [rsp + 0x60]
test r13d, r13d
je 0x180195ccf
comiss xmm7, dword [rbx + 0x134]
jb 0x180195ccf
movss xmm0, dword [rbx + 0x13c]
comiss xmm0, xmm7
jbe 0x180195ccf
movss xmm0, dword [rbx + 0xb0]
lea r8, [rbp + 0x7f]
movss xmm1, dword [rbx + 0xac]
lea rdx, [rbp - 0x49]
mov rcx, qword [r14 + 0x2b0]
mov r9d, r13d
movss dword [rbp + 0x7f], xmm0
movss dword [rbp - 0x49], xmm1
movss dword [rbp + 0x83], xmm7
movss dword [rbp - 0x45], xmm7
movss dword [rsp + 0x20], xmm9
call fcn.180180120
mov esi, dword [rbp + 0x67]
mov r9d, dword [rbp + 0x6f]
mov r13, qword [rsp + 0xa8]
cmp esi, r9d
jne 0x180195d4b
comiss xmm6, dword [rbx + 0x134]
jb 0x180195d4b
movss xmm0, dword [rbx + 0x13c]
comiss xmm0, xmm6
jbe 0x180195d4b
movss xmm0, dword [rbx + 0xb0]
lea r8, [rbp + 0x7f]
movss xmm1, dword [rbx + 0xac]
lea rdx, [rbp - 0x49]
mov r9d, dword [rbx + 0xa4]
mov rcx, qword [r14 + 0x2b0]
movss dword [rbp + 0x7f], xmm0
movss dword [rbp - 0x49], xmm1
movss dword [rbp + 0x83], xmm6
movss dword [rbp - 0x45], xmm6
movss dword [rsp + 0x20], xmm9
call fcn.180180120
mov r9d, dword [rbp + 0x6f]
jmp 0x180195d4b
mov esi, dword [rbp + 0x67]
cmp esi, dword [rbp + 0x77]
mov rsi, qword [rsp + 0xc0]
movaps xmm7, xmmword [rsp + 0x70]
movaps xmm6, xmmword [rsp + 0x80]
mov r15, qword [rsp + 0x98]
jne 0x180195eff
mov edx, edi
cmp dword [rbx + 0x6c], edi
jle 0x180195d94
mov rcx, rdi
nop dword [rax + rax]
mov rax, qword [rbx + 0x18]
lea rcx, [rcx + 0x70]
inc edx
mov byte [rax + rcx - 6], dil
cmp edx, dword [rbx + 0x6c]
jl 0x180195d80
movss xmm1, dword [rbx + 0x80]
addss xmm1, xmm9
mov rax, qword [rbp - 0x39]
maxss xmm1, dword [r14 + 0x224]
movaps xmm0, xmm1
subss xmm0, dword [rbx + 0xf4]
movss dword [rax + 0xc], xmm0
cmp dword [rbp + 0x67], r9d
jne 0x180195eff
movzx eax, word [rbx + 0x234]
mov byte [rbx + 0x242], 1
minss xmm1, dword [r14 + 0x22c]
movss dword [rbx + 0x154], xmm1
movss dword [rbx + 0x134], xmm1
movss xmm0, dword [r14 + 0x22c]
movss xmm1, dword [rbx + 0x80]
movss dword [rbx + 0x15c], xmm0
movss dword [rbx + 0x13c], xmm0
movaps xmm0, xmm1
addss xmm1, dword [rbx + 0x114]
subss xmm0, dword [rbx + 0x7c]
mov word [rbx + 0x232], ax
subss xmm1, dword [rbx + 0xf4]
movss dword [r14 + 0x11c], xmm1
movss dword [rbx + 0x80], xmm1
subss xmm1, xmm0
movss dword [rbx + 0x7c], xmm1
cmp dword [rbx + 0x6c], edi
jle 0x180195e74
mov rdx, rdi
mov rcx, qword [rbx + 0x18]
lea rdx, [rdx + 0x70]
inc edi
movzx eax, word [rdx + rcx - 0x10]
mov word [rdx + rcx - 0x14], ax
mov eax, dword [rbx + 0x154]
mov dword [rdx + rcx - 0x4c], eax
cmp edi, dword [rbx + 0x6c]
jl 0x180195e51
mov rax, qword [rbx + 0x18]
movss xmm1, dword [rax + 0x20]
movss xmm2, dword [rax + 0x24]
movss xmm3, dword [rax + 0x28]
movss xmm4, dword [rax + 0x2c]
movups xmm0, xmmword [rax + 0x20]
mov rax, qword [r14 + 0x2b0]
movups xmmword [r14 + 0x250], xmm0
movss dword [rax + 0x60], xmm1
movss dword [rax + 0x64], xmm2
movss dword [rax + 0x68], xmm3
movss dword [rax + 0x6c], xmm4
mov rax, qword [r14 + 0x2b0]
movsxd rdx, dword [rax + 0x98]
mov rcx, qword [rax + 0xa0]
add rdx, rdx
movss dword [rcx + rdx*8 - 0x10], xmm1
movss dword [rcx + rdx*8 - 0xc], xmm2
movss dword [rcx + rdx*8 - 8], xmm3
movss dword [rcx + rdx*8 - 4], xmm4
mov rax, qword [rbx + 0x18]
mov rdx, qword [r14 + 0x2b0]
mov rcx, qword [rbx + 0x1a0]
movzx r8d, word [rax + 0x5c]
call fcn.180187000
test byte [rbx + 0x94], 1
movaps xmm9, xmmword [rsp + 0x50]
mov r14, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0xb8]
mov byte [rbx + 0x237], 0
jne 0x180195f2b
inc dword [rbx + 0x98]
add rsp, 0xc8
pop rbx
pop rbp
ret