// File: UTAP[P]APHTTP/utils/request.cpp
// Function: Request::getSessionId[abi:cxx11]()
string Request::getSessionId() {
  string cookie = getHeader("cookie");
  if (cookie == "")
    return "";
  vector<string> v = split(cookie, ";");
  for (string kv : v) {
    vector<string> k = split(kv, "=");
    if (k[0] == "sessionId")
      return k[1];
  }
  return "";
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1c0, %rsp            # imm = 0x1C0
movq %rdi, -0x188(%rbp)
movq %rdi, %rax
movq %rax, -0x180(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x178(%rbp)
leaq -0x51(%rbp), %rdi
movq %rdi, -0x170(%rbp)
callq 0x46c0
movq -0x170(%rbp), %rdx
leaq 0x108d6(%rip), %rsi     # 0x21443
leaq -0x50(%rbp), %rdi
callq 0x4550
jmp 0x10b78
movq -0x178(%rbp), %rsi
leaq -0x30(%rbp), %rdi
leaq -0x50(%rbp), %rdx
callq 0x10620
jmp 0x10b8e
leaq -0x50(%rbp), %rdi
callq 0x4768
leaq -0x51(%rbp), %rdi
callq 0x4440
leaq 0x109ee(%rip), %rsi     # 0x21595
leaq -0x30(%rbp), %rdi
callq 0x99e0
movb %al, -0x189(%rbp)
jmp 0x10bb8
movb -0x189(%rbp), %al
testb $0x1, %al
jne 0x10bc7
jmp 0x10c64
leaq -0x65(%rbp), %rdi
movq %rdi, -0x198(%rbp)
callq 0x46c0
movq -0x188(%rbp), %rdi
movq -0x198(%rbp), %rdx
leaq 0x109a9(%rip), %rsi     # 0x21595
callq 0x4550
jmp 0x10bf3
leaq -0x65(%rbp), %rdi
callq 0x4440
movl $0x1, -0x6c(%rbp)
jmp 0x10fda
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x10c2b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x50(%rbp), %rdi
callq 0x4768
leaq -0x51(%rbp), %rdi
callq 0x4440
jmp 0x10ffc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x10ff3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x65(%rbp), %rdi
callq 0x4440
jmp 0x10ff3
leaq -0xa8(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0x4200
jmp 0x10c76
leaq -0xc9(%rbp), %rdi
movq %rdi, -0x1a0(%rbp)
callq 0x46c0
movq -0x1a0(%rbp), %rdx
leaq 0x10d54(%rip), %rsi     # 0x219eb
leaq -0xc8(%rbp), %rdi
callq 0x4550
jmp 0x10ca5
leaq -0x88(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
leaq -0xc8(%rbp), %rdx
movl $0x1, %ecx
callq 0x15320
jmp 0x10cc6
leaq -0xc8(%rbp), %rdi
callq 0x4768
leaq -0xc9(%rbp), %rdi
callq 0x4440
leaq -0xa8(%rbp), %rdi
callq 0x4768
leaq -0x88(%rbp), %rax
movq %rax, -0xd8(%rbp)
movq -0xd8(%rbp), %rdi
callq 0x135a0
movq %rax, -0xe0(%rbp)
movq -0xd8(%rbp), %rdi
callq 0x135d0
movq %rax, -0xe8(%rbp)
leaq -0xe0(%rbp), %rdi
leaq -0xe8(%rbp), %rsi
callq 0x13600
testb $0x1, %al
jne 0x10d3a
jmp 0x10f60
leaq -0xe0(%rbp), %rdi
callq 0x13640
movq %rax, %rsi
leaq -0x108(%rbp), %rdi
callq 0x4200
jmp 0x10d57
leaq -0x140(%rbp), %rdi
leaq -0x108(%rbp), %rsi
callq 0x4200
jmp 0x10d6c
leaq -0x161(%rbp), %rdi
movq %rdi, -0x1a8(%rbp)
callq 0x46c0
movq -0x1a8(%rbp), %rdx
leaq 0x106c6(%rip), %rsi     # 0x21453
leaq -0x160(%rbp), %rdi
callq 0x4550
jmp 0x10d9b
leaq -0x120(%rbp), %rdi
leaq -0x140(%rbp), %rsi
leaq -0x160(%rbp), %rdx
movl $0x1, %ecx
callq 0x15320
jmp 0x10dbc
leaq -0x160(%rbp), %rdi
callq 0x4768
leaq -0x161(%rbp), %rdi
callq 0x4440
leaq -0x140(%rbp), %rdi
callq 0x4768
xorl %eax, %eax
movl %eax, %esi
leaq -0x120(%rbp), %rdi
callq 0x13660
movq %rax, %rdi
leaq 0x10752(%rip), %rsi     # 0x2154c
callq 0x99e0
movb %al, -0x1a9(%rbp)
jmp 0x10e07
movb -0x1a9(%rbp), %al
testb $0x1, %al
jne 0x10e16
jmp 0x10f03
leaq -0x120(%rbp), %rdi
movl $0x1, %esi
callq 0x13660
movq -0x188(%rbp), %rdi
movq %rax, %rsi
callq 0x4200
jmp 0x10e38
movl $0x1, -0x6c(%rbp)
jmp 0x10f0a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x10e6a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0xc8(%rbp), %rdi
callq 0x4768
leaq -0xc9(%rbp), %rdi
callq 0x4440
leaq -0xa8(%rbp), %rdi
callq 0x4768
jmp 0x10ff3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x10fcc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x10f52
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
jmp 0x10ecf
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x160(%rbp), %rdi
callq 0x4768
leaq -0x161(%rbp), %rdi
callq 0x4440
leaq -0x140(%rbp), %rdi
callq 0x4768
jmp 0x10f52
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x120(%rbp), %rdi
callq 0x13680
jmp 0x10f52
movl $0x0, -0x6c(%rbp)
leaq -0x120(%rbp), %rdi
callq 0x13680
movl -0x6c(%rbp), %eax
testl %eax, %eax
jne 0x10f26
jmp 0x10f1f
movl $0x0, -0x6c(%rbp)
leaq -0x108(%rbp), %rdi
callq 0x4768
movl -0x6c(%rbp), %eax
testl %eax, %eax
jne 0x10fbe
jmp 0x10f3f
jmp 0x10f41
leaq -0xe0(%rbp), %rdi
callq 0x136e0
jmp 0x10d1e
leaq -0x108(%rbp), %rdi
callq 0x4768
jmp 0x10fcc
leaq -0x162(%rbp), %rdi
movq %rdi, -0x1b8(%rbp)
callq 0x46c0
movq -0x188(%rbp), %rdi
movq -0x1b8(%rbp), %rdx
leaq 0x1060d(%rip), %rsi     # 0x21595
callq 0x4550
jmp 0x10f8f
leaq -0x162(%rbp), %rdi
callq 0x4440
movl $0x1, -0x6c(%rbp)
jmp 0x10fbe
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x60(%rbp)
movl %eax, -0x64(%rbp)
leaq -0x162(%rbp), %rdi
callq 0x4440
jmp 0x10fcc
leaq -0x88(%rbp), %rdi
callq 0x13680
jmp 0x10fda
leaq -0x88(%rbp), %rdi
callq 0x13680
jmp 0x10ff3
leaq -0x30(%rbp), %rdi
callq 0x4768
movq -0x180(%rbp), %rax
addq $0x1c0, %rsp            # imm = 0x1C0
popq %rbp
retq
leaq -0x30(%rbp), %rdi
callq 0x4768
movq -0x60(%rbp), %rdi
callq 0x46b0
nopw %cs:(%rax,%rax)