// File: /workspace/github_c_makefile_star2_O2/coyove[P]chann/./lib/mongoose/mongoose.c
// Function: open_local_endpoint
static void open_local_endpoint(struct connection *conn, int skip_user) {
#ifndef MONGOOSE_NO_FILESYSTEM
  char path[MAX_PATH_SIZE];
  file_stat_t st;
  int exists = 0;
#endif

  // If EP_USER was set in a prev call, reset it
  conn->endpoint_type = EP_NONE;

#ifndef MONGOOSE_NO_AUTH
  if (conn->server->event_handler && call_user(conn, MG_AUTH) == MG_FALSE) {
    mg_send_digest_auth_request(&conn->mg_conn);
    return;
  }
#endif

  // Call URI handler if one is registered for this URI
  if (skip_user == 0 && conn->server->event_handler != NULL) {
    conn->endpoint_type = EP_USER;
#if MONGOOSE_POST_SIZE_LIMIT > 1
    {
      const char *cl = mg_get_header(&conn->mg_conn, "Content-Length");
      if ((strcmp(conn->mg_conn.request_method, "POST") == 0 ||
           strcmp(conn->mg_conn.request_method, "PUT") == 0) &&
          (cl == NULL || to64(cl) > MONGOOSE_POST_SIZE_LIMIT)) {
        send_http_error(conn, 500, "POST size > %lu",
                        (unsigned long) MONGOOSE_POST_SIZE_LIMIT);
      }
    }
#endif
    return;
  }

  if (strcmp(conn->mg_conn.request_method, "CONNECT") == 0 ||
      mg_strncasecmp(conn->mg_conn.uri, "http", 4) == 0) {
    const char *enp = conn->server->config_options[ENABLE_PROXY];
    if (enp == NULL || strcmp(enp, "yes") != 0) {
      send_http_error(conn, 405, NULL);
    } else {
      proxify_connection(conn);
    }
    return;
  }

  if (!strcmp(conn->mg_conn.request_method, "OPTIONS")) {
    send_options(conn);
    return;
  }

#ifdef MONGOOSE_NO_FILESYSTEM
  send_http_error(conn, 404, NULL);
#else
  exists = convert_uri_to_file_name(conn, path, sizeof(path), &st);

  if (!strcmp(conn->mg_conn.request_method, "OPTIONS")) {
    send_options(conn);
  } else if (conn->server->config_options[DOCUMENT_ROOT] == NULL) {
    send_http_error(conn, 404, NULL);
#ifndef MONGOOSE_NO_AUTH
  } else if ((!is_dav_request(conn) && !is_authorized(conn, path,
               exists && S_ISDIR(st.st_mode))) ||
             (is_dav_request(conn) && !is_authorized_for_dav(conn))) {
    mg_send_digest_auth_request(&conn->mg_conn);
    close_local_endpoint(conn);
#endif
#ifndef MONGOOSE_NO_DAV
  } else if (must_hide_file(conn, path)) {
    send_http_error(conn, 404, NULL);
  } else if (!strcmp(conn->mg_conn.request_method, "PROPFIND")) {
    handle_propfind(conn, path, &st, exists);
  } else if (!strcmp(conn->mg_conn.request_method, "MKCOL")) {
    handle_mkcol(conn, path);
  } else if (!strcmp(conn->mg_conn.request_method, "DELETE")) {
    handle_delete(conn, path);
  } else if (!strcmp(conn->mg_conn.request_method, "PUT")) {
    handle_put(conn, path);
#endif
  } else {
    mg_send_file_internal(&conn->mg_conn, path, &st, exists, NULL);
  }
#endif  // MONGOOSE_NO_FILESYSTEM
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x8208, %rsp           # imm = 0x8208
movq %rdi, %r13
andl $0x0, 0x2b8(%rdi)
movl %esi, %ebx
movq 0x2a8(%rdi), %rax
cmpq $0x0, 0x30(%rax)
je 0x5e5dd
pushq $0x66
popq %rsi
movq %r13, %rdi
callq 0x5d354
testl %eax, %eax
je 0x5e704
testl %ebx, %ebx
je 0x5e6e2
leaq 0x8(%r13), %r14
movq 0x8(%r13), %rbx
leaq 0x9dab(%rip), %rsi      # 0x6839f
movq %rbx, %rdi
callq 0xc970
testl %eax, %eax
je 0x5e69d
movq 0x10(%r13), %r12
leaq 0xae7e(%rip), %rsi      # 0x6948d
pushq $0x4
popq %rdx
movq %r12, %rdi
callq 0x5a293
testl %eax, %eax
je 0x5e69d
leaq 0xae4b(%rip), %rsi      # 0x69470
movq %rbx, %rdi
callq 0xc970
testl %eax, %eax
je 0x5e721
movq %r14, -0x30(%rbp)
movq 0x2a8(%r13), %rbx
movq 0xc8(%rbx), %r14
movq %r13, %rdi
callq 0x6076e
testl %eax, %eax
je 0x5e65c
movq 0x68(%rbx), %r15
testq %r15, %r15
jne 0x5e660
movq 0x70(%rbx), %r15
movq 0x58(%rbx), %rax
movq %rax, -0x40(%rbp)
leaq 0x6245(%rip), %rsi      # 0x648b4
movq -0x30(%rbp), %rdi
callq 0x58dc0
movq %rax, %rdx
testq %r15, %r15
movq %r15, %rbx
je 0x5e854
movq %rdx, %r15
movq %rbx, %rdi
callq 0xc470
movq %r15, %rdx
movq %rax, %r8
jmp 0x5e857
movq 0x2a8(%r13), %rax
movq 0x80(%rax), %rdi
testq %rdi, %rdi
je 0x5e6c0
leaq 0x5e9c(%rip), %rsi      # 0x64553
callq 0xc970
testl %eax, %eax
je 0x5e73a
movq %r13, %rdi
movl $0x195, %esi            # imm = 0x195
xorl %edx, %edx
xorl %eax, %eax
addq $0x8208, %rsp           # imm = 0x8208
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x5bd71
movq 0x2a8(%r13), %rax
cmpq $0x0, 0x30(%rax)
je 0x5e5e5
movl $0x3, 0x2b8(%r13)
jmp 0x5ed83
addq $0x8, %r13
movq %r13, %rdi
addq $0x8208, %rsp           # imm = 0x8208
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x59ab2
movq %r13, %rdi
addq $0x8208, %rsp           # imm = 0x8208
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x60734
leaq -0x190(%rbp), %rcx
movw $0x50, (%rcx)
leaq -0x220(%rbp), %r8
andl $0x0, (%r8)
movq 0x10(%r13), %rbx
xorl %eax, %eax
leaq -0x2220(%rbp), %rdx
movb %al, (%rdx)
movb %al, -0x100(%rbp)
leaq 0xae3f(%rip), %rsi      # 0x695ac
movq %rbx, %rdi
xorl %eax, %eax
callq 0xc110
cmpl $0x2, %eax
je 0x5e7e0
leaq 0xae1f(%rip), %rsi      # 0x695a2
leaq -0x100(%rbp), %rdx
leaq -0x2220(%rbp), %rcx
leaq -0x190(%rbp), %r8
leaq -0x220(%rbp), %r9
movq %rbx, %rdi
xorl %eax, %eax
callq 0xc110
cmpl $0x3, %eax
je 0x5e7e0
leaq 0xae07(%rip), %rsi      # 0x695bc
leaq -0x100(%rbp), %rdx
leaq -0x2220(%rbp), %rcx
leaq -0x220(%rbp), %r8
movq %rbx, %rdi
xorl %eax, %eax
callq 0xc110
cmpl $0x2, %eax
je 0x5e7e0
andl $0x0, -0x220(%rbp)
movq (%r13), %rax
cmpq $0x0, 0x70(%rax)
leaq 0xadf2(%rip), %rax      # 0x695e2
leaq 0xade7(%rip), %rcx      # 0x695de
cmoveq %rax, %rcx
movzwl -0x190(%rbp), %r9d
leaq 0xadc8(%rip), %rdx      # 0x695d2
leaq -0x8220(%rbp), %rdi
leaq -0x2220(%rbp), %r8
movl $0x3e8, %esi            # imm = 0x3E8
xorl %eax, %eax
callq 0xc5e0
cmpl $0x0, -0x220(%rbp)
jle 0x5e844
leaq -0x8220(%rbp), %rsi
movq %r14, %rdi
callq 0x5a49e
testl %eax, %eax
jne 0x5ed83
movq (%r13), %rax
orl $0x10, 0xa0(%rax)
jmp 0x5ed83
xorl %r8d, %r8d
testq %r14, %r14
setne %al
testq %rdx, %rdx
setne %cl
andb %al, %cl
cmpb $0x1, %cl
movq -0x30(%rbp), %r15
jne 0x5e935
movq %r8, -0x70(%rbp)
movq %rbx, -0x50(%rbp)
pushq $0x3a
popq %rsi
movq %rdx, %r15
movq %rdx, %rdi
callq 0xc600
testq %rax, %rax
movq %r13, -0x38(%rbp)
movq %r12, -0x60(%rbp)
movq %r15, -0x48(%rbp)
je 0x5e8a1
movq %rax, %rbx
subq %r15, %rbx
jmp 0x5e8ac
movq %r15, %rdi
callq 0xc470
movq %rax, %rbx
leaq 0x1(%rbx), %r13
leaq -0x8220(%rbp), %r12
leaq -0x100(%rbp), %r15
movq %r14, %rdi
movq %r12, %rsi
movq %r15, %rdx
callq 0x5c8fa
testq %rax, %rax
je 0x5e921
movq %rax, %r14
movq -0x8218(%rbp), %rax
cmpq $0x2, %rax
jb 0x5e8be
movq -0x8220(%rbp), %rdi
cmpb $0x40, (%rdi)
jne 0x5e8be
cmpq %r13, %rax
jne 0x5e8be
incq %rdi
movq -0x48(%rbp), %rsi
movq %rbx, %rdx
callq 0x5a293
testl %eax, %eax
jne 0x5e8be
movq -0x100(%rbp), %rbx
movl -0xf8(%rbp), %r8d
movq -0x38(%rbp), %r13
movq -0x30(%rbp), %r15
movq -0x60(%rbp), %r12
jmp 0x5e935
movq -0x38(%rbp), %r13
movq -0x30(%rbp), %r15
movq -0x60(%rbp), %r12
movq -0x50(%rbp), %rbx
movq -0x70(%rbp), %r8
xorl %r14d, %r14d
movb $0x1, %al
movl %eax, -0x48(%rbp)
testq %rbx, %rbx
je 0x5eaaa
testl %r8d, %r8d
je 0x5eaaa
leaq 0xa612(%rip), %rdx      # 0x68f68
leaq -0x2220(%rbp), %rdi
movl $0x2000, %esi           # imm = 0x2000
movl %r8d, %ecx
movq %rbx, -0x50(%rbp)
movq %rbx, %r8
movq %r12, %r9
xorl %eax, %eax
callq 0x5bc9e
movq 0x2a8(%r13), %rax
movq 0xc8(%rax), %r15
leaq -0x8220(%rbp), %rbx
leaq -0x100(%rbp), %r14
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0x5c8fa
testq %rax, %rax
je 0x5e9f1
movq %rax, %r15
movq -0x8220(%rbp), %rdi
movq -0x8218(%rbp), %rsi
movq %r12, %rdx
callq 0x58e6c
testl %eax, %eax
jle 0x5e992
movl -0xf8(%rbp), %ecx
movq -0x100(%rbp), %r8
movl %eax, %eax
addq %rax, %r12
leaq 0xa58d(%rip), %rdx      # 0x68f68
leaq -0x2220(%rbp), %rdi
movl $0x2000, %esi           # imm = 0x2000
movq %r12, %r9
xorl %eax, %eax
callq 0x5bc9e
leaq -0x2220(%rbp), %rdi
leaq -0x190(%rbp), %rsi
callq 0xcba0
pushq $0x1
popq %r14
testl %eax, %eax
je 0x5ea79
movq -0x50(%rbp), %rdi
callq 0xc470
leaq (%rax,%rbp), %rbx
addq $-0x221e, %rbx          # imm = 0xDDE2
leaq -0x2220(%rbp), %r14
leaq -0x190(%rbp), %r15
movq -0x40(%rbp), %r12
movzbl (%rbx), %eax
cmpl $0x2f, %eax
je 0x5ea40
testl %eax, %eax
jne 0x5ea6f
jmp 0x5ea74
movb $0x0, (%rbx)
movq %r12, %rdi
callq 0xc470
movq %r12, %rdi
movq %rax, %rsi
movq %r14, %rdx
callq 0x58e6c
testl %eax, %eax
jle 0x5ea6c
movq %r14, %rdi
movq %r15, %rsi
callq 0xcba0
testl %eax, %eax
je 0x5ea86
movb $0x2f, (%rbx)
incq %rbx
jmp 0x5ea32
xorl %r14d, %r14d
jmp 0x5ea80
movl $0x0, -0x48(%rbp)
movq -0x30(%rbp), %r15
jmp 0x5eaaa
movb $0x2f, (%rbx)
movq %rbx, %rdi
callq 0x5c8c6
movq %rax, 0x2c0(%r13)
movb $0x0, (%rbx)
movl $0x0, -0x48(%rbp)
movq -0x30(%rbp), %r15
pushq $0x1
popq %r14
movq (%r15), %rdi
leaq 0xa9bc(%rip), %rsi      # 0x69470
callq 0xc970
testl %eax, %eax
je 0x5eb97
movq 0x2a8(%r13), %rbx
cmpq $0x0, 0x70(%rbx)
je 0x5eb81
movq %r13, %rdi
callq 0x6076e
testl %eax, %eax
je 0x5eba4
movq %r13, %rdi
callq 0x6076e
testl %eax, %eax
je 0x5eb67
movq 0x2a8(%r13), %rax
movq 0x60(%rax), %rbx
movq 0x8(%r13), %rdi
testq %rdi, %rdi
je 0x5eb1e
leaq 0xa96e(%rip), %rsi      # 0x69478
callq 0xc970
testl %eax, %eax
sete %al
testq %rbx, %rbx
sete %cl
testb %cl, %al
jne 0x5eb67
testq %rbx, %rbx
je 0x5ed73
leaq 0xa807(%rip), %rsi      # 0x69335
movq %rbx, %rdi
callq 0xcbb0
testq %rax, %rax
je 0x5ed73
movq %rax, %rbx
movq %r15, %rdi
movq %rax, %rsi
callq 0x5a044
movl %r14d, %r12d
movl %eax, %r14d
movq %rbx, %rdi
callq 0xc4c0
testl %r14d, %r14d
movl %r12d, %r14d
je 0x5ed73
leaq -0x2220(%rbp), %r15
movq %r13, %rdi
movq %r15, %rsi
callq 0x5bd11
testl %eax, %eax
je 0x5ec2f
movq %r13, %rdi
movl $0x194, %esi            # imm = 0x194
xorl %edx, %edx
xorl %eax, %eax
callq 0x5bd71
jmp 0x5ed83
movq %r13, %rdi
callq 0x60734
jmp 0x5ed83
movq 0x90(%rbx), %rbx
testq %rbx, %rbx
jne 0x5ed33
movl -0x178(%rbp), %eax
andl $0xf000, %eax           # imm = 0xF000
cmpl $0x4000, %eax           # imm = 0x4000
setne %al
orb -0x48(%rbp), %al
je 0x5ed04
movl %r14d, %r15d
leaq -0x2220(%rbp), %r14
pushq $0x2f
popq %r12
movq %r14, %rdi
movl %r12d, %esi
callq 0xca80
testq %rax, %rax
cmovel %r14d, %eax
subl %r14d, %eax
leaq 0xaa50(%rip), %rcx      # 0x6964a
movq %rcx, (%rsp)
leaq 0xaa4f(%rip), %rdx      # 0x69654
leaq -0x8220(%rbp), %rbx
movl $0x2000, %esi           # imm = 0x2000
movq %rbx, %rdi
movl %eax, %ecx
movq %r14, %r8
movl %r15d, %r14d
movl %r12d, %r9d
movq -0x30(%rbp), %r15
xorl %eax, %eax
callq 0x5bc9e
jmp 0x5ed33
movl %r14d, -0x40(%rbp)
movq -0x30(%rbp), %r14
movq (%r14), %rbx
leaq 0xa837(%rip), %rsi      # 0x69478
movq %rbx, %rdi
callq 0xc970
testl %eax, %eax
je 0x5ecb4
leaq 0xa82d(%rip), %rsi      # 0x69481
movq %rbx, %rdi
callq 0xc970
testl %eax, %eax
je 0x5ed95
leaq 0xa7fe(%rip), %rsi      # 0x69469
movq %rbx, %rdi
callq 0xc970
testl %eax, %eax
je 0x5ee3f
leaq 0x5b60(%rip), %rsi      # 0x647e2
movq %rbx, %rdi
callq 0xc970
testl %eax, %eax
je 0x5eeb8
leaq -0x2220(%rbp), %rsi
leaq -0x190(%rbp), %rdx
movq -0x30(%rbp), %rdi
movl -0x40(%rbp), %ecx
xorl %r8d, %r8d
callq 0x5ab83
jmp 0x5ed83
leaq 0xa9a2(%rip), %rsi      # 0x6965d
movq %r14, %rdi
callq 0x58dc0
movq %rax, %rbx
movq 0x2a8(%r13), %rax
movq 0x78(%rax), %rdi
movl $0xcf, 0x284(%r13)
cmpb $0x0, -0x48(%rbp)
je 0x5eded
movl $0x194, 0x284(%r13) # imm = 0x194
leaq 0x7637(%rip), %rsi      # 0x6632f
leaq 0xa964(%rip), %rdx      # 0x69663
jmp 0x5ee30
leaq 0xa0aa(%rip), %rdx      # 0x68db5
leaq 0xa938(%rip), %r9       # 0x6964a
leaq -0x8220(%rbp), %rbx
leaq -0x2220(%rbp), %rcx
pushq $0x2f
popq %r8
movl $0x2000, %esi           # imm = 0x2000
movq %rbx, %rdi
xorl %eax, %eax
callq 0x5bc9e
leaq 0xa5fb(%rip), %rsi      # 0x69335
movq %rbx, %rdi
callq 0xcbb0
testq %rax, %rax
je 0x5eae3
movq %rax, %rbx
movq %r15, %rdi
movq %rax, %rsi
callq 0x5a044
movl %r14d, %r12d
movl %eax, %r14d
movq %rbx, %rdi
callq 0xc4c0
testl %r14d, %r14d
movl %r12d, %r14d
jne 0x5eae3
movq %r15, %rdi
callq 0x59ab2
movq %r13, %rdi
callq 0x59b05
addq $0x8208, %rsp           # imm = 0x8208
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x19f, %esi            # imm = 0x19F
cmpq $0x0, 0x278(%r13)
jne 0x5f19f
leaq -0x2220(%rbp), %rdi
movl $0x1ed, %esi            # imm = 0x1ED
callq 0xc310
testl %eax, %eax
je 0x5f077
callq 0xcb50
movl (%rax), %eax
cmpl $0x2, %eax
je 0x5f193
cmpl $0x11, %eax
je 0x5f18c
cmpl $0xd, %eax
jne 0x5f19a
movl $0x193, %esi            # imm = 0x193
jmp 0x5f19f
movl $0xf000, %eax           # imm = 0xF000
andl -0x178(%rbp), %eax
cmpl $0x4000, %eax           # imm = 0x4000
jne 0x5ee8b
leaq 0x5749(%rip), %rsi      # 0x64553
callq 0x58e28
testl %eax, %eax
je 0x5efbb
movl $0x193, 0x284(%r13) # imm = 0x193
leaq 0x7506(%rip), %rsi      # 0x6632f
leaq 0xa84e(%rip), %rdx      # 0x6967e
movq %r14, %rdi
xorl %eax, %eax
callq 0x58c06
jmp 0x5ed7b
leaq -0x2220(%rbp), %rdi
leaq -0x8220(%rbp), %rsi
callq 0xcba0
movl $0x194, %esi            # imm = 0x194
testl %eax, %eax
jne 0x5f19f
movl $0xf000, %eax           # imm = 0xF000
andl -0x8208(%rbp), %eax
leaq -0x2220(%rbp), %rdi
cmpl $0x4000, %eax           # imm = 0x4000
jne 0x5f0a5
callq 0x6084c
movl $0xcc, %esi
jmp 0x5f19f
movq (%r13), %rdi
leaq 0x92ba(%rip), %rsi      # 0x68150
movl $0x9c, %edx
callq 0x57905
movq 0x10(%r13), %rsi
leaq -0x190(%rbp), %rdx
movq %r13, %rdi
callq 0x607d2
jmp 0x5f08d
leaq 0x5a85(%rip), %rsi      # 0x64944
movq -0x30(%rbp), %rdi
callq 0x58dc0
movq %rax, -0x40(%rbp)
leaq -0x220(%rbp), %rsi
movq %r15, %rdi
callq 0xcba0
cmpl $0x1, %eax
movl $0xc9, %eax
sbbl $0x0, %eax
movq %r13, -0x38(%rbp)
movl %eax, 0x284(%r13)
leaq -0x221f(%rbp), %rdi
pushq $0x2f
popq %rbx
leaq -0x8220(%rbp), %r12
movl %ebx, %esi
callq 0xc600
testq %rax, %rax
je 0x5f0be
movq %rax, %r13
movq %rax, %r14
subq %r15, %r14
cmpq $0x1fff, %r14           # imm = 0x1FFF
jg 0x5ef90
movq %r12, %rdi
movq %r15, %rsi
movq %r14, %rdx
callq 0xc0f0
movb $0x0, -0x8220(%rbp,%r14)
movq %r12, %rdi
leaq -0x100(%rbp), %rsi
callq 0xcba0
testl %eax, %eax
je 0x5ef5f
movq %r12, %rdi
movl $0x1ed, %esi            # imm = 0x1ED
callq 0xc310
testl %eax, %eax
jne 0x5ef90
movq %r13, %rdi
incq %rdi
cmpb $0x0, 0x1(%r13)
jne 0x5ef02
movq -0x38(%rbp), %rbx
movl 0x284(%rbx), %edx
leaq 0xa82f(%rip), %rsi      # 0x697ac
movq -0x30(%rbp), %rdi
xorl %eax, %eax
callq 0x58c06
movq %rbx, %rdi
jmp 0x5ed7e
callq 0xcb50
movl (%rax), %edi
callq 0xc8d0
leaq 0xa81c(%rip), %rdx      # 0x697bf
movq -0x38(%rbp), %rdi
movl $0x1f4, %esi            # imm = 0x1F4
movq %rax, %rcx
xorl %eax, %eax
callq 0x5bd71
jmp 0x5ed83
movq (%r13), %rdi
leaq 0x918a(%rip), %rsi      # 0x68150
movl $0x9c, %edx
callq 0x57905
movq 0x10(%r13), %rsi
leaq -0x190(%rbp), %rdx
movq %r13, %rdi
callq 0x607d2
testq %rbx, %rbx
je 0x5eff7
cmpb $0x30, (%rbx)
jne 0x5eff7
cmpb $0x0, 0x1(%rbx)
je 0x5f08d
leaq -0x100(%rbp), %r14
andq $0x0, (%r14)
leaq -0x2220(%rbp), %rsi
movq %r13, %rbx
movq %r13, %rdi
movq %r14, %rdx
callq 0x5d37d
movq (%r14), %rcx
xorl %r13d, %r13d
testl %eax, %eax
cmovgl %eax, %r13d
movq %rcx, -0x40(%rbp)
leaq 0x10(%rcx), %r14
leaq -0x8220(%rbp), %r15
subq $0x1, %r13
jb 0x5f081
movq -0x8(%r14), %r12
movq %r12, %rdi
callq 0xc470
movl $0x6000, %ecx           # imm = 0x6000
movq %r12, %rdi
movq %rax, %rsi
movq %r15, %rdx
callq 0x599d1
movq %rbx, %rdi
movq %r15, %rsi
movq %r14, %rdx
callq 0x607d2
movq -0x8(%r14), %rdi
callq 0xc250
addq $0xa0, %r14
jmp 0x5f032
movl $0xc9, %esi
jmp 0x5f19f
movq -0x40(%rbp), %rdi
callq 0xc250
movq %rbx, %r13
movq (%r13), %rdi
leaq 0x9158(%rip), %rsi      # 0x681f0
pushq $0x10
popq %rdx
callq 0x57905
jmp 0x5ed7b
callq 0xc290
testl %eax, %eax
movl $0xcc, %eax
movl $0x1a7, %esi            # imm = 0x1A7
cmovel %eax, %esi
jmp 0x5f19f
movq -0x40(%rbp), %r12
testq %r12, %r12
je 0x5f1a7
leaq -0x2220(%rbp), %rdi
movl $0x242, %esi            # imm = 0x242
movl $0x1a4, %edx            # imm = 0x1A4
xorl %eax, %eax
callq 0xcd60
movq -0x38(%rbp), %r14
movl %eax, 0x2b0(%r14)
testl %eax, %eax
js 0x5f1b5
movl $0x4, 0x2b8(%r14)
movl %eax, %edi
callq 0x579bd
leaq 0xa6bc(%rip), %rsi      # 0x697cb
movq -0x30(%rbp), %r15
movq %r15, %rdi
callq 0x58dc0
movq %rax, %rbx
pushq $0xa
popq %rdx
movq %r12, %rdi
xorl %esi, %esi
callq 0xc8c0
movq %rax, 0x2d8(%r14)
andq $0x0, -0x68(%rbp)
andq $0x0, -0x58(%rbp)
testq %rbx, %rbx
je 0x5f203
leaq -0x58(%rbp), %rsi
leaq -0x68(%rbp), %rdx
movq %rbx, %rdi
callq 0x5dcf0
testl %eax, %eax
jle 0x5f203
movl $0xce, 0x284(%r14)
movl 0x2b0(%r14), %edi
movq -0x58(%rbp), %rsi
xorl %edx, %edx
callq 0xca70
movq -0x68(%rbp), %rax
movq -0x58(%rbp), %rcx
cmpq %rcx, %rax
jle 0x5f1e6
incq %rax
jmp 0x5f1f1
movl $0x195, %esi            # imm = 0x195
jmp 0x5f19f
movl $0x199, %esi            # imm = 0x199
jmp 0x5f19f
movl $0x1f4, %esi            # imm = 0x1F4
movq %r13, %rdi
jmp 0x5eb89
movq -0x38(%rbp), %rdi
movl $0x19b, %esi            # imm = 0x19B
jmp 0x5eb89
callq 0xcb50
movl (%rax), %edi
callq 0xc8d0
leaq 0xa0d0(%rip), %rdx      # 0x69298
leaq -0x2220(%rbp), %rcx
movq %r14, %rdi
movl $0x1f4, %esi            # imm = 0x1F4
movq %rax, %r8
xorl %eax, %eax
callq 0x5bd71
jmp 0x5ed83
movq -0x38(%rbp), %rax
movq 0x2d8(%rax), %rax
subq %rcx, %rax
movq -0x38(%rbp), %r14
movq %rax, 0x2d8(%r14)
movq -0x30(%rbp), %r15
movl 0x284(%r14), %edx
leaq 0xa5c8(%rip), %rsi      # 0x697d9
movq %r15, %rdi
xorl %eax, %eax
callq 0x58c06
jmp 0x5ed83