// File: /workspace/github_c_makefile_star2_O1/niuyuling[P]CProxy/httpudp.c
// Function: udp_loop
void *udp_loop(void *nullPtr)
{
    int n;

    while (1) {
        n = epoll_wait(udp_efd, udp_evs, MAX_CLIENT_INFO * 2 + 1, -1);
        while (n-- > 0) {
            if (udp_evs[n].data.fd == global.udp_listen_fd) {
                new_client();
            } else {
                if (udp_evs[n].events & EPOLLIN) {
                    recvServer((info_t *) udp_evs[n].data.ptr);
                }
                if (udp_evs[n].events & EPOLLOUT) {
                    outEvent((info_t *) udp_evs[n].data.ptr);
                }
            }
        }
    }

    return NULL;                //消除编译警告
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
leaq 0x2069a83(%rip), %r14   # 0x2070940
leaq 0x5ca6c(%rip), %r15     # 0x63930
movl 0x2069a66(%rip), %edi   # 0x2070930
movq %r14, %rsi
movl $0x401, %edx            # imm = 0x401
movl $0xffffffff, %ecx       # imm = 0xFFFFFFFF
callq 0x23e0
testl %eax, %eax
jle 0x6ec4
movl %eax, %r13d
movq %r13, %rbx
decq %r13
leaq (,%r13,2), %rax
addq %r13, %rax
leaq 0x12475(%rip), %rcx     # 0x19370
movl 0x8(%rcx), %edi
cmpl %edi, 0x4(%r14,%rax,4)
jne 0x6f2c
xorl %r12d, %r12d
cmpl $-0x1, 0x1005c(%r12,%r15)
je 0x707c
addq $0x10068, %r12          # imm = 0x10068
cmpq $0x200d000, %r12        # imm = 0x200D000
jne 0x6f08
jmp 0x72c7
leaq (%r14,%rax,4), %r14
testb $0x1, (%r14)
je 0x7156
movq 0x4(%r14), %rbp
movl $0x0, 0x10064(%rbp)
movl 0x206ca2a(%rip), %eax   # 0x2073978
cmpl 0x10050(%rbp), %eax
jne 0x6fcb
movl 0x1005c(%rbp), %edi
movl $0x800, %edx            # imm = 0x800
leaq 0x206ce28(%rip), %rsi   # 0x2073d90
callq 0x2240
movq %rax, %r12
testl %r12d, %r12d
je 0x714e
jns 0x6f89
callq 0x2050
cmpl $0xb, (%rax)
jne 0x714e
cmpl $0x800, %r12d           # imm = 0x800
je 0x6f56
incl 0x10050(%rbp)
movq %rbp, 0x2069999(%rip)   # 0x2070938
movl $0x80000005, 0x206998b(%rip) # imm = 0x80000005
movl 0x2069981(%rip), %edi   # 0x2070930
movl 0x1005c(%rbp), %edx
movl $0x3, %esi
leaq 0x2069973(%rip), %rcx   # 0x2070934
callq 0x2220
jmp 0x7156
movq 0x10040(%rbp), %rdi
movslq 0x10054(%rbp), %rsi
addq $0x2000, %rsi           # imm = 0x2000
callq 0x23c0
testq %rax, %rax
je 0x714e
movq %rax, 0x10040(%rbp)
movl 0x1005c(%rbp), %edi
movslq 0x10054(%rbp), %rsi
addq %rax, %rsi
movl $0x2000, %edx           # imm = 0x2000
callq 0x2240
movq %rax, %r12
testl %r12d, %r12d
jle 0x7135
movl 0x206c963(%rip), %edx   # 0x2073984
testl %edx, %edx
je 0x703b
movslq 0x10054(%rbp), %rdi
addq 0x10040(%rbp), %rdi
movl %r12d, %esi
callq 0x37b0
movl 0x206c93f(%rip), %edx   # 0x2073980
testl %edx, %edx
je 0x705b
movslq 0x10054(%rbp), %rdi
addq 0x10040(%rbp), %rdi
movl %r12d, %esi
callq 0x37b0
addl %r12d, 0x10054(%rbp)
cmpl $0x2000, %r12d          # imm = 0x2000
je 0x6fcb
movq %rbp, %rdi
callq 0x753b
jmp 0x7156
leaq (%r12,%r15), %r14
addq $0x10014, %r14          # imm = 0x10014
movq %r14, 0x10(%rsp)
movl $0x10, 0x18(%rsp)
movq %rsp, %rax
movq %rax, 0x20(%rsp)
movq $0x1, 0x28(%rsp)
leaq 0x206c8e4(%rip), %rax   # 0x2073990
movq %rax, 0x30(%rsp)
movq $0x400, 0x38(%rsp)      # imm = 0x400
leaq 0x12(%r12,%r15), %rax
movq %rax, (%rsp)
movq $0xffff, 0x8(%rsp)      # imm = 0xFFFF
leaq 0x10(%rsp), %rbp
movq %rbp, %rsi
xorl %edx, %edx
callq 0x23d0
movl %eax, 0x34(%r14)
testl %eax, %eax
jle 0x72c7
movq 0x30(%rsp), %rax
cmpq $0x10, 0x38(%rsp)
setb %cl
testq %rax, %rax
sete %dl
orb %cl, %dl
jne 0x72c7
movq %rbp, %r14
leaq (%r15,%r12), %rbp
cmpl $0x0, 0x8(%rax)
jne 0x7120
cmpl $0x14, 0xc(%rax)
jne 0x7120
cmpq $0x20, (%rax)
jae 0x72f3
movq %r14, %rdi
movq %rax, %rsi
callq 0x24d0
testq %rax, %rax
jne 0x710a
jmp 0x72c7
je 0x714e
callq 0x2050
cmpl $0xb, (%rax)
jne 0x714e
cmpl $0x0, 0x10054(%rbp)
jne 0x706f
movq %rbp, %rdi
callq 0x6adf
testb $0x4, (%r14)
je 0x72c7
movq 0x4(%r14), %rbp
cmpl $-0x1, 0x1005c(%rbp)
je 0x72c7
cmpq $0x0, 0x10040(%rbp)
je 0x7194
movq %rbp, %rdi
callq 0x753b
testl %eax, %eax
je 0x7194
movq %rbp, %rdi
callq 0x6adf
jmp 0x72c7
movl $0x0, 0x10064(%rbp)
movl 0x206c7d4(%rip), %eax   # 0x2073978
movslq 0x10050(%rbp), %rcx
cmpl %ecx, %eax
jle 0x721c
movl 0x1005c(%rbp), %edi
movq %rcx, %rsi
addq 0x206c7a9(%rip), %rsi   # 0x2073968
subl %ecx, %eax
movslq %eax, %rdx
callq 0x20e0
testl %eax, %eax
jle 0x72dd
addl 0x10050(%rbp), %eax
movl %eax, 0x10050(%rbp)
cmpl %eax, 0x206c795(%rip)   # 0x2073978
jne 0x72c7
movq %rbp, 0x2069748(%rip)   # 0x2070938
movl $0x80000001, 0x206973a(%rip) # imm = 0x80000001
movl 0x2069730(%rip), %edi   # 0x2070930
movl 0x1005c(%rbp), %edx
movl $0x3, %esi
leaq 0x2069722(%rip), %rcx   # 0x2070934
callq 0x2220
jmp 0x72c7
movq %rbp, %r14
testq %rbp, %rbp
je 0x7292
movl 0x10048(%r14), %eax
movslq 0x1004c(%r14), %rcx
cmpl %ecx, %eax
je 0x7286
movl 0x1005c(%rbp), %edi
movq %rcx, %rsi
addq %r14, %rsi
subl %ecx, %eax
movslq %eax, %rdx
callq 0x20e0
testl %eax, %eax
jle 0x746a
addl 0x1004c(%r14), %eax
movl %eax, 0x1004c(%r14)
cmpl 0x10048(%r14), %eax
jl 0x72c0
cmpq %rbp, %r14
je 0x7286
movl $0xffffffff, 0x1005c(%r14) # imm = 0xFFFFFFFF
movl $0x0, 0x1004c(%r14)
movq 0x10038(%r14), %r14
testq %r14, %r14
jne 0x7224
movq %rbp, 0x206969f(%rip)   # 0x2070938
movl $0x80000001, 0x2069691(%rip) # imm = 0x80000001
movl 0x2069687(%rip), %edi   # 0x2070930
movl 0x1005c(%rbp), %edx
movl $0x3, %esi
leaq 0x2069679(%rip), %rcx   # 0x2070934
callq 0x2220
movq %r14, 0x10038(%rbp)
cmpq $0x1, %rbx
leaq 0x206966e(%rip), %r14   # 0x2070940
jg 0x6ee3
jmp 0x6ec4
je 0x7187
callq 0x2050
cmpl $0xb, (%rax)
jne 0x7187
jmp 0x72c7
movups 0x10(%rax), %xmm0
movups %xmm0, 0x10024(%r12,%r15)
movups 0x10(%rax), %xmm0
movups %xmm0, (%rbp)
movzwl 0x10048(%r12,%r15), %eax
movw %ax, 0x10(%r12,%r15)
movl 0x10048(%r12,%r15), %esi
addl $0x12, %esi
movl %esi, 0x10048(%r12,%r15)
movl 0x206c650(%rip), %edx   # 0x2073980
testl %edx, %edx
je 0x733c
movq %rbp, %rdi
callq 0x37b0
movl 0x206c642(%rip), %edx   # 0x2073984
testl %edx, %edx
je 0x7356
movl 0x10048(%r12,%r15), %esi
movq %rbp, %rdi
callq 0x37b0
movq $0x0, 0x10038(%r12,%r15)
xorl %eax, %eax
cmpq %rax, %r12
je 0x73ca
cmpl $0x0, 0x1005c(%rax,%r15)
js 0x73ca
movl 0x10026(%r12,%r15), %ecx
xorl 0x10026(%rax,%r15), %ecx
movzwl 0x1002a(%r12,%r15), %edx
xorw 0x1002a(%rax,%r15), %dx
movzwl %dx, %edx
orl %ecx, %edx
jne 0x73ca
movl 0x10016(%r12,%r15), %ecx
xorl 0x10016(%rax,%r15), %ecx
movzwl 0x1001a(%r12,%r15), %edx
xorw 0x1001a(%rax,%r15), %dx
movzwl %dx, %edx
orl %ecx, %edx
je 0x74ce
addq $0x10068, %rax          # imm = 0x10068
cmpq $0x200d000, %rax        # imm = 0x200D000
jne 0x7364
movl $0x0, 0x10064(%r12,%r15)
movl $0x2, %edi
movl $0x1, %esi
xorl %edx, %edx
callq 0x2540
movl %eax, 0x1005c(%r12,%r15)
testl %eax, %eax
js 0x72c7
movl %eax, %edi
movl $0x4, %esi
movl $0x800, %edx            # imm = 0x800
xorl %eax, %eax
callq 0x20d0
movl $0x80000005, 0x2069512(%rip) # imm = 0x80000005
movq %rbp, 0x206950f(%rip)   # 0x2070938
movl 0x2069501(%rip), %edi   # 0x2070930
movl 0x1005c(%r12,%r15), %edx
movl $0x1, %esi
leaq 0x20694f1(%rip), %rcx   # 0x2070934
callq 0x2220
movl 0x1005c(%r12,%r15), %edi
testl %eax, %eax
je 0x7483
callq 0x21e0
movl $0xffffffff, 0x1005c(%r12,%r15) # imm = 0xFFFFFFFF
jmp 0x72c7
je 0x7187
callq 0x2050
cmpl $0xb, (%rax)
jne 0x7187
jmp 0x72c0
leaq 0x206c4ce(%rip), %rsi   # 0x2073958
movl $0x10, %edx
callq 0x24b0
testl %eax, %eax
je 0x72c7
callq 0x2050
cmpl $0x73, (%rax)
je 0x72c7
movl 0x2069480(%rip), %edi   # 0x2070930
movl 0x1005c(%r12,%r15), %edx
movl $0x2, %esi
xorl %ecx, %ecx
callq 0x2220
movl 0x1005c(%r12,%r15), %edi
jmp 0x7454
leaq (%r15,%rax), %rcx
movq %rcx, %rsi
movq %rsi, %rdx
movq 0x10038(%rsi), %rsi
testq %rsi, %rsi
jne 0x74d5
movq %rbp, 0x10038(%rdx)
movl $0xfffffffe, 0x1005c(%r12,%r15) # imm = 0xFFFFFFFE
movl $0x10, 0x1004c(%r12,%r15)
movl 0x10050(%rax,%r15), %edx
cmpl 0x206c467(%rip), %edx   # 0x2073978
jle 0x72c7
movl $0x80000005, 0x2069413(%rip) # imm = 0x80000005
movq %rcx, 0x2069410(%rip)   # 0x2070938
movl 0x2069402(%rip), %edi   # 0x2070930
movl 0x1005c(%rax,%r15), %edx
jmp 0x7206