// File: romkatv[P]hcproxy/src/event_loop.cc
// Function: hcproxy::EventLoop::Remove(hcproxy::EventHandler*)
void EventLoop::Remove(EventHandler* eh) {
  CHECK(eh);
  CHECK(eh->event_loop_ == this);
  CHECK(std::this_thread::get_id() == loop_.get_id());
  expire_.Erase(eh);
  epoll_.Remove(eh->fd_);
  eh->event_loop_ = nullptr;
  eh->DecRef();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x130, %rsp            # imm = 0x130
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0xb0(%rbp)
movq -0x10(%rbp), %rax
movb $0x0, -0x31(%rbp)
cmpq $0x0, %rax
je 0x32fe1
jmp 0x33067
leaq 0xb23f4(%rip), %rsi     # 0xe53dc
leaq -0x30(%rbp), %rdi
movq %rdi, -0xc0(%rbp)
movl $0x43, %edx
movl $0x3, %ecx
callq 0x194b0
movq -0xc0(%rbp), %rdi
movb $0x1, -0x31(%rbp)
callq 0x194e0
movq %rax, -0xb8(%rbp)
jmp 0x3301b
movq -0xb8(%rbp), %rdi
leaq 0xb23f2(%rip), %rsi     # 0xe541b
callq 0x19450
movq %rax, -0xc8(%rbp)
jmp 0x33037
movq -0xc8(%rbp), %rdi
leaq 0xb6346(%rip), %rsi     # 0xe938b
callq 0x19450
movq %rax, -0xd0(%rbp)
jmp 0x33053
movq -0xd0(%rbp), %rsi
leaq -0x45(%rbp), %rdi
callq 0x194f0
jmp 0x33065
jmp 0x33067
testb $0x1, -0x31(%rbp)
jne 0x3306f
jmp 0x33093
leaq -0x30(%rbp), %rdi
callq 0x19500
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
testb $0x1, -0x31(%rbp)
jne 0x33147
jmp 0x33150
movq -0xb0(%rbp), %rcx
movq -0x10(%rbp), %rax
movq 0x28(%rax), %rax
movb $0x0, -0x69(%rbp)
cmpq %rcx, %rax
jne 0x330b0
jmp 0x33136
leaq 0xb2325(%rip), %rsi     # 0xe53dc
leaq -0x68(%rbp), %rdi
movq %rdi, -0xe0(%rbp)
movl $0x44, %edx
movl $0x3, %ecx
callq 0x194b0
movq -0xe0(%rbp), %rdi
movb $0x1, -0x69(%rbp)
callq 0x194e0
movq %rax, -0xd8(%rbp)
jmp 0x330ea
movq -0xd8(%rbp), %rdi
leaq 0xb2364(%rip), %rsi     # 0xe545c
callq 0x1bfe0
movq %rax, -0xe8(%rbp)
jmp 0x33106
movq -0xe8(%rbp), %rdi
leaq 0xb6277(%rip), %rsi     # 0xe938b
callq 0x19450
movq %rax, -0xf0(%rbp)
jmp 0x33122
movq -0xf0(%rbp), %rsi
leaq -0x6a(%rbp), %rdi
callq 0x194f0
jmp 0x33134
jmp 0x33136
testb $0x1, -0x69(%rbp)
jne 0x3313e
jmp 0x33170
leaq -0x68(%rbp), %rdi
callq 0x19500
leaq -0x30(%rbp), %rdi
callq 0x19500
jmp 0x33312
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
testb $0x1, -0x69(%rbp)
jne 0x33252
jmp 0x3325b
callq 0x342e0
movq -0xb0(%rbp), %rdi
movq %rax, -0x78(%rbp)
addq $0x50, %rdi
callq 0x34310
movq %rax, -0x80(%rbp)
movq -0x78(%rbp), %rdi
movq -0x80(%rbp), %rsi
callq 0x27c50
movb $0x0, -0xa1(%rbp)
testb $0x1, %al
jne 0x331a7
jmp 0x331ac
jmp 0x3323b
leaq 0xb2229(%rip), %rsi     # 0xe53dc
leaq -0xa0(%rbp), %rdi
movq %rdi, -0x100(%rbp)
movl $0x45, %edx
movl $0x3, %ecx
callq 0x194b0
movq -0x100(%rbp), %rdi
movb $0x1, -0xa1(%rbp)
callq 0x194e0
movq %rax, -0xf8(%rbp)
jmp 0x331ec
movq -0xf8(%rbp), %rdi
leaq 0xb2235(%rip), %rsi     # 0xe542f
callq 0x34330
movq %rax, -0x108(%rbp)
jmp 0x33208
movq -0x108(%rbp), %rdi
leaq 0xb6175(%rip), %rsi     # 0xe938b
callq 0x19450
movq %rax, -0x110(%rbp)
jmp 0x33224
movq -0x110(%rbp), %rsi
leaq -0xa2(%rbp), %rdi
callq 0x194f0
jmp 0x33239
jmp 0x3323b
testb $0x1, -0xa1(%rbp)
jne 0x33246
jmp 0x3327e
leaq -0xa0(%rbp), %rdi
callq 0x19500
leaq -0x68(%rbp), %rdi
callq 0x19500
jmp 0x33312
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
testb $0x1, -0xa1(%rbp)
jne 0x33304
jmp 0x33310
movq -0xb0(%rbp), %rax
addq $0x38, %rax
movq %rax, -0x128(%rbp)
movq -0x10(%rbp), %rcx
movq %rcx, -0x120(%rbp)
xorl %eax, %eax
cmpq $0x0, %rcx
movq %rax, -0x118(%rbp)
je 0x332bc
movq -0x120(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x118(%rbp)
movq -0x128(%rbp), %rdi
movq -0x118(%rbp), %rsi
callq 0x18c40
movq -0xb0(%rbp), %rdi
addq $0x8, %rdi
movq -0x10(%rbp), %rax
movl 0x18(%rax), %esi
callq 0x2c1d0
movq -0x10(%rbp), %rax
movq $0x0, 0x28(%rax)
movq -0x10(%rbp), %rdi
callq 0x31940
addq $0x130, %rsp            # imm = 0x130
popq %rbp
retq
leaq -0xa0(%rbp), %rdi
callq 0x19500
jmp 0x33312
movq -0x40(%rbp), %rdi
callq 0xe1080
nopl (%rax,%rax)