// File: /workspace/github_cpp_makefile_star2_O3/alfanick[P]rest-cpp/src/rest/response.cpp
// Function: REST::Response::cache(unsigned long)
void Response::cache(unsigned long t) {
  if (t > 0) {
    headers["Cache-Control"] = "max-age=" + std::to_string(t) + ", public";
    headers["Expires"] = REST::Utils::rfc1123_datetime(time(0) + t);
  } else {
    headers["Cache-Control"] = "no-cache, no-store, must-revalidate";
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x88, %rsp
movq %rdi, %rbx
testq %rsi, %rsi
je 0x3a86e
movl $0x1, %eax
movq %rsi, %r14
cmpq $0xa, %rsi
jb 0x3a8d5
movl $0x4, %eax
movabsq $0x346dc5d63886594b, %rcx # imm = 0x346DC5D63886594B
movq %r14, %rdx
cmpq $0x63, %rdx
jbe 0x3a8ce
cmpq $0x3e7, %rdx            # imm = 0x3E7
jbe 0x3a8d3
cmpq $0x2710, %rdx           # imm = 0x2710
jb 0x3a8d5
mulxq %rcx, %rsi, %rsi
addl $0x4, %eax
shrq $0xb, %rsi
cmpq $0x1869f, %rdx          # imm = 0x1869F
movq %rsi, %rdx
ja 0x3a82d
addl $-0x3, %eax
jmp 0x3a8d5
leaq 0x18(%rsp), %r14
movq %r14, -0x10(%r14)
leaq 0x517c(%rip), %rsi      # 0x3f9fa
leaq 0x5182(%rip), %rdx      # 0x3fa07
leaq 0x8(%rsp), %rdi
callq 0x215e0
addq $0x48, %rbx
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x23320
movq 0x8(%rax), %rdx
leaq 0x5165(%rip), %rcx      # 0x3fa10
movl $0x23, %r8d
movq %rax, %rdi
xorl %esi, %esi
callq 0x22ca0
movq 0x8(%rsp), %rdi
cmpq %r14, %rdi
jne 0x3aa99
jmp 0x3aa9e
addl $-0x2, %eax
jmp 0x3a8d5
decl %eax
leaq 0x78(%rsp), %r12
leaq 0x68(%rsp), %r15
movl %eax, %esi
xorl %edx, %edx
movq %r15, %rdi
movq %r12, -0x10(%r12)
callq 0x22520
movq (%r15), %rdi
movl 0x8(%r15), %esi
movq %r14, %rdx
callq 0x22110
leaq 0x50e2(%rip), %rcx      # 0x3f9e8
movl $0x8, %r8d
movq %r15, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x22460
leaq 0x38(%rsp), %r15
movq %rax, %rcx
addq $0x10, %rcx
movq %r15, -0x10(%r15)
movq (%rax), %rdx
cmpq %rcx, %rdx
je 0x3a93f
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x3a948
vmovups (%rcx), %xmm0
vmovups %xmm0, (%r15)
movq 0x8(%rax), %rdx
leaq 0x28(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x5086(%rip), %rsi      # 0x3f9f1
callq 0x233c0
leaq 0x18(%rsp), %r13
movq %rax, %rcx
addq $0x10, %rcx
movq %r13, -0x10(%r13)
movq (%rax), %rdx
cmpq %rcx, %rdx
je 0x3a997
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x3a9a1
vmovups (%rcx), %xmm0
vmovups %xmm0, (%r13)
movq 0x8(%rax), %rdx
leaq 0x58(%rsp), %rbp
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %rbp, -0x10(%rbp)
leaq 0x5031(%rip), %rsi      # 0x3f9fa
leaq 0x5037(%rip), %rdx      # 0x3fa07
leaq 0x48(%rsp), %rdi
callq 0x215e0
addq $0x48, %rbx
leaq 0x48(%rsp), %rsi
movq %rbx, %rdi
callq 0x23320
leaq 0x8(%rsp), %rsi
movq %rax, %rdi
callq 0x22620
movq 0x48(%rsp), %rdi
cmpq %rbp, %rdi
je 0x3aa07
callq 0x22130
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x3aa16
callq 0x22130
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x3aa25
callq 0x22130
movq 0x68(%rsp), %rdi
cmpq %r12, %rdi
je 0x3aa34
callq 0x22130
xorl %edi, %edi
callq 0x22090
addq %rax, %r14
leaq 0x8(%rsp), %rdi
movq %r14, %rsi
callq 0x220f0
leaq 0x28(%rsp), %rdi
movq %r15, (%rdi)
leaq 0x4fae(%rip), %rsi      # 0x3fa08
leaq 0x4fae(%rip), %rdx      # 0x3fa0f
callq 0x215e0
leaq 0x28(%rsp), %rsi
movq %rbx, %rdi
callq 0x23320
leaq 0x8(%rsp), %rsi
movq %rax, %rdi
callq 0x22620
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x3aa8f
callq 0x22130
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x3aa9e
callq 0x22130
addq $0x88, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
jmp 0x3ab26
movq 0x28(%rsp), %rdi
movq %rax, %rbx
cmpq %r15, %rdi
je 0x3aacc
callq 0x22130
jmp 0x3aacc
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
jne 0x3ab21
jmp 0x3ab26
movq 0x48(%rsp), %rdi
movq %rax, %rbx
cmpq %rbp, %rdi
je 0x3aaef
callq 0x22130
jmp 0x3aaef
movq %rax, %rbx
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x3ab03
callq 0x22130
jmp 0x3ab03
movq %rax, %rbx
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x3ab17
callq 0x22130
jmp 0x3ab17
movq %rax, %rbx
movq 0x68(%rsp), %rdi
cmpq %r12, %rdi
je 0x3ab26
callq 0x22130
movq %rbx, %rdi
callq 0x23160
movq 0x8(%rsp), %rdi
movq %rax, %rbx
cmpq %r14, %rdi
jne 0x3ab21
jmp 0x3ab26
nop