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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x40
mov rdi, qword [0x1800d7730]
mov rbx, qword [rdi + 0x4900]
test dword [rbx + 0x14], 0x40000
jne 0x180029ae1
cmp qword [rdi + 0x4a88], 0
jne 0x180029ae1
cmp byte [rdi + 0x2e74], 0
mov qword [rsp + 0x60], rbp
jne 0x18002999f
xor bpl, bpl
jmp 0x1800299c2
cmp byte [rdi + 0x477c], 0
je 0x1800299b1
cmp dword [rdi + 0x3f68], 0xffffffff
jne 0x1800299ba
cmp dword [rdi + 0x3fec], 0xffffffff
je 0x1800299bf
xor bpl, bpl
jmp 0x1800299c2
mov bpl, 1
cmp byte [rdi + 0x2e84], 0
jne 0x1800299d0
xor sil, sil
jmp 0x1800299f3
cmp byte [rdi + 0x477c], 0
je 0x1800299e2
cmp dword [rdi + 0x3f68], 0xffffffff
jne 0x1800299eb
cmp dword [rdi + 0x3ff8], 0xffffffff
je 0x1800299f0
xor sil, sil
jmp 0x1800299f3
mov sil, 1
mov edx, 0xffffffff
mov ecx, 0x207
mov r8d, 1
call fcn.180021f90
mov edx, 0xffffffff
mov ecx, 0x208
mov r8d, 1
movzx r15d, al
call fcn.180021f90
cmp bpl, sil
movzx r14d, al
mov rbp, qword [rsp + 0x60]
jne 0x180029a38
cmp r15b, al
je 0x180029ae1
cmp dword [rdi + 0x4938], 0
je 0x180029a48
xor ecx, ecx
call fcn.180027b00
cmp word [rbx + 0x15c], 0
jne 0x180029b1a
cmp byte [rbx + 0x162], 0
je 0x180029b1a
mov edx, 0xffffffff
mov ecx, 0x205
mov r8d, 1
call fcn.180021f90
test al, al
je 0x180029a9a
movss xmm1, dword [rbx + 0x204]
subss xmm1, dword [rbx + 0x1fc]
movss xmm0, dword [rbx + 0x88]
subss xmm0, xmm1
jmp 0x180029acb
mov edx, 0xffffffff
mov ecx, 0x206
mov r8d, 1
call fcn.180021f90
test al, al
je 0x180029af8
movss xmm0, dword [rbx + 0x204]
subss xmm0, dword [rbx + 0x1fc]
addss xmm0, dword [rbx + 0x88]
movss dword [rbx + 0x98], xmm0
xor eax, eax
mov dword [rbx + 0xa8], eax
mov dword [rbx + 0xa0], eax
xorps xmm0, xmm0
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret
test r15b, r15b
je 0x180029b07
xor eax, eax
mov dword [rbx + 0x98], eax
jmp 0x180029ad5
test r14b, r14b
je 0x180029ae1
mov eax, dword [rbx + 0x90]
mov dword [rbx + 0x98], eax
jmp 0x180029ad3
mov rax, qword [rbx]
movsxd rsi, dword [rdi + 0x4938]
add rsi, rsi
movaps xmmword [rsp + 0x30], xmm6
movaps xmmword [rsp + 0x20], xmm7
movss xmm0, dword [rax + 0x3c34]
mov rax, qword [rbx + 0x368]
mulss xmm0, dword [rbx + 0x290]
test rax, rax
je 0x180029b55
mulss xmm0, dword [rax + 0x290]
movss xmm7, dword [rbx + 0x204]
xor edx, edx
subss xmm7, dword [rbx + 0x1fc]
xorps xmm6, xmm6
mov ecx, 0x205
lea r8d, [rdx + 1]
subss xmm7, xmm0
movss xmm0, dword [rbx + rsi*8 + 0x3b4]
subss xmm0, dword [rbx + rsi*8 + 0x3ac]
addss xmm7, xmm0
maxss xmm7, xmm6
call fcn.180021f90
test al, al
je 0x180029bd4
movaps xmm6, xmm7
mov dword [rdi + 0x4988], 3
xorps xmm6, xmmword [0x1800a3400]
movaps xmm7, xmmword [rsp + 0x20]
movaps xmm0, xmm6
movaps xmm6, xmmword [rsp + 0x30]
mov dword [rdi + 0x4990], 2
mov dword [rdi + 0x497c], 0x830
jmp 0x180029ae4
xor edx, edx
mov ecx, 0x206
lea r8d, [rdx + 1]
call fcn.180021f90
test al, al
je 0x180029c04
movaps xmm6, xmm7
mov dword [rdi + 0x4990], 3
mov dword [rdi + 0x497c], 0x830
jmp 0x180029ca9
test r15b, r15b
je 0x180029c60
movss xmm0, dword [rbx + rsi*8 + 0x3b0]
xor eax, eax
comiss xmm0, dword [rbx + rsi*8 + 0x3a8]
mov dword [rbx + rsi*8 + 0x3b4], eax
mov dword [rbx + rsi*8 + 0x3ac], eax
jae 0x180029c3a
mov dword [rbx + rsi*8 + 0x3b0], eax
mov dword [rbx + rsi*8 + 0x3a8], eax
movaps xmm7, xmmword [rsp + 0x20]
movaps xmm0, xmm6
movaps xmm6, xmmword [rsp + 0x30]
mov dword [rdi + 0x4988], 3
mov dword [rdi + 0x497c], 0x50
jmp 0x180029ae4
test r14b, r14b
je 0x180029cb3
movss xmm0, dword [rbx + 0x3c]
movss xmm1, dword [rbx + rsi*8 + 0x3b0]
comiss xmm1, dword [rbx + rsi*8 + 0x3a8]
movss dword [rbx + rsi*8 + 0x3b4], xmm0
movss dword [rbx + rsi*8 + 0x3ac], xmm0
jae 0x180029c9f
xor eax, eax
mov dword [rbx + rsi*8 + 0x3b0], eax
mov dword [rbx + rsi*8 + 0x3a8], eax
mov dword [rdi + 0x497c], 0x50
mov dword [rdi + 0x4988], 2
movaps xmm7, xmmword [rsp + 0x20]
movaps xmm0, xmm6
movaps xmm6, xmmword [rsp + 0x30]
jmp 0x180029ae4