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

Disassembly:
mov rax, rsp
push rbp
push rbx
lea rbp, [rax - 0x5f]
sub rsp, 0xd8
mov qword [rax - 0x28], r12
mov rbx, rcx
mov qword [rax - 0x30], r13
mov r13, qword [0x1800a7e70]
movaps xmmword [rsp + 0x60], xmm9
movaps xmmword [rsp + 0x50], xmm10
movaps xmmword [rsp + 0x40], xmm11
mov rax, qword [r13 + 0x1c08]
mov qword [rbp + 0x77], rax
movsxd rax, dword [rcx + 0x7c]
cmp eax, 0xffffffff
je 0x18003e548
mov rdx, qword [rbx + 0x190]
imul rcx, rax, 0x68
add rcx, qword [rbx + 0x18]
test byte [rbx + 0x98], 1
je 0x18003e4db
mov eax, 0x48
jmp 0x18003e4f1
cmp byte [rbx + 0x204], 0
mov eax, 0x40
mov r8d, 0x44
cmovne eax, r8d
movss xmm0, dword [rax + rcx]
maxss xmm0, dword [rdx + 0xf0]
movss dword [rax + rcx], xmm0
movss xmm1, dword [rdx + 0xf4]
movss xmm0, dword [rbx + 0x88]
addss xmm1, dword [rbx + 0xc8]
maxss xmm0, xmm1
movss dword [rbx + 0x88], xmm0
mov eax, dword [rdx + 0x194]
mov dword [rcx + 0x3c], eax
movss xmm0, dword [rbx + 0x90]
maxss xmm0, dword [rdx + 0x114]
movss dword [rbx + 0x90], xmm0
mov qword [rsp + 0xd0], rsi
xor r12d, r12d
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xb0], r14
mov qword [rsp + 0xa8], r15
cmp byte [r13 + 0x30ec], r12b
je 0x18003e6d9
mov rax, qword [r13 + 0x3118]
lea r14, [0x180094918]
mov rdx, qword [r13 + 0x3110]
mov rdi, r14
mov rsi, qword [r13 + 0x1c08]
mov qword [rbp + 0x6f], rax
mov qword [r13 + 0x3118], r12
mov qword [r13 + 0x3110], r12
cmp r14, 0xffffffffffffffff
jae 0x18003e5cd
nop
movzx ecx, byte [rdi]
test cl, cl
je 0x18003e5cd
lea rax, [rdi + 1]
cmp cl, 0x23
jne 0x18003e5c4
cmp byte [rax], cl
je 0x18003e5cd
mov rdi, rax
cmp rax, 0xffffffffffffffff
jb 0x18003e5b0
mov r15, 0xffffffffffffffff
test rdx, rdx
je 0x18003e5f3
mov r8, r15
nop dword [rax]
inc r8
cmp byte [rdx + r8], r12b
jne 0x18003e5e0
add r8, rdx
xor ecx, ecx
call fcn.180029190
mov ecx, dword [r13 + 0x3128]
mov eax, dword [rsi + 0x158]
cmp ecx, eax
jle 0x18003e60d
mov dword [r13 + 0x3128], eax
mov ecx, eax
mov r12d, dword [rsi + 0x158]
sub r12d, ecx
nop word [rax + rax]
mov r8, rdi
mov edx, 0xa
sub r8, r14
mov rcx, r14
call fcn.180057ee0
test rax, rax
mov rsi, rdi
cmovne rsi, rax
cmp r14, rsi
jne 0x18003e647
cmp rsi, rdi
je 0x18003e6ab
mov r9d, esi
lea edx, [r12*4]
sub r9d, r14d
cmp byte [r13 + 0x3124], 0
jne 0x18003e664
mov edx, 1
lea r8, [0x18008e3ad]
mov qword [rsp + 0x20], r14
lea rcx, str._s_.s
call fcn.180029150
mov byte [r13 + 0x3124], 0
cmp byte [rsi], 0xa
jne 0x18003e69d
lea rcx, [0x1800941b4]
call fcn.180029150
mov byte [r13 + 0x3124], 1
cmp rsi, rdi
je 0x18003e6ab
lea r14, [rsi + 1]
jmp 0x18003e620
mov rax, qword [rbp + 0x6f]
mov r12d, 0
test rax, rax
je 0x18003e6d9
nop word [rax + rax]
cmp byte [rax + r15 + 1], r12b
lea r15, [r15 + 1]
jne 0x18003e6c0
lea r8, [rax + r15]
mov rdx, rax
xor ecx, ecx
call fcn.180029190
mov r13, qword [rbp + 0x77]
mov eax, dword [rbx + 0x88]
mov dword [r13 + 0xdc], eax
mov r9d, dword [rbx + 0x78]
movsx r10d, byte [rbx + 0x1f2]
movss xmm10, dword [rbx + 0x84]
movss xmm9, dword [rbx + 0x88]
mov dword [rbp + 0x77], r10d
lea eax, [r9 + 1]
mov dword [rbp + 0x67], eax
movsx eax, byte [rbx + 0x1f1]
mov dword [rbp + 0x6f], eax
test r9d, r9d
jne 0x18003e733
movaps xmm0, xmm9
subss xmm0, xmm10
movss dword [rbx + 0xd8], xmm0
comiss xmm9, dword [rbx + 0x128]
movss xmm11, dword [0x1800956f8]
jb 0x18003ed00
movss xmm0, dword [rbx + 0x130]
comiss xmm0, xmm10
jb 0x18003ed00
mov eax, dword [rbx + 0xa0]
lea r8, [rbx + 4]
movaps xmmword [rsp + 0x70], xmm8
mov esi, r12d
cmp eax, 0x1000000
jne 0x18003e7b5
test byte [r8], 0x40
je 0x18003e7b7
mov rcx, qword [0x1800a7e70]
mov eax, dword [rbx + 0x9c]
and eax, 1
add rax, rax
movups xmm0, xmmword [rcx + rax*8 + 0x18f0]
movups xmmword [rbp - 0x59], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rcx + 0x1558]
lea rcx, [rbp - 0x59]
movss dword [rbp - 0x4d], xmm0
call fcn.180018010
mov esi, eax
mov edi, dword [rbx + 0xa4]
mov r15d, r12d
cmp edi, 0x1000000
cmove edi, r12d
test r9d, r9d
jg 0x18003e7df
mov rax, qword [rbx + 0x188]
cmp qword [rbx + 0x190], rax
jne 0x18003e801
test byte [r8], 0x80
je 0x18003e801
test dword [rbx + 0x98], 0x10000
je 0x18003e7fa
mov r15d, dword [rbx + 0xa8]
jmp 0x18003e801
mov r15d, dword [rbx + 0xac]
movzx r14d, byte [rbx + 0x1f5]
mov eax, edi
shr r14b, 7
or eax, r15d
or eax, esi
jne 0x18003e824
lea eax, [r9 + 1]
cmp eax, r10d
je 0x18003e824
test r14b, r14b
jne 0x18003e85c
test dword [r8], 0x100000
jne 0x18003e846
movups xmm0, xmmword [rbx + 0x144]
mov rax, qword [r13 + 0x280]
movups xmmword [rbp - 0x59], xmm0
movups xmmword [rax + 0x88], xmm0
mov rdx, qword [r13 + 0x280]
xor r8d, r8d
mov rcx, qword [rbx + 0x1a8]
call fcn.1800367f0
xorps xmm8, xmm8
test esi, esi
jne 0x18003e86c
test edi, edi
je 0x18003e930
movss xmm0, dword [rbx + 0x114]
movaps xmmword [rsp + 0x90], xmm6
movaps xmm6, xmm10
movaps xmmword [rsp + 0x80], xmm7
movaps xmm7, xmm9
maxss xmm0, dword [rbx + 0x134]
maxss xmm6, dword [rbx + 0x138]
minss xmm7, dword [rbx + 0x140]
movss dword [rbp - 0x59], xmm0
movss xmm0, dword [rbx + 0x11c]
movss dword [rbp - 0x55], xmm6
movss dword [rbp - 0x4d], xmm7
minss xmm0, dword [rbx + 0x13c]
movss dword [rbp - 0x51], xmm0
test esi, esi
je 0x18003e8f4
comiss xmm7, xmm6
jbe 0x18003e8f4
mov rcx, qword [r13 + 0x280]
lea r8, [rbp - 0x51]
mov dword [rsp + 0x28], r12d
lea rdx, [rbp - 0x59]
mov r9d, esi
movss dword [rsp + 0x20], xmm8
call fcn.180035f90
test edi, edi
je 0x18003e920
comiss xmm7, xmm6
jbe 0x18003e920
mov rcx, qword [r13 + 0x280]
lea r8, [rbp - 0x51]
mov dword [rsp + 0x28], r12d
lea rdx, [rbp - 0x59]
mov r9d, edi
movss dword [rsp + 0x20], xmm8
call fcn.180035f90
movaps xmm6, xmmword [rsp + 0x90]
movaps xmm7, xmmword [rsp + 0x80]
test r14b, r14b
jne 0x18003ea1a
mov rdi, qword [rbx + 0x38]
movsx rax, byte [rbx + 0x1f5]
lea rsi, [rdi + rax*8]
cmp rdi, rsi
ja 0x18003ea1a
movsx rax, byte [rdi + 4]
imul rcx, rax, 0x68
mov rax, qword [rbx + 0x18]
cmp byte [rcx + rax + 0x54], 0xff
movss xmm3, dword [rcx + rax + 0xc]
movss xmm2, dword [rcx + rax + 8]
movaps xmm1, xmm3
jne 0x18003e97d
subss xmm2, dword [rbx + 0xcc]
cmp byte [rcx + rax + 0x55], 0xff
jne 0x18003e98c
addss xmm1, dword [rbx + 0xd0]
movss xmm0, dword [rbx + 0x84]
maxss xmm0, dword [rbx + 0x138]
maxss xmm2, dword [rbx + 0x134]
minss xmm1, dword [rbx + 0x13c]
movss xmm4, dword [rcx + rax + 0x20]
movss dword [rbp - 0x55], xmm0
comiss xmm2, xmm4
movss xmm0, dword [rbx + 0x88]
minss xmm0, dword [rbx + 0x140]
movss dword [rbp - 0x59], xmm2
movss dword [rbp - 0x51], xmm1
movss dword [rbp - 0x4d], xmm0
jae 0x18003e9e0
movss dword [rbp - 0x59], xmm4
comiss xmm3, xmm1
ja 0x18003e9ea
movss dword [rbp - 0x51], xmm3
mov r9d, dword [rdi]
lea r8, [rbp - 0x51]
mov rcx, qword [r13 + 0x280]
lea rdx, [rbp - 0x59]
mov dword [rsp + 0x28], r12d
movss dword [rsp + 0x20], xmm8
call fcn.180035f90
add rdi, 8
cmp rdi, rsi
jbe 0x18003e952
movaps xmm8, xmmword [rsp + 0x70]
test r15d, r15d
je 0x18003ea84
comiss xmm10, dword [rbx + 0x138]
jb 0x18003ea84
movss xmm0, dword [rbx + 0x140]
comiss xmm0, xmm10
jbe 0x18003ea84
movss xmm0, dword [rbx + 0xb4]
lea r8, [rbp + 0x7f]
movss xmm1, dword [rbx + 0xb0]
lea rdx, [rbp - 0x59]
mov rcx, qword [r13 + 0x280]
mov r9d, r15d
movss dword [rbp + 0x7f], xmm0
movss dword [rbp - 0x59], xmm1
movss dword [rbp + 0x83], xmm10
movss dword [rbp - 0x55], xmm10
movss dword [rsp + 0x20], xmm11
call fcn.180035d20
mov r9d, dword [rbp + 0x67]
mov r10d, dword [rbp + 0x77]
cmp r9d, r10d
jne 0x18003eafc
comiss xmm9, dword [rbx + 0x138]
jb 0x18003eafc
movss xmm0, dword [rbx + 0x140]
comiss xmm0, xmm9
jbe 0x18003eafc
movss xmm0, dword [rbx + 0xb4]
lea r8, [rbp + 0x7f]
movss xmm1, dword [rbx + 0xb0]
lea rdx, [rbp - 0x59]
mov r9d, dword [rbx + 0xa8]
mov rcx, qword [r13 + 0x280]
movss dword [rbp + 0x7f], xmm0
movss dword [rbp - 0x59], xmm1
movss dword [rbp + 0x83], xmm9
movss dword [rbp - 0x55], xmm9
movss dword [rsp + 0x20], xmm11
call fcn.180035d20
mov r9d, dword [rbp + 0x67]
mov r10d, dword [rbp + 0x77]
mov eax, dword [rbp + 0x6f]
movaps xmm10, xmmword [rsp + 0x50]
movaps xmm9, xmmword [rsp + 0x60]
mov r15, qword [rsp + 0xa8]
mov r14, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xd0]
cmp r9d, eax
jne 0x18003eb60
cmp dword [rbx + 0x74], 0
mov edx, r12d
jle 0x18003eb60
mov r8, r12
nop dword [rax]
movsx eax, byte [rbx + 0x1f4]
lea r8, [r8 + 0x68]
cmp edx, eax
mov rax, qword [rbx + 0x18]
setl cl
inc edx
mov byte [r8 + rax - 6], cl
cmp edx, dword [rbx + 0x74]
jl 0x18003eb40
cmp r9d, r10d
jne 0x18003ecca
movss xmm1, dword [rbx + 0x88]
movzx eax, byte [rbx + 0x1f8]
movaps xmm0, xmm1
addss xmm0, xmm11
mov byte [rbx + 0x204], 1
maxss xmm0, dword [r13 + 0x1f4]
minss xmm0, dword [r13 + 0x1fc]
movss dword [rbx + 0x158], xmm0
movss dword [rbx + 0x138], xmm0
movss xmm0, dword [r13 + 0x1fc]
movss dword [rbx + 0x160], xmm0
movss dword [rbx + 0x140], xmm0
movaps xmm0, xmm1
addss xmm1, dword [rbx + 0x118]
subss xmm0, dword [rbx + 0x84]
mov byte [rbx + 0x1f7], al
subss xmm1, dword [rbx + 0xf8]
movss dword [r13 + 0xdc], xmm1
cmp dword [rbx + 0x74], 0
movss dword [rbx + 0x88], xmm1
subss xmm1, xmm0
movss dword [rbx + 0x84], xmm1
jle 0x18003ec34
mov rdx, r12
nop dword [rax]
mov rcx, qword [rbx + 0x18]
lea rdx, [rdx + 0x68]
inc r12d
movzx eax, byte [rdx + rcx - 0xf]
mov byte [rdx + rcx - 0x11], al
mov eax, dword [rbx + 0x158]
mov dword [rdx + rcx - 0x44], eax
cmp r12d, dword [rbx + 0x74]
jl 0x18003ec10
mov rax, qword [rbx + 0x18]
movss xmm4, dword [rax + 0x20]
movss xmm3, dword [rax + 0x24]
movss xmm2, dword [rax + 0x28]
movss xmm1, dword [rax + 0x2c]
movups xmm0, xmmword [rax + 0x20]
mov rax, qword [r13 + 0x280]
movss dword [rbp - 0x59], xmm4
movups xmmword [r13 + 0x220], xmm0
movss dword [rbp - 0x55], xmm3
movss dword [rbp - 0x51], xmm2
movss dword [rbp - 0x4d], xmm1
movss dword [rax + 0x88], xmm4
movss dword [rax + 0x8c], xmm3
movss dword [rax + 0x90], xmm2
movss dword [rax + 0x94], xmm1
mov rax, qword [r13 + 0x280]
movups xmm0, xmmword [rbp - 0x59]
movsxd rdx, dword [rax + 0x58]
mov rcx, qword [rax + 0x60]
add rdx, rdx
movups xmmword [rcx + rdx*8 - 0x10], xmm0
mov rax, qword [rbx + 0x18]
mov rdx, qword [r13 + 0x280]
mov rcx, qword [rbx + 0x1a8]
movzx r8d, byte [rax + 0x57]
call fcn.1800367f0
test byte [rbx + 0x98], 1
movaps xmm11, xmmword [rsp + 0x40]
mov r13, qword [rsp + 0xb8]
mov r12, qword [rsp + 0xc0]
mov byte [rbx + 0x1fa], 0
jne 0x18003ecf6
inc dword [rbx + 0x9c]
add rsp, 0xd8
pop rbx
pop rbp
ret
mov r9d, dword [rbp + 0x67]
jmp 0x18003eaff