// File: /workspace/github_cpp_makefile_star2_O2/flightaware[P]beast-splitter/beast_output.cc
// Function: beast::SocketConnector::resolve_and_connect(boost::system::error_code const&)
void SocketConnector::resolve_and_connect(const boost::system::error_code &ec) {
        if (!running) {
            return;
        }

        if (ec) {
            assert(ec == boost::asio::error::operation_aborted);
            return;
        }

        auto self(shared_from_this());

        tcp::resolver::query query(host, port_or_service);
        resolver.async_resolve(query, [this, self](const boost::system::error_code &ec, tcp::resolver::iterator it) {
            if (!ec) {
                next_endpoint = it;
                try_next_endpoint();
            } else if (ec == boost::asio::error::operation_aborted) {
                return;
            } else {
                std::cerr << host << ":" << port_or_service << ": could not resolve address: " << ec.message() << std::endl;
                schedule_reconnect();
                return;
            }
        });
    }

// Assembly:
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xc0, %rsp
cmpb $0x1, 0x1a0(%rdi)
jne 0x22a48
movq %rsi, %r14
cmpb $0x1, 0x4(%rsi)
jne 0x228ef
pushq $0x7d
popq %rdi
callq 0x15246
leaq 0x50(%rsp), %rsi
movq %rax, (%rsi)
movq %rdx, 0x8(%rsi)
movq %r14, %rdi
callq 0x1a65d
testb %al, %al
jne 0x22a48
leaq 0x2190a(%rip), %rdi     # 0x441e1
leaq 0x22612(%rip), %rsi     # 0x44ef0
leaq 0x2261b(%rip), %rcx     # 0x44f00
movl $0x185, %edx            # imm = 0x185
callq 0xf460
movq %rdi, %rbx
leaq 0x30(%rsp), %rdi
movq %rbx, %rsi
callq 0x26ddc
leaq 0x128(%rbx), %rsi
leaq 0x148(%rbx), %rdx
leaq 0x50(%rsp), %rdi
pushq $0x20
popq %rcx
callq 0x1ef4e
leaq 0x8(%rsp), %rdi
movq %rbx, -0x8(%rdi)
leaq 0x30(%rsp), %rsi
callq 0x25ff2
movq 0x20(%rbx), %r14
movq %rsp, %rsi
movq %rsi, 0x18(%rsp)
movl $0x100, %edi            # imm = 0x100
xorl %eax, %eax
callq 0x13dbd
movq %rax, %r15
leaq 0x28(%rbx), %rsi
movq %rax, 0x20(%rsp)
andq $0x0, 0x28(%rsp)
leaq 0x40(%rsp), %r12
movq %r12, %rdi
callq 0x1f288
movq 0x28(%r14), %r13
andq $0x0, (%r15)
leaq 0x1d1b(%rip), %rax      # 0x2468e
movq %rax, 0x8(%r15)
andl $0x0, 0x10(%r15)
andl $0x0, 0x18(%r15)
movb $0x0, 0x1c(%r15)
leaq 0x47803(%rip), %rax     # 0x6a190
movq %rax, 0x20(%r15)
leaq 0x28(%r15), %rdi
movq %r12, %rsi
callq 0x1fc52
leaq 0x38(%r15), %rdi
leaq 0x50(%rsp), %rsi
callq 0x1f2bc
movq %r13, 0xa8(%r15)
movaps (%rsp), %xmm0
movups %xmm0, 0xb0(%r15)
movq 0x10(%rsp), %rax
andq $0x0, 0x10(%rsp)
movq %rax, 0xc0(%r15)
andq $0x0, 0x8(%rsp)
addq $0x28, %r14
addq $0x38, %rbx
movq %r15, %rdi
addq $0xc8, %rdi
movq %rbx, %rsi
callq 0x14776
andq $0x0, 0xf8(%r15)
movq %r15, 0x28(%rsp)
leaq 0x48(%rsp), %rdi
callq 0x15392
movq %r14, %rdi
movq %r15, %rsi
callq 0x1f22e
leaq 0x20(%rsp), %rax
leaq 0x10(%rsp), %rbx
xorps %xmm0, %xmm0
movups %xmm0, (%rax)
leaq 0x18(%rsp), %rdi
callq 0x2467e
movq %rbx, %rdi
callq 0x14e02
leaq 0x50(%rsp), %rdi
callq 0x1efba
leaq 0x38(%rsp), %rdi
callq 0x14e02
addq $0xc0, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
retq
movq %rax, %rbx
jmp 0x22a77
movq %rax, %rbx
addq $0x30, %r15
movq %r15, %rdi
callq 0x15392
leaq 0x48(%rsp), %rdi
callq 0x15392
leaq 0x18(%rsp), %rdi
callq 0x2467e
jmp 0x22a86
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x14e02
leaq 0x50(%rsp), %rdi
callq 0x1efba
jmp 0x22a9f
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
callq 0x14e02
movq %rbx, %rdi
callq 0xfba0
nop