// File: realuptime[P]PolyDetector/PolyDetector.cpp
// Function: PolyLine::neighToString[abi:cxx11](PolyDetector&, unsigned int*) const
std::string PolyLine::neighToString(PolyDetector &pd, uint32_t *retNNeigh) const
{
    auto search = pd._neighbors.find(id);
    if (search == pd._neighbors.end())
        return "[]";
    std::string str;
    uint32_t nNeigh = 0;
    for (auto &n : search->second)
    {
        auto l = pd.findLine(n);
        if (l)
        {
            str += std::to_string(n) + " ";
            nNeigh++;
        }
    }
    if (!str.empty())
        str.pop_back();
    if (retNNeigh)
        *retNNeigh = nNeigh;
    return str;
}

// Assembly:
subq $0xd8, %rsp
movq %rdi, 0x10(%rsp)
movq %rdi, %rax
movq %rax, 0x18(%rsp)
movq %rdi, 0xd0(%rsp)
movq %rsi, 0xc8(%rsp)
movq %rdx, 0xc0(%rsp)
movq %rcx, 0xb8(%rsp)
movq 0xc8(%rsp), %rsi
movq 0xc0(%rsp), %rdi
addq $0x68, %rdi
addq $0x60, %rsi
callq 0x13a60
movq %rax, 0xb0(%rsp)
movq 0xc0(%rsp), %rdi
addq $0x68, %rdi
callq 0x13ab0
movq %rax, 0xa8(%rsp)
leaq 0xb0(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0x13a90
testb $0x1, %al
jne 0x6fdd
jmp 0x703f
leaq 0xa7(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0x2290
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %rdx
leaq 0x1f732(%rip), %rsi     # 0x26732
callq 0x2210
jmp 0x7007
leaq 0xa7(%rsp), %rdi
callq 0x21c0
jmp 0x721f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
leaq 0xa7(%rsp), %rdi
callq 0x21c0
jmp 0x722c
movq 0x10(%rsp), %rdi
movb $0x0, 0x93(%rsp)
callq 0x2220
movl $0x0, 0x8c(%rsp)
leaq 0xb0(%rsp), %rdi
callq 0x13ae0
addq $0x8, %rax
movq %rax, 0x80(%rsp)
movq 0x80(%rsp), %rdi
callq 0x128b0
movq %rax, 0x78(%rsp)
movq 0x80(%rsp), %rdi
callq 0x128e0
movq %rax, 0x70(%rsp)
leaq 0x78(%rsp), %rdi
leaq 0x70(%rsp), %rsi
callq 0x134e0
testb $0x1, %al
jne 0x70b1
jmp 0x71c1
leaq 0x78(%rsp), %rdi
callq 0x13520
movq %rax, 0x68(%rsp)
movq 0xc0(%rsp), %rdi
movq 0x68(%rsp), %rax
movl (%rax), %esi
movl $0x1, %edx
callq 0x7240
movq %rax, (%rsp)
jmp 0x70df
movq (%rsp), %rax
movq %rax, 0x60(%rsp)
cmpq $0x0, 0x60(%rsp)
je 0x71b0
movq 0x68(%rsp), %rax
movl (%rax), %esi
leaq 0x20(%rsp), %rdi
callq 0x132c0
jmp 0x7107
leaq 0x1f980(%rip), %rdx     # 0x26a8e
leaq 0x40(%rsp), %rdi
leaq 0x20(%rsp), %rsi
callq 0x13270
jmp 0x711f
movq 0x10(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x21f0
jmp 0x7130
leaq 0x40(%rsp), %rdi
callq 0x2100
leaq 0x20(%rsp), %rdi
callq 0x2100
movl 0x8c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x8c(%rsp)
jmp 0x71b0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
jmp 0x7213
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
jmp 0x71a4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x98(%rsp)
movl %eax, 0x94(%rsp)
leaq 0x40(%rsp), %rdi
callq 0x2100
leaq 0x20(%rsp), %rdi
callq 0x2100
jmp 0x7213
jmp 0x71b2
leaq 0x78(%rsp), %rdi
callq 0x13530
jmp 0x7099
movq 0x10(%rsp), %rdi
callq 0x2270
testb $0x1, %al
jne 0x71d9
movq 0x10(%rsp), %rdi
callq 0x21e0
cmpq $0x0, 0xb8(%rsp)
je 0x71f5
movl 0x8c(%rsp), %ecx
movq 0xb8(%rsp), %rax
movl %ecx, (%rax)
movb $0x1, 0x93(%rsp)
testb $0x1, 0x93(%rsp)
jne 0x7211
movq 0x10(%rsp), %rdi
callq 0x2100
jmp 0x721f
movq 0x10(%rsp), %rdi
callq 0x2100
jmp 0x722c
movq 0x18(%rsp), %rax
addq $0xd8, %rsp
retq
movq 0x98(%rsp), %rdi
callq 0x2280
nopl (%rax)