// File: /workspace/github_cpp_makefile_star2_O3/tomfunkhouser[P]gaps/apps/sflprocess/sflprocess.cpp
// Function: CreateObjectRelationships(gaps::R3SurfelScene*, double, double, double, double)
static int
CreateObjectRelationships(R3SurfelScene *scene,
  RNLength max_gap_distance, RNLength max_plane_offset, RNAngle max_normal_angle,
  RNScalar min_overlap)
{
  // Create object relationships
  if (!CreateOverlapObjectRelationships(scene, max_gap_distance, max_plane_offset, max_normal_angle, min_overlap)) return 0;

  // Return success
  return 1;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xd8, %rsp
xorpd %xmm2, %xmm2
ucomisd %xmm2, %xmm0
jne 0x1d425
jnp 0x1d876
movq %rdi, %r13
movsd %xmm0, 0x8(%rsp)
movsd %xmm1, 0x40(%rsp)
leaq 0x60(%rsp), %r14
movq %r14, %rdi
callq 0xc0cf4
xorl %r15d, %r15d
movq %r14, %rdi
xorl %esi, %esi
callq 0x15a10
cmpl $0x0, 0x14f967(%rip)    # 0x16cdbc
je 0x1d472
leaq 0xeaaf7(%rip), %rdi     # 0x107f55
callq 0x15970
movq 0x14eaf6(%rip), %rax    # 0x16bf60
movq (%rax), %rdi
callq 0x15750
movslq 0x1c(%r13), %rbx
leaq (,%rbx,8), %rax
testq %rbx, %rbx
movq $-0x1, %rdi
cmovnsq %rax, %rdi
callq 0x15040
testq %rbx, %rbx
jle 0x1d823
movq %rax, 0x20(%rsp)
movsd 0x8(%rsp), %xmm0
mulsd %xmm0, %xmm0
movsd 0xe9bc7(%rip), %xmm1    # 0x107078
divsd %xmm0, %xmm1
movsd %xmm1, (%rsp)
xorl %ebx, %ebx
leaq 0x70(%rsp), %r14
movq %r13, 0x28(%rsp)
movq 0x10(%r13), %rax
movq (%rax,%rbx,8), %r12
movq %r14, %rdi
callq 0x39d60
movl $0x60, %edi
callq 0x15610
movq %rax, %r15
movq %rax, %rdi
callq 0x34b40
movq 0x20(%rsp), %rax
movq %r15, (%rax,%rbx,8)
movq %r14, %rdi
movq %r12, %rsi
movsd (%rsp), %xmm0
callq 0x39ec6
movl 0x84(%rsp), %eax
testl %eax, %eax
jle 0x1d553
xorl %r12d, %r12d
movq 0x78(%rsp), %rcx
movq (%rcx,%r12,8), %r13
cmpl $0x0, 0x4c(%r13)
jle 0x1d548
xorl %ebp, %ebp
movq 0x40(%r13), %rax
movq (%rax,%rbp,8), %rsi
movq (%r15), %rax
movq %r15, %rdi
callq *0x10(%rax)
incq %rbp
movslq 0x4c(%r13), %rax
cmpq %rax, %rbp
jl 0x1d524
movl 0x84(%rsp), %eax
incq %r12
movslq %eax, %rcx
cmpq %rcx, %r12
jl 0x1d512
movq %r14, %rdi
callq 0x39e74
incq %rbx
movq 0x28(%rsp), %r13
movslq 0x1c(%r13), %rax
cmpq %rax, %rbx
jl 0x1d4c6
testl %eax, %eax
jle 0x1d820
xorl %ebx, %ebx
movq $0x0, 0x18(%rsp)
movsd 0x8(%rsp), %xmm0
movq 0x20(%rsp), %r12
movq (%r12,%rbx,8), %rdi
cmpl $0x0, 0x10(%rdi)
je 0x1d7e6
movq 0x10(%r13), %rax
movq (%rax,%rbx,8), %rax
movq %rax, (%rsp)
movq %rdi, 0x30(%rsp)
movl $0x400, %esi            # imm = 0x400
callq 0x4f9fb
movq %rax, %rbp
movl 0x1c(%r13), %eax
testq %rbp, %rbp
je 0x1d7e0
movq %rbx, 0x38(%rsp)
testl %eax, %eax
jle 0x1d7ba
addq $0x18, 0x30(%rsp)
xorl %ebx, %ebx
movq (%rsp), %rcx
movq 0x10(%r13), %rax
movq (%rax,%rbx,8), %r15
cmpq %r15, %rcx
je 0x1d7aa
movq (%r12,%rbx,8), %r14
cmpl $0x0, 0x10(%r14)
je 0x1d7aa
leaq 0x18(%r14), %rsi
movq 0x30(%rsp), %rdi
callq 0x695f2
ucomisd 0x8(%rsp), %xmm0
ja 0x1d7a6
movl 0x10(%r14), %eax
testl %eax, %eax
jle 0x1d744
xorl %r13d, %r13d
movl $0x8, %r12d
movl $0x0, 0x14(%rsp)
movq 0x8(%r14), %rax
movq -0x8(%rax,%r12), %rcx
movq (%rax,%r12), %rax
xorps %xmm0, %xmm0
cvtss2sd (%rax), %xmm0
addsd 0x10(%rcx), %xmm0
xorps %xmm1, %xmm1
cvtss2sd 0x4(%rax), %xmm1
addsd 0x18(%rcx), %xmm1
xorps %xmm2, %xmm2
cvtss2sd 0x8(%rax), %xmm2
addsd 0x20(%rcx), %xmm2
leaq 0x70(%rsp), %rdi
callq 0x9bed2
movsd 0x70(%rsp), %xmm0
movsd 0x78(%rsp), %xmm1
movsd 0x80(%rsp), %xmm2
leaq 0x48(%rsp), %rdi
movq %rbp, %rsi
callq 0x8f01c
movsd 0x48(%rsp), %xmm0
addsd 0xe99ac(%rip), %xmm0    # 0x107050
cvttsd2si %xmm0, %eax
testl %eax, %eax
js 0x1d71b
cmpl %eax, 0x238(%rbp)
jle 0x1d71b
movsd 0x50(%rsp), %xmm0
addsd 0xe998e(%rip), %xmm0    # 0x107050
cvttsd2si %xmm0, %ecx
testl %ecx, %ecx
js 0x1d71b
cmpl %ecx, 0x23c(%rbp)
jle 0x1d71b
movsd 0x58(%rsp), %xmm0
addsd 0xe9970(%rip), %xmm0    # 0x107050
cvttsd2si %xmm0, %edx
testl %edx, %edx
js 0x1d71b
cmpl %edx, 0x240(%rbp)
jle 0x1d71b
movq 0x230(%rbp), %rsi
imull 0x248(%rbp), %edx
imull 0x244(%rbp), %ecx
addl %eax, %edx
addl %ecx, %edx
movslq %edx, %rax
xorpd %xmm0, %xmm0
ucomisd (%rsi,%rax,8), %xmm0
jae 0x1d71b
incl 0x14(%rsp)
incq %r13
movslq 0x10(%r14), %rax
addq $0x10, %r12
cmpq %rax, %r13
jl 0x1d637
xorps %xmm0, %xmm0
cvtsi2sdl 0x14(%rsp), %xmm0
movq 0x28(%rsp), %r13
movq 0x20(%rsp), %r12
jmp 0x1d748
xorpd %xmm0, %xmm0
xorps %xmm1, %xmm1
cvtsi2sd %eax, %xmm1
divsd %xmm1, %xmm0
ucomisd 0x40(%rsp), %xmm0
jbe 0x1d7a6
movsd %xmm0, 0x70(%rsp)
movl $0x38, %edi
callq 0x15610
movq %rax, %r14
movq %rax, %rdi
movl $0x2, %esi
movq (%rsp), %rdx
movq %r15, %rcx
leaq 0x70(%rsp), %r8
movl $0x1, %r9d
callq 0x41718
movq (%r13), %rax
movq %r13, %rdi
movq %r14, %rsi
callq *0x60(%rax)
movq 0x18(%rsp), %rax
incl %eax
movq %rax, 0x18(%rsp)
movq (%rsp), %rcx
incq %rbx
movslq 0x1c(%r13), %rax
cmpq %rax, %rbx
jl 0x1d5e0
movq %rbp, %rdi
callq 0x8e7e6
movl $0x250, %esi            # imm = 0x250
movq %rbp, %rdi
callq 0x15620
movsd 0x8(%rsp), %xmm0
movl 0x1c(%r13), %eax
movq 0x38(%rsp), %rbx
jmp 0x1d7e6
movsd 0x8(%rsp), %xmm0
incq %rbx
movslq %eax, %rcx
cmpq %rcx, %rbx
jl 0x1d58e
testl %eax, %eax
jle 0x1d819
xorl %ebx, %ebx
movq (%r12,%rbx,8), %rdi
testq %rdi, %rdi
je 0x1d80e
movq (%rdi), %rax
callq *0x8(%rax)
movl 0x1c(%r13), %eax
incq %rbx
movslq %eax, %rcx
cmpq %rcx, %rbx
jl 0x1d7fb
movq 0x18(%rsp), %r15
jmp 0x1d823
xorl %r15d, %r15d
cmpl $0x0, 0x14f592(%rip)    # 0x16cdbc
je 0x1d876
leaq 0x60(%rsp), %rdi
callq 0xc0d56
leaq 0xe9d75(%rip), %rdi     # 0x1075b2
movb $0x1, %al
callq 0x15080
movl 0x1c(%r13), %esi
leaq 0xe9e08(%rip), %rdi     # 0x107657
xorl %eax, %eax
callq 0x15080
leaq 0xea3e3(%rip), %rdi     # 0x107c40
movl %r15d, %esi
xorl %eax, %eax
callq 0x15080
movq 0x14e6f2(%rip), %rax    # 0x16bf60
movq (%rax), %rdi
callq 0x15750
addq $0xd8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movl $0x38, %esi
movq %r14, %rdi
callq 0x15620
jmp 0x1d8bb
movq %rax, %rbx
movl $0x60, %esi
movq %r15, %rdi
callq 0x15620
jmp 0x1d8b1
jmp 0x1d8ae
movq %rax, %rbx
leaq 0x70(%rsp), %rdi
callq 0x39e74
movq %rbx, %rdi
callq 0x15ad0