// File: solaldunckel[P]webserv/srcs/Utils/StatusCode.cpp
// Function: StatusCode::StatusCode()
StatusCode::StatusCode() {
  // Informational 1xx
  error_codes_[100] = "Continue";
  error_codes_[101] = "Switching Protocols";

  // Successful 2xx
  error_codes_[200] = "OK";
  error_codes_[201] = "Created";
  error_codes_[202] = "Accepted";
  error_codes_[203] = "Non-Authoritative Information";
  error_codes_[204] = "No Content";
  error_codes_[205] = "Reset Content";
  error_codes_[206] = "Partial Content";

  // Redirection 3xx
  error_codes_[300] = "Multiple Choices";
  error_codes_[301] = "Moved Permanently";
  error_codes_[302] = "Found";
  error_codes_[303] = "See Other";
  error_codes_[304] = "Not Modified";
  error_codes_[305] = "Use Proxy";
  error_codes_[307] = "Temporary Redirect";

  // Client Error 4xx
  error_codes_[400] = "Bad Request";
  error_codes_[401] = "Unauthorized";
  error_codes_[402] = "Payment Required";
  error_codes_[403] = "Forbidden";
  error_codes_[404] = "Not Found";
  error_codes_[405] = "Method Not Allowed";
  error_codes_[406] = "Not Acceptable";
  error_codes_[407] = "Proxy Authentication Required";
  error_codes_[408] = "Request Timeout";
  error_codes_[409] = "Conflict";
  error_codes_[410] = "Gone";
  error_codes_[411] = "Length Required";
  error_codes_[412] = "Precondition Failed";
  error_codes_[413] = "Payload Too Large";
  error_codes_[414] = "URI Too Long";
  error_codes_[415] = "Unsupported Media Type";
  error_codes_[416] = "Range Not Satisfiable";
  error_codes_[417] = "Expectation Failed";
  error_codes_[426] = "Upgrade Required";

  // Server Error 5xx
  error_codes_[500] = "Internal Server Error";
  error_codes_[501] = "Not Implemented";
  error_codes_[502] = "Bad Gateway";
  error_codes_[503] = "Service Unavailable";
  error_codes_[504] = "Gateway Timeout";
  error_codes_[505] = "HTTP Version Not Supported";
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x220, %rsp            # imm = 0x220
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0xd0(%rbp)
movq %rdi, %rax
movq %rax, -0xd8(%rbp)
callq 0x18800
movq -0xd0(%rbp), %rdi
movl $0x64, -0xc(%rbp)
leaq -0xc(%rbp), %rsi
callq 0x40e40
movq %rax, -0xc8(%rbp)
jmp 0x40529
movq -0xc8(%rbp), %rdi
leaq 0x42d4(%rip), %rsi      # 0x4480b
callq 0x5780
jmp 0x4053e
movq -0xd8(%rbp), %rdi
movl $0x65, -0x20(%rbp)
leaq -0x20(%rbp), %rsi
callq 0x40e40
movq %rax, -0xe0(%rbp)
jmp 0x4055e
movq -0xe0(%rbp), %rdi
leaq 0x42a8(%rip), %rsi      # 0x44814
callq 0x5780
jmp 0x40573
movq -0xd8(%rbp), %rdi
movl $0xc8, -0x24(%rbp)
leaq -0x24(%rbp), %rsi
callq 0x40e40
movq %rax, -0xe8(%rbp)
jmp 0x40593
movq -0xe8(%rbp), %rdi
leaq 0x4287(%rip), %rsi      # 0x44828
callq 0x5780
jmp 0x405a8
movq -0xd8(%rbp), %rdi
movl $0xc9, -0x28(%rbp)
leaq -0x28(%rbp), %rsi
callq 0x40e40
movq %rax, -0xf0(%rbp)
jmp 0x405c8
movq -0xf0(%rbp), %rdi
leaq 0x4255(%rip), %rsi      # 0x4482b
callq 0x5780
jmp 0x405dd
movq -0xd8(%rbp), %rdi
movl $0xca, -0x2c(%rbp)
leaq -0x2c(%rbp), %rsi
callq 0x40e40
movq %rax, -0xf8(%rbp)
jmp 0x405fd
movq -0xf8(%rbp), %rdi
leaq 0x4228(%rip), %rsi      # 0x44833
callq 0x5780
jmp 0x40612
movq -0xd8(%rbp), %rdi
movl $0xcb, -0x30(%rbp)
leaq -0x30(%rbp), %rsi
callq 0x40e40
movq %rax, -0x100(%rbp)
jmp 0x40632
movq -0x100(%rbp), %rdi
leaq 0x41fc(%rip), %rsi      # 0x4483c
callq 0x5780
jmp 0x40647
movq -0xd8(%rbp), %rdi
movl $0xcc, -0x34(%rbp)
leaq -0x34(%rbp), %rsi
callq 0x40e40
movq %rax, -0x108(%rbp)
jmp 0x40667
movq -0x108(%rbp), %rdi
leaq 0x41e5(%rip), %rsi      # 0x4485a
callq 0x5780
jmp 0x4067c
movq -0xd8(%rbp), %rdi
movl $0xcd, -0x38(%rbp)
leaq -0x38(%rbp), %rsi
callq 0x40e40
movq %rax, -0x110(%rbp)
jmp 0x4069c
movq -0x110(%rbp), %rdi
leaq 0x41bb(%rip), %rsi      # 0x44865
callq 0x5780
jmp 0x406b1
movq -0xd8(%rbp), %rdi
movl $0xce, -0x3c(%rbp)
leaq -0x3c(%rbp), %rsi
callq 0x40e40
movq %rax, -0x118(%rbp)
jmp 0x406d1
movq -0x118(%rbp), %rdi
leaq 0x4194(%rip), %rsi      # 0x44873
callq 0x5780
jmp 0x406e6
movq -0xd8(%rbp), %rdi
movl $0x12c, -0x40(%rbp)     # imm = 0x12C
leaq -0x40(%rbp), %rsi
callq 0x40e40
movq %rax, -0x120(%rbp)
jmp 0x40706
movq -0x120(%rbp), %rdi
leaq 0x416f(%rip), %rsi      # 0x44883
callq 0x5780
jmp 0x4071b
movq -0xd8(%rbp), %rdi
movl $0x12d, -0x44(%rbp)     # imm = 0x12D
leaq -0x44(%rbp), %rsi
callq 0x40e40
movq %rax, -0x128(%rbp)
jmp 0x4073b
movq -0x128(%rbp), %rdi
leaq 0x414b(%rip), %rsi      # 0x44894
callq 0x5780
jmp 0x40750
movq -0xd8(%rbp), %rdi
movl $0x12e, -0x48(%rbp)     # imm = 0x12E
leaq -0x48(%rbp), %rsi
callq 0x40e40
movq %rax, -0x130(%rbp)
jmp 0x40770
movq -0x130(%rbp), %rdi
leaq 0x4194(%rip), %rsi      # 0x44912
callq 0x5780
jmp 0x40785
movq -0xd8(%rbp), %rdi
movl $0x12f, -0x4c(%rbp)     # imm = 0x12F
leaq -0x4c(%rbp), %rsi
callq 0x40e40
movq %rax, -0x138(%rbp)
jmp 0x407a5
movq -0x138(%rbp), %rdi
leaq 0x40f3(%rip), %rsi      # 0x448a6
callq 0x5780
jmp 0x407ba
movq -0xd8(%rbp), %rdi
movl $0x130, -0x50(%rbp)     # imm = 0x130
leaq -0x50(%rbp), %rsi
callq 0x40e40
movq %rax, -0x140(%rbp)
jmp 0x407da
movq -0x140(%rbp), %rdi
leaq 0x40c8(%rip), %rsi      # 0x448b0
callq 0x5780
jmp 0x407ef
movq -0xd8(%rbp), %rdi
movl $0x131, -0x54(%rbp)     # imm = 0x131
leaq -0x54(%rbp), %rsi
callq 0x40e40
movq %rax, -0x148(%rbp)
jmp 0x4080f
movq -0x148(%rbp), %rdi
leaq 0x40a0(%rip), %rsi      # 0x448bd
callq 0x5780
jmp 0x40824
movq -0xd8(%rbp), %rdi
movl $0x133, -0x58(%rbp)     # imm = 0x133
leaq -0x58(%rbp), %rsi
callq 0x40e40
movq %rax, -0x150(%rbp)
jmp 0x40844
movq -0x150(%rbp), %rdi
leaq 0x4075(%rip), %rsi      # 0x448c7
callq 0x5780
jmp 0x40859
movq -0xd8(%rbp), %rdi
movl $0x190, -0x5c(%rbp)     # imm = 0x190
leaq -0x5c(%rbp), %rsi
callq 0x40e40
movq %rax, -0x158(%rbp)
jmp 0x40879
movq -0x158(%rbp), %rdi
leaq 0x4053(%rip), %rsi      # 0x448da
callq 0x5780
jmp 0x4088e
movq -0xd8(%rbp), %rdi
movl $0x191, -0x60(%rbp)     # imm = 0x191
leaq -0x60(%rbp), %rsi
callq 0x40e40
movq %rax, -0x160(%rbp)
jmp 0x408ae
movq -0x160(%rbp), %rdi
leaq 0x402a(%rip), %rsi      # 0x448e6
callq 0x5780
jmp 0x408c3
movq -0xd8(%rbp), %rdi
movl $0x192, -0x64(%rbp)     # imm = 0x192
leaq -0x64(%rbp), %rsi
callq 0x40e40
movq %rax, -0x168(%rbp)
jmp 0x408e3
movq -0x168(%rbp), %rdi
leaq 0x4002(%rip), %rsi      # 0x448f3
callq 0x5780
jmp 0x408f8
movq -0xd8(%rbp), %rdi
movl $0x193, -0x68(%rbp)     # imm = 0x193
leaq -0x68(%rbp), %rsi
callq 0x40e40
movq %rax, -0x170(%rbp)
jmp 0x40918
movq -0x170(%rbp), %rdi
leaq 0x3fde(%rip), %rsi      # 0x44904
callq 0x5780
jmp 0x4092d
movq -0xd8(%rbp), %rdi
movl $0x194, -0x6c(%rbp)     # imm = 0x194
leaq -0x6c(%rbp), %rsi
callq 0x40e40
movq %rax, -0x178(%rbp)
jmp 0x4094d
movq -0x178(%rbp), %rdi
leaq 0x3fb3(%rip), %rsi      # 0x4490e
callq 0x5780
jmp 0x40962
movq -0xd8(%rbp), %rdi
movl $0x195, -0x70(%rbp)     # imm = 0x195
leaq -0x70(%rbp), %rsi
callq 0x40e40
movq %rax, -0x180(%rbp)
jmp 0x40982
movq -0x180(%rbp), %rdi
leaq 0x3f88(%rip), %rsi      # 0x44918
callq 0x5780
jmp 0x40997
movq -0xd8(%rbp), %rdi
movl $0x196, -0x74(%rbp)     # imm = 0x196
leaq -0x74(%rbp), %rsi
callq 0x40e40
movq %rax, -0x188(%rbp)
jmp 0x409b7
movq -0x188(%rbp), %rdi
leaq 0x3f66(%rip), %rsi      # 0x4492b
callq 0x5780
jmp 0x409cc
movq -0xd8(%rbp), %rdi
movl $0x197, -0x78(%rbp)     # imm = 0x197
leaq -0x78(%rbp), %rsi
callq 0x40e40
movq %rax, -0x190(%rbp)
jmp 0x409ec
movq -0x190(%rbp), %rdi
leaq 0x3f40(%rip), %rsi      # 0x4493a
callq 0x5780
jmp 0x40a01
movq -0xd8(%rbp), %rdi
movl $0x198, -0x7c(%rbp)     # imm = 0x198
leaq -0x7c(%rbp), %rsi
callq 0x40e40
movq %rax, -0x198(%rbp)
jmp 0x40a21
movq -0x198(%rbp), %rdi
leaq 0x3f29(%rip), %rsi      # 0x44958
callq 0x5780
jmp 0x40a36
movq -0xd8(%rbp), %rdi
movl $0x199, -0x80(%rbp)     # imm = 0x199
leaq -0x80(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1a0(%rbp)
jmp 0x40a56
movq -0x1a0(%rbp), %rdi
leaq 0x3f04(%rip), %rsi      # 0x44968
callq 0x5780
jmp 0x40a6b
movq -0xd8(%rbp), %rdi
movl $0x19a, -0x84(%rbp)     # imm = 0x19A
leaq -0x84(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1a8(%rbp)
jmp 0x40a91
movq -0x1a8(%rbp), %rdi
leaq 0x3ed2(%rip), %rsi      # 0x44971
callq 0x5780
jmp 0x40aa6
movq -0xd8(%rbp), %rdi
movl $0x19b, -0x88(%rbp)     # imm = 0x19B
leaq -0x88(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1b0(%rbp)
jmp 0x40acc
movq -0x1b0(%rbp), %rdi
leaq 0x3e9c(%rip), %rsi      # 0x44976
callq 0x5780
jmp 0x40ae1
movq -0xd8(%rbp), %rdi
movl $0x19c, -0x8c(%rbp)     # imm = 0x19C
leaq -0x8c(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1b8(%rbp)
jmp 0x40b07
movq -0x1b8(%rbp), %rdi
leaq 0x3e71(%rip), %rsi      # 0x44986
callq 0x5780
jmp 0x40b1c
movq -0xd8(%rbp), %rdi
movl $0x19d, -0x90(%rbp)     # imm = 0x19D
leaq -0x90(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1c0(%rbp)
jmp 0x40b42
movq -0x1c0(%rbp), %rdi
leaq 0x3e4a(%rip), %rsi      # 0x4499a
callq 0x5780
jmp 0x40b57
movq -0xd8(%rbp), %rdi
movl $0x19e, -0x94(%rbp)     # imm = 0x19E
leaq -0x94(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1c8(%rbp)
jmp 0x40b7d
movq -0x1c8(%rbp), %rdi
leaq 0x3e21(%rip), %rsi      # 0x449ac
callq 0x5780
jmp 0x40b92
movq -0xd8(%rbp), %rdi
movl $0x19f, -0x98(%rbp)     # imm = 0x19F
leaq -0x98(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1d0(%rbp)
jmp 0x40bb8
movq -0x1d0(%rbp), %rdi
leaq 0x3df3(%rip), %rsi      # 0x449b9
callq 0x5780
jmp 0x40bcd
movq -0xd8(%rbp), %rdi
movl $0x1a0, -0x9c(%rbp)     # imm = 0x1A0
leaq -0x9c(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1d8(%rbp)
jmp 0x40bf3
movq -0x1d8(%rbp), %rdi
leaq 0x3dcf(%rip), %rsi      # 0x449d0
callq 0x5780
jmp 0x40c08
movq -0xd8(%rbp), %rdi
movl $0x1a1, -0xa0(%rbp)     # imm = 0x1A1
leaq -0xa0(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1e0(%rbp)
jmp 0x40c2e
movq -0x1e0(%rbp), %rdi
leaq 0x3daa(%rip), %rsi      # 0x449e6
callq 0x5780
jmp 0x40c43
movq -0xd8(%rbp), %rdi
movl $0x1aa, -0xa4(%rbp)     # imm = 0x1AA
leaq -0xa4(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1e8(%rbp)
jmp 0x40c69
movq -0x1e8(%rbp), %rdi
leaq 0x3d82(%rip), %rsi      # 0x449f9
callq 0x5780
jmp 0x40c7e
movq -0xd8(%rbp), %rdi
movl $0x1f4, -0xa8(%rbp)     # imm = 0x1F4
leaq -0xa8(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1f0(%rbp)
jmp 0x40ca4
movq -0x1f0(%rbp), %rdi
leaq 0x3d58(%rip), %rsi      # 0x44a0a
callq 0x5780
jmp 0x40cb9
movq -0xd8(%rbp), %rdi
movl $0x1f5, -0xac(%rbp)     # imm = 0x1F5
leaq -0xac(%rbp), %rsi
callq 0x40e40
movq %rax, -0x1f8(%rbp)
jmp 0x40cdf
movq -0x1f8(%rbp), %rdi
leaq 0x3d33(%rip), %rsi      # 0x44a20
callq 0x5780
jmp 0x40cf4
movq -0xd8(%rbp), %rdi
movl $0x1f6, -0xb0(%rbp)     # imm = 0x1F6
leaq -0xb0(%rbp), %rsi
callq 0x40e40
movq %rax, -0x200(%rbp)
jmp 0x40d1a
movq -0x200(%rbp), %rdi
leaq 0x3d08(%rip), %rsi      # 0x44a30
callq 0x5780
jmp 0x40d2f
movq -0xd8(%rbp), %rdi
movl $0x1f7, -0xb4(%rbp)     # imm = 0x1F7
leaq -0xb4(%rbp), %rsi
callq 0x40e40
movq %rax, -0x208(%rbp)
jmp 0x40d55
movq -0x208(%rbp), %rdi
leaq 0x3cd9(%rip), %rsi      # 0x44a3c
callq 0x5780
jmp 0x40d6a
movq -0xd8(%rbp), %rdi
movl $0x1f8, -0xb8(%rbp)     # imm = 0x1F8
leaq -0xb8(%rbp), %rsi
callq 0x40e40
movq %rax, -0x210(%rbp)
jmp 0x40d90
movq -0x210(%rbp), %rdi
leaq 0x3cb2(%rip), %rsi      # 0x44a50
callq 0x5780
jmp 0x40da5
movq -0xd8(%rbp), %rdi
movl $0x1f9, -0xbc(%rbp)     # imm = 0x1F9
leaq -0xbc(%rbp), %rsi
callq 0x40e40
movq %rax, -0x218(%rbp)
jmp 0x40dcb
movq -0x218(%rbp), %rdi
leaq 0x3c87(%rip), %rsi      # 0x44a60
callq 0x5780
jmp 0x40de0
addq $0x220, %rsp            # imm = 0x220
popq %rbp
retq
movq -0xd0(%rbp), %rdi
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x18(%rbp)
movl %eax, -0x1c(%rbp)
callq 0xc440
movq -0x18(%rbp), %rdi
callq 0x5950
nopw (%rax,%rax)