// File: /workspace/github_cpp_makefile_star2_O1/xocoder[P]m_kcptun/src/kcp_local.cpp
// Function: main
int
main(int argc, const char *argv[]) {

   tun_local_t *tun = new tun_local_t;
   memset(tun, 0, sizeof(*tun));

   if ( tun ) {

      tun->conf = conf_create(argc, argv);
      if ( tun->conf ) {

         if ( _local_network_init(tun) ) {
            
            _local_network_runloop(tun);

            _local_network_fini(tun);
         }
         
         conf_release(tun->conf);
      }

      delete tun;
   }

   return 0;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rsi, %r15
movl %edi, %r12d
movl $0x10098, %edi          # imm = 0x10098
callq 0x2290
movq %rax, %r14
movq %rax, %rbx
movl $0x10098, %edx          # imm = 0x10098
movq %rax, %rdi
xorl %esi, %esi
callq 0x2180
movl %r12d, %edi
movq %r15, %rsi
callq 0x720c
movq %rax, 0x78(%r14)
testq %rax, %rax
je 0x89c5
cmpl $0x0, 0x70(%rbx)
jne 0x89bc
callq 0x3f1c
callq 0x6cc0
movq %rax, 0x50(%rbx)
movq 0x78(%rbx), %r15
cmpl $0x0, 0x148(%r15)
je 0x845e
addq $0x158, %r15            # imm = 0x158
movq %r15, %rdi
callq 0x2110
movq %r15, %rdi
movl %eax, %esi
callq 0x5704
movq %rax, 0x60(%rbx)
callq 0x5d10
movq %rax, 0x68(%rbx)
movl $0x1, %edi
callq 0x45b6
testq %rax, %rax
je 0x853c
movq %rax, %r15
leaq 0x568(%rip), %rsi       # 0x89e3
movq %rax, %rdi
movq %rbx, %rdx
callq 0x4b4c
movq 0x78(%rbx), %rsi
movl 0x84(%rsi), %edx
addq $0x4, %rsi
movq %r15, %rdi
movl $0x1, %ecx
callq 0x4ac3
testl %eax, %eax
jle 0x8551
movq 0x78(%rbx), %rax
cmpl $0x0, (%rax)
setle %r12b
jle 0x85f7
movl $0x98, %r13d
xorl %r15d, %r15d
xorl %r12d, %r12d
movl $0x2, %edi
callq 0x45b6
movq %rax, 0x8(%rbx,%r15,8)
testq %rax, %rax
je 0x859c
movq %rax, %rdi
leaq 0x838(%rip), %rsi       # 0x8d20
movq %rbx, %rdx
callq 0x4b4c
movq 0x8(%rbx,%r15,8), %rdi
movq 0x78(%rbx), %rsi
movl 0x118(%rsi,%r15,4), %edx
addq %r13, %rsi
callq 0x4681
testl %eax, %eax
jle 0x85b1
movq 0x8(%rbx,%r15,8), %rdi
movl $0x80000, %esi          # imm = 0x80000
callq 0x5049
incq %r15
movq 0x78(%rbx), %rax
movslq (%rax), %rax
addq $0x10, %r13
cmpq %rax, %r15
setge %r12b
jl 0x84c6
jmp 0x85f7
movq 0x7aad(%rip), %rdi      # 0xfff0
leaq 0x3a66(%rip), %rsi      # 0xbfb0
movl $0x1b, %edx
jmp 0x8564
movq 0x7a98(%rip), %rdi      # 0xfff0
leaq 0x3a6d(%rip), %rsi      # 0xbfcc
movl $0x16, %edx
callq 0x22e0
movq 0x7a80(%rip), %r14      # 0xfff0
movq (%r14), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2270
movsbl %al, %esi
movq %r14, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x21d0
jmp 0x89bc
movq 0x7a4d(%rip), %rdi      # 0xfff0
leaq 0x3a81(%rip), %rsi      # 0xc02b
movl $0x18, %edx
jmp 0x85c4
movq 0x7a38(%rip), %rdi      # 0xfff0
leaq 0x3a85(%rip), %rsi      # 0xc044
movl $0x1c, %edx
callq 0x22e0
movq 0x7a20(%rip), %r15      # 0xfff0
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x2270
movsbl %al, %esi
movq %r15, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x21d0
testb $0x1, %r12b
je 0x89bc
leaq -0x348(%rip), %rdi      # 0x82c0
leaq -0x339(%rip), %rsi      # 0x82d6
callq 0x260c
callq 0x5d10
movl %eax, %edi
callq 0x2260
callq 0x20b0
movl %eax, %r15d
movq 0x79a1(%rip), %r12      # 0xffd0
leaq 0x3a42(%rip), %rsi      # 0xc078
movl $0xf, %edx
movq %r12, %rdi
callq 0x22e0
movl %r15d, %esi
movq %r12, %rdi
callq 0x21c0
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2270
movsbl %al, %esi
movq %r12, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x21d0
movl %r15d, %edi
movq %rbx, %rsi
callq 0x26e3
movq %rax, %r15
movq %rax, 0x48(%rbx)
testq %rax, %rax
je 0x8715
leaq 0x7e6(%rip), %rsi       # 0x8e80
movq %r15, %rdi
callq 0x2a31
movq 0x48(%rbx), %rdi
movq 0x78(%rbx), %rax
movl 0x130(%rax), %esi
movl 0x134(%rax), %edx
movl 0x138(%rax), %ecx
movl 0x13c(%rax), %r8d
callq 0x3e8b
movq 0x48(%rbx), %rdi
movq 0x78(%rbx), %rax
movl 0x128(%rax), %edx
movl 0x12c(%rax), %esi
callq 0x3edc
movq 0x48(%rbx), %rdi
movq 0x78(%rbx), %rax
movl 0x140(%rax), %esi
callq 0x3dea
movq 0x78(%rbx), %rax
movl 0x144(%rax), %eax
cmpl $0x2, %eax
je 0x875a
cmpl $0x3, %eax
jne 0x8765
movq 0x48(%rbx), %rax
movl $0x14, 0x34(%rax)
jmp 0x8765
movq 0x78d4(%rip), %r12      # 0xfff0
leaq 0x3965(%rip), %rsi      # 0xc088
movl $0x18, %edx
movq %r12, %rdi
callq 0x22e0
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2270
movsbl %al, %esi
movq %r12, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x21d0
jmp 0x8765
movq 0x48(%rbx), %rax
movl $0x28, 0x34(%rax)
testq %r15, %r15
je 0x89bc
xorps %xmm0, %xmm0
leaq -0x50(%rbp), %rdi
movaps %xmm0, (%rdi)
xorl %esi, %esi
movl $0x4, %edx
callq 0x71bd
testl %eax, %eax
je 0x879a
movq 0x48(%rbx), %rdi
leaq -0x50(%rbp), %rsi
movl $0x10, %edx
callq 0x2cc4
callq 0x67ec
movq %rax, 0x80(%rbx)
movq 0x68(%rbx), %rsi
leaq 0x34c(%rip), %r9        # 0x8afd
movl $0x2710, %edx           # imm = 0x2710
movq %rax, %rdi
movl $0x1, %ecx
movq %rbx, %r8
callq 0x6b35
movq %rax, 0x88(%rbx)
movq 0x78(%rbx), %rax
movl 0x14c(%rax), %edi
testl %edi, %edi
je 0x87ed
movl 0x150(%rax), %esi
callq 0x90a0
movq %rax, 0x90(%rbx)
movl $0x1, 0x70(%rbx)
addq $0x98, %r14
xorl %eax, %eax
leaq -0x50(%rbp), %r12
movq 0x77e8(%rip), %r13      # 0xfff0
cmpl $0x400, %eax            # imm = 0x400
jl 0x881b
movl $0x1, %edi
callq 0x5d39
xorl %eax, %eax
movl %eax, -0x2c(%rbp)
callq 0x5d10
movq %rax, 0x68(%rbx)
movq 0x80(%rbx), %rdi
movq %rax, %rsi
callq 0x696d
movq 0x48(%rbx), %rdi
callq 0x2c5c
testl %eax, %eax
jg 0x898f
jmp 0x89a8
movq %r14, %rdi
movl %eax, %esi
movq %r12, %rdx
callq 0x7164
testl %eax, %eax
je 0x88da
movq 0x50(%rbx), %rdi
movl -0x4c(%rbp), %esi
callq 0x9039
testq %rax, %rax
je 0x898f
movq %rax, %r15
movl -0x50(%rbp), %eax
cmpl $0x1, %eax
je 0x88f3
cmpl $0x2, %eax
jne 0x898f
movq 0x8(%r15), %rdi
movq -0x48(%rbp), %rsi
movl -0x40(%rbp), %edx
callq 0x4d96
cmpq $0x0, -0x48(%rbp)
je 0x898f
cmpl $0x0, -0x40(%rbp)
jle 0x898f
movl %eax, %r15d
testl %eax, %eax
jns 0x898f
movl $0x1c, %edx
movq %r13, %rdi
leaq 0x37dc(%rip), %rsi      # 0xc0a1
callq 0x22e0
movq %r13, %rdi
movl %r15d, %esi
callq 0x2400
jmp 0x8965
movl $0x18, %edx
movq %r13, %rdi
leaq 0x37fe(%rip), %rsi      # 0xc0e7
callq 0x22e0
movq %r13, %r15
jmp 0x8968
movzbl -0x48(%rbp), %eax
cmpl $0x3, %eax
je 0x892a
cmpl $0x2, %eax
jne 0x898f
movl $0x1, 0x10(%r15)
movl $0x14, %edx
movq 0x76b7(%rip), %r15      # 0xffd0
movq %r15, %rdi
leaq 0x379b(%rip), %rsi      # 0xc0be
callq 0x22e0
jmp 0x8968
movq 0x8(%r15), %rdi
callq 0x464a
movq 0x50(%rbx), %rdi
movq %r15, %rsi
callq 0x905a
movl $0x13, %edx
movq 0x7685(%rip), %r15      # 0xffd0
movq %r15, %rdi
leaq 0x377e(%rip), %rsi      # 0xc0d3
callq 0x22e0
movl -0x4c(%rbp), %esi
movq %r15, %rdi
callq 0x21c0
movq %rax, %r15
movq (%r15), %rax
movq -0x18(%rax), %rdi
addq %r15, %rdi
movl $0xa, %esi
callq 0x2270
movsbl %al, %esi
movq %r15, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x21d0
movq 0x48(%rbx), %rdi
movq %r14, %rsi
movl $0x10000, %edx          # imm = 0x10000
callq 0x2a3e
testl %eax, %eax
jg 0x884c
movl $0x3e8, %edi            # imm = 0x3E8
callq 0x516f
movl -0x2c(%rbp), %eax
incl %eax
jmp 0x8808
movq 0x78(%rbx), %rdi
callq 0x82aa
movl $0x10098, %esi          # imm = 0x10098
movq %rbx, %rdi
callq 0x22b0
xorl %eax, %eax
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq