// File: /workspace/github_c_makefile_star2_O0/mohuangrui[P]ArtraCFD/initialization.c
// Function: IdentifyGeometryState
static void IdentifyGeometryState(Geometry *const geo)
{
    Polyhedron *poly = NULL;
    const Real zero = 0.0;
    const Real rhoNoForce = 1.0e10;
    const Real rhoNoMove = 1.0e36;
    for (int n = 0; n < geo->totN; ++n) {
        poly = geo->poly + n;
        if (rhoNoForce < poly->rho) { /* ignore surface force integration */
            poly->state = 2;
            if ((zero == poly->V[TO][X]) && (zero == poly->V[TO][Y]) && (zero == poly->V[TO][Z]) &&
                    (zero == poly->W[TO][X]) && (zero == poly->W[TO][Y]) && (zero == poly->W[TO][Z]) &&
                    (zero == poly->at[TN][X]) && (zero == poly->at[TN][Y]) && (zero == poly->at[TN][Z]) &&
                    (zero == poly->g[X]) && (zero == poly->g[Y]) && (zero == poly->g[Z]) &&
                    (zero == poly->ar[TN][X]) && (zero == poly->ar[TN][Y]) && (zero == poly->ar[TN][Z]) &&
                    (rhoNoMove < poly->rho)) { /* stationary geometry */
                poly->state = 1;
            }
        }
    }
    return;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movq %rdi, -0x8(%rbp)
movq $0x0, -0x10(%rbp)
xorps %xmm0, %xmm0
movsd %xmm0, -0x18(%rbp)
movsd 0xe0d0(%rip), %xmm0     # 0x28f40
movsd %xmm0, -0x20(%rbp)
movsd 0xe0bb(%rip), %xmm0     # 0x28f38
movsd %xmm0, -0x28(%rbp)
movl $0x0, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
movq -0x8(%rbp), %rcx
cmpl (%rcx), %eax
jge 0x1b07f
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movslq -0x2c(%rbp), %rcx
imulq $0x238, %rcx, %rcx      # imm = 0x238
addq %rcx, %rax
movq %rax, -0x10(%rbp)
movq -0x10(%rbp), %rax
movsd 0x1a8(%rax), %xmm0
movsd 0xe07a(%rip), %xmm1     # 0x28f40
ucomisd %xmm1, %xmm0
jbe 0x1b06f
movq -0x10(%rbp), %rax
movl $0x2, 0xc(%rax)
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0x80(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0x88(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0x90(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0xb0(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0xb8(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0xc0(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0xf8(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0x100(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0x108(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0x110(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0x118(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0x120(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0x140(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0x148(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
xorps %xmm0, %xmm0
ucomisd 0x150(%rax), %xmm0
jne 0x1b06d
jp 0x1b06d
movq -0x10(%rbp), %rax
movsd 0x1a8(%rax), %xmm0
movsd 0xdedc(%rip), %xmm1     # 0x28f38
ucomisd %xmm1, %xmm0
jbe 0x1b06d
movq -0x10(%rbp), %rax
movl $0x1, 0xc(%rax)
jmp 0x1b06f
jmp 0x1b071
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x1ae89
popq %rbp
retq
nopw %cs:(%rax,%rax)