// File: fltflt[P]Tinyhttpd_with_threadpool_epoll/httpd.cpp
// Function: not_found(int)
void not_found(int client)
{
	char buf[1024];
 //返回404
	sprintf(buf, "HTTP/1.0 404 NOT FOUND\r\n");
	send(client, buf, strlen(buf), 0);
	sprintf(buf, SERVER_STRING);
	send(client, buf, strlen(buf), 0);
	sprintf(buf, "Content-Type: text/html\r\n");
	send(client, buf, strlen(buf), 0);
	sprintf(buf, "\r\n");
	send(client, buf, strlen(buf), 0);
	sprintf(buf, "<HTML><TITLE>Not Found</TITLE>\r\n");
	send(client, buf, strlen(buf), 0);
	sprintf(buf, "<BODY><P>The server could not fulfill\r\n");
	send(client, buf, strlen(buf), 0);
	sprintf(buf, "your request because the resource specified\r\n");
	send(client, buf, strlen(buf), 0);
	sprintf(buf, "is unavailable or nonexistent.\r\n");
	send(client, buf, strlen(buf), 0);
	sprintf(buf, "</BODY></HTML>\r\n");
	send(client, buf, strlen(buf), 0);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x4a0, %rsp            # imm = 0x4A0
movl %edi, -0x4(%rbp)
leaq -0x410(%rbp), %rdi
leaq 0xb29a(%rip), %rsi      # 0xf1e6
movb $0x0, %al
callq 0x3070
movl -0x4(%rbp), %eax
movl %eax, -0x49c(%rbp)
leaq -0x410(%rbp), %rax
movq %rax, -0x498(%rbp)
leaq -0x410(%rbp), %rdi
callq 0x3170
movl -0x49c(%rbp), %edi
movq -0x498(%rbp), %rsi
movq %rax, %rdx
xorl %ecx, %ecx
callq 0x31d0
leaq -0x410(%rbp), %rdi
leaq 0xb218(%rip), %rsi      # 0xf1b3
movb $0x0, %al
callq 0x3070
movl -0x4(%rbp), %eax
movl %eax, -0x48c(%rbp)
leaq -0x410(%rbp), %rax
movq %rax, -0x488(%rbp)
leaq -0x410(%rbp), %rdi
callq 0x3170
movl -0x48c(%rbp), %edi
movq -0x488(%rbp), %rsi
movq %rax, %rdx
xorl %ecx, %ecx
callq 0x31d0
leaq -0x410(%rbp), %rdi
leaq 0xb1e2(%rip), %rsi      # 0xf1cc
movb $0x0, %al
callq 0x3070
movl -0x4(%rbp), %eax
movl %eax, -0x47c(%rbp)
leaq -0x410(%rbp), %rax
movq %rax, -0x478(%rbp)
leaq -0x410(%rbp), %rdi
callq 0x3170
movl -0x47c(%rbp), %edi
movq -0x478(%rbp), %rsi
movq %rax, %rdx
xorl %ecx, %ecx
callq 0x31d0
leaq -0x410(%rbp), %rdi
leaq 0xb31f(%rip), %rsi      # 0xf358
movb $0x0, %al
callq 0x3070
movl -0x4(%rbp), %eax
movl %eax, -0x46c(%rbp)
leaq -0x410(%rbp), %rax
movq %rax, -0x468(%rbp)
leaq -0x410(%rbp), %rdi
callq 0x3170
movl -0x46c(%rbp), %edi
movq -0x468(%rbp), %rsi
movq %rax, %rdx
xorl %ecx, %ecx
callq 0x31d0
leaq -0x410(%rbp), %rdi
leaq 0xb177(%rip), %rsi      # 0xf1ff
movb $0x0, %al
callq 0x3070
movl -0x4(%rbp), %eax
movl %eax, -0x45c(%rbp)
leaq -0x410(%rbp), %rax
movq %rax, -0x458(%rbp)
leaq -0x410(%rbp), %rdi
callq 0x3170
movl -0x45c(%rbp), %edi
movq -0x458(%rbp), %rsi
movq %rax, %rdx
xorl %ecx, %ecx
callq 0x31d0
leaq -0x410(%rbp), %rdi
leaq 0xb149(%rip), %rsi      # 0xf220
movb $0x0, %al
callq 0x3070
movl -0x4(%rbp), %eax
movl %eax, -0x44c(%rbp)
leaq -0x410(%rbp), %rax
movq %rax, -0x448(%rbp)
leaq -0x410(%rbp), %rdi
callq 0x3170
movl -0x44c(%rbp), %edi
movq -0x448(%rbp), %rsi
movq %rax, %rdx
xorl %ecx, %ecx
callq 0x31d0
leaq -0x410(%rbp), %rdi
leaq 0xb122(%rip), %rsi      # 0xf248
movb $0x0, %al
callq 0x3070
movl -0x4(%rbp), %eax
movl %eax, -0x43c(%rbp)
leaq -0x410(%rbp), %rax
movq %rax, -0x438(%rbp)
leaq -0x410(%rbp), %rdi
callq 0x3170
movl -0x43c(%rbp), %edi
movq -0x438(%rbp), %rsi
movq %rax, %rdx
xorl %ecx, %ecx
callq 0x31d0
leaq -0x410(%rbp), %rdi
leaq 0xb101(%rip), %rsi      # 0xf276
movb $0x0, %al
callq 0x3070
movl -0x4(%rbp), %eax
movl %eax, -0x42c(%rbp)
leaq -0x410(%rbp), %rax
movq %rax, -0x428(%rbp)
leaq -0x410(%rbp), %rdi
callq 0x3170
movl -0x42c(%rbp), %edi
movq -0x428(%rbp), %rsi
movq %rax, %rdx
xorl %ecx, %ecx
callq 0x31d0
leaq -0x410(%rbp), %rdi
leaq 0xb0d3(%rip), %rsi      # 0xf297
movb $0x0, %al
callq 0x3070
movl -0x4(%rbp), %eax
movl %eax, -0x41c(%rbp)
leaq -0x410(%rbp), %rax
movq %rax, -0x418(%rbp)
leaq -0x410(%rbp), %rdi
callq 0x3170
movl -0x41c(%rbp), %edi
movq -0x418(%rbp), %rsi
movq %rax, %rdx
xorl %ecx, %ecx
callq 0x31d0
addq $0x4a0, %rsp            # imm = 0x4A0
popq %rbp
retq
nop