// File: /workspace/github_cpp_makefile_star2_O1/Unreality3D[P]Unreality3D/indie-studio/source/Network/Broker.cpp
// Function: network::Broker::onPacketConnect(int, IndieProtocol::Connect)
void	Broker::onPacketConnect(int fd, IndieProtocol::Connect conn)
  {
    std::cout << "FD : " << fd << " : CONNECT" << std::endl;
    std::cout << conn.name << std::endl;

    auto found = _clients.find(fd);
    if (found == _clients.end())
      {
	_clients[fd] = Client(fd);
	found = _clients.find(fd);
      }
    (*found).second.connected = true;
    (*found).second.name = conn.name;
  }

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xf8, %rsp
movq %rdx, %rbx
movq %rdi, %r14
movl %esi, 0xc(%rsp)
movq 0xba14(%rip), %r15      # 0x1afb8
leaq 0x5d0a(%rip), %rsi      # 0x152b5
movl $0x5, %edx
movq %r15, %rdi
callq 0xb870
movl 0xc(%rsp), %esi
movq %r15, %rdi
callq 0xbc80
movq %rax, %r12
leaq 0x5ced(%rip), %rsi      # 0x152bb
movl $0xa, %edx
movq %rax, %rdi
callq 0xb870
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0xb750
movsbl %al, %esi
movq %r12, %rdi
callq 0xb040
movq %rax, %rdi
callq 0xb540
movq (%rbx), %rsi
movq 0x8(%rbx), %rdx
movq %r15, %rdi
callq 0xb870
movq %rax, %r15
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0xb750
movsbl %al, %esi
movq %r15, %rdi
callq 0xb040
movq %rax, %rdi
callq 0xb540
movq 0x190(%r14), %rcx
leaq 0x188(%r14), %rbp
movq %rbp, %rax
testq %rcx, %rcx
je 0xf670
movl 0xc(%rsp), %edx
movq %rbp, %rax
xorl %esi, %esi
cmpl %edx, 0x20(%rcx)
setl %sil
cmovgeq %rcx, %rax
movq 0x10(%rcx,%rsi,8), %rcx
testq %rcx, %rcx
jne 0xf659
movq %rbp, %rdi
cmpq %rbp, %rax
je 0xf686
movl 0xc(%rsp), %ecx
cmpl 0x20(%rax), %ecx
cmovlq %rbp, %rax
movq %rax, %rdi
cmpq %rbp, %rdi
jne 0xf7f2
leaq 0x180(%r14), %r15
leaq 0xc(%rsp), %r13
movl (%r13), %esi
leaq 0x28(%rsp), %r12
movq %r12, %rdi
callq 0xb330
movq %r15, %rdi
movq %r13, %rsi
callq 0xbac0
movq %rax, %r15
leaq 0x30(%rsp), %r13
movq -0x8(%r13), %rax
movq %rax, (%r15)
leaq 0x8(%r15), %rdi
movq %r13, %rsi
callq 0xb910
movl 0x20(%r13), %eax
movl %eax, 0x28(%r15)
movzwl 0x24(%r13), %eax
movw %ax, 0x2c(%r15)
leaq 0x30(%r15), %rdi
leaq 0x58(%rsp), %rsi
callq 0xb200
leaq 0x70(%rsp), %rsi
movb -0x8(%rsi), %al
movb %al, 0x40(%r15)
leaq 0x48(%r15), %rdi
callq 0xb940
leaq 0x68(%r15), %rdi
leaq 0x90(%rsp), %rsi
callq 0xbb00
movl $0x88, %esi
leaq (%r15,%rsi), %rdi
addq %r12, %rsi
callq 0xbb90
movl $0xa8, %eax
movq %r15, %rdi
addq %rax, %rdi
addq %rax, %r12
movq %r12, %rsi
callq 0xb200
xorps %xmm0, %xmm0
leaq 0x10(%rsp), %rdi
movaps %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
movups 0xb8(%r15), %xmm0
movq 0xc8(%r15), %rax
leaq 0x28(%rsp), %r12
movups 0xb8(%r12), %xmm1
movups %xmm1, 0xb8(%r15)
movq 0xc8(%r12), %rcx
movq %rcx, 0xc8(%r15)
movq 0x10(%rdi), %rcx
movq %rax, 0x10(%rdi)
movaps (%rdi), %xmm1
movaps %xmm0, (%rdi)
movups %xmm1, 0xb8(%r12)
movq %rcx, 0xc8(%r12)
callq 0xb920
movq %r12, %rdi
callq 0xb8c0
movq 0x190(%r14), %rcx
movq %rbp, %rax
testq %rcx, %rcx
je 0xf7df
movl 0xc(%rsp), %edx
movq %rbp, %rax
xorl %esi, %esi
cmpl %edx, 0x20(%rcx)
setl %sil
cmovgeq %rcx, %rax
movq 0x10(%rcx,%rsi,8), %rcx
testq %rcx, %rcx
jne 0xf7c8
cmpq %rbp, %rax
je 0xf7ef
movl 0xc(%rsp), %ecx
cmpl 0x20(%rax), %ecx
cmovgeq %rax, %rbp
movq %rbp, %rdi
movb $0x1, 0x28(%rdi)
addq $0x30, %rdi
movq %rbx, %rsi
callq 0xb3e0
addq $0xf8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0xb8c0
movq %rbx, %rdi
callq 0xbce0
nop