// File: /workspace/github_c_makefile_star2_O1/genometools[P]genometools/src/extended/tag_value_map.c
// Function: gt_tag_value_map_unit_test
int gt_tag_value_map_unit_test(GtError *err)
{
  GtTagValueMap map;
  int had_err = 0;

  gt_error_check(err);

  /* test gt_tag_value_map_set() (new tags are shorter than old tags) */
  map = create_filled_tag_value_list();
  gt_ensure(gt_tag_value_map_size(map) == 3);
  gt_tag_value_map_set(&map, "tag 1", "val X");
  gt_tag_value_map_set(&map, "tag 2", "val Y");
  gt_tag_value_map_set(&map, "tag 3", "val Z");
  gt_ensure(!gt_tag_value_map_get(map, "unused tag"));
  gt_assert(!gt_tag_value_map_get(map, "value X"));
  gt_assert(!gt_tag_value_map_get(map, "value Y"));
  gt_assert(!gt_tag_value_map_get(map, "value Z"));
  gt_ensure(!strcmp(gt_tag_value_map_get(map, "tag 1"), "val X"));
  gt_ensure(!strcmp(gt_tag_value_map_get(map, "tag 2"), "val Y"));
  gt_ensure(!strcmp(gt_tag_value_map_get(map, "tag 3"), "val Z"));
  gt_tag_value_map_delete(map);

  /* test gt_tag_value_map_set() (new tags have same length) */
  if (!had_err) {
    map = create_filled_tag_value_list();
    gt_tag_value_map_set(&map, "tag 1", "value X");
    gt_tag_value_map_set(&map, "tag 2", "value Y");
    gt_tag_value_map_set(&map, "tag 3", "value Z");
    gt_ensure(!gt_tag_value_map_get(map, "unused tag"));
    gt_assert(!gt_tag_value_map_get(map, "value X"));
    gt_assert(!gt_tag_value_map_get(map, "value Y"));
    gt_assert(!gt_tag_value_map_get(map, "value Z"));
    gt_ensure(!strcmp(gt_tag_value_map_get(map, "tag 1"), "value X"));
    gt_ensure(!strcmp(gt_tag_value_map_get(map, "tag 2"), "value Y"));
    gt_ensure(!strcmp(gt_tag_value_map_get(map, "tag 3"), "value Z"));
    gt_tag_value_map_delete(map);
  }

  /* test gt_tag_value_map_set() (new tags are longer than old tags) */
  if (!had_err) {
    map = create_filled_tag_value_list();
    gt_tag_value_map_set(&map, "tag 1", "value XXX");
    gt_tag_value_map_set(&map, "tag 2", "value YYY");
    gt_tag_value_map_set(&map, "tag 3", "value ZZZ");
    gt_ensure(!gt_tag_value_map_get(map, "unused tag"));
    gt_assert(!gt_tag_value_map_get(map, "value XXX"));
    gt_assert(!gt_tag_value_map_get(map, "value YYY"));
    gt_assert(!gt_tag_value_map_get(map, "value ZZZ"));
    gt_ensure(
              !strcmp(gt_tag_value_map_get(map, "tag 1"), "value XXX"));
    gt_ensure(
              !strcmp(gt_tag_value_map_get(map, "tag 2"), "value YYY"));
    gt_ensure(
              !strcmp(gt_tag_value_map_get(map, "tag 3"), "value ZZZ"));
    gt_tag_value_map_delete(map);
  }

  /* test gt_tag_value_map_remove() (remove first tag)*/
  if (!had_err) {
    size_t old_map_len, new_map_len;
    map = create_filled_tag_value_list();
    gt_tag_value_map_set(&map, "tag 1", "value XXX");
    gt_tag_value_map_set(&map, "tag 2", "value YYY");
    gt_tag_value_map_set(&map, "tag 3", "value ZZZ");
    old_map_len = get_map_len(map);
    gt_tag_value_map_remove(&map, "tag 1");
    gt_assert(!gt_tag_value_map_get(map, "tag 1"));
    gt_ensure(gt_tag_value_map_size(map) == 2);
    new_map_len = get_map_len(map);
    gt_ensure(!gt_tag_value_map_get(map, "unused tag"));
    gt_ensure(!(old_map_len - new_map_len - strlen("tag 1") - 1
                     - strlen("value XXX") -1));
    gt_tag_value_map_delete(map);
  }

  /* test gt_tag_value_map_remove() (remove middle tag)*/
  if (!had_err) {
    size_t old_map_len, new_map_len;
    map = create_filled_tag_value_list();
    gt_tag_value_map_set(&map, "tag 1", "value XXX");
    gt_tag_value_map_set(&map, "tag 2", "value YYY");
    gt_tag_value_map_set(&map, "tag 3", "value ZZZ");
    old_map_len = get_map_len(map);
    gt_tag_value_map_remove(&map, "tag 2");
    gt_assert(!gt_tag_value_map_get(map, "tag 2"));
    gt_ensure(gt_tag_value_map_size(map) == 2);
    new_map_len = get_map_len(map);
    gt_ensure(!gt_tag_value_map_get(map, "unused tag"));
    gt_ensure(!(old_map_len - new_map_len - strlen("tag 2") - 1
                     - strlen("value YYY") -1));
    gt_tag_value_map_delete(map);
  }

  /* test gt_tag_value_map_remove() (remove last tag)*/
  if (!had_err) {
    size_t old_map_len, new_map_len;
    map = create_filled_tag_value_list();
    gt_tag_value_map_set(&map, "tag 1", "value XXX");
    gt_tag_value_map_set(&map, "tag 2", "value YYY");
    gt_tag_value_map_set(&map, "tag 3", "value ZZZ");
    old_map_len = get_map_len(map);
    gt_tag_value_map_remove(&map, "tag 3");
    gt_assert(!gt_tag_value_map_get(map, "tag 3"));
    gt_ensure(gt_tag_value_map_size(map) == 2);
    new_map_len = get_map_len(map);
    gt_ensure(!gt_tag_value_map_get(map, "unused tag"));
    gt_ensure(!(old_map_len - new_map_len - strlen("tag 3") - 1
                     - strlen("value ZZZ") -1));
    gt_tag_value_map_delete(map);
  }

  /* test gt_tag_value_map_get_value() (value == tag bug) */
  if (!had_err) {
    GtTagValueMap map = gt_tag_value_map_new("tag 1", "foo");
    gt_tag_value_map_add(&map, "tag 2", "bar");
    gt_ensure(!strcmp(gt_tag_value_map_get(map, "tag 1"), "foo"));
    gt_ensure(!strcmp(gt_tag_value_map_get(map, "tag 2"), "bar"));
    gt_ensure(!gt_tag_value_map_get(map, "bar"));
    gt_ensure(!gt_tag_value_map_get(map, "foo"));
    gt_tag_value_map_delete(map);
  }

  return had_err;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
movq %rdi, %rbx
testq %rdi, %rdi
je 0x4acfe
movq %rbx, %rdi
callq 0x3566a
testb %al, %al
jne 0x4b664
callq 0x4b9dc
movq %rax, 0x8(%rsp)
movq %rax, %rdi
callq 0x4aad2
cmpq $0x3, %rax
jne 0x4ada9
leaq 0x9e9cd(%rip), %rsi     # 0xe96ee
leaq 0x9eb04(%rip), %rdx     # 0xe982c
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e9c0(%rip), %rsi     # 0xe96fc
leaq 0x9eaef(%rip), %rdx     # 0xe9832
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e9b8(%rip), %rsi     # 0xe970a
leaq 0x9eadf(%rip), %rdx     # 0xe9838
movq %r14, %rdi
callq 0x4a8cd
movq (%r14), %rdi
leaq 0x9e9ad(%rip), %rsi     # 0xe9718
callq 0x4aab6
testq %rax, %rax
je 0x4ae20
leaq 0x983f9(%rip), %rsi     # 0xe3179
leaq 0x9e99c(%rip), %rdx     # 0xe9723
leaq 0x9ea63(%rip), %rcx     # 0xe97f1
leaq 0x9e74b(%rip), %r8      # 0xe94e0
xorl %ebp, %ebp
movq %rbx, %rdi
movl $0x126, %r9d            # imm = 0x126
xorl %eax, %eax
callq 0x3559f
jmp 0x4ae23
leaq 0x983c9(%rip), %rsi     # 0xe3179
leaq 0x9ea55(%rip), %rdx     # 0xe980c
leaq 0x9ea33(%rip), %rcx     # 0xe97f1
leaq 0x9e71b(%rip), %r8      # 0xe94e0
xorl %ebp, %ebp
movq %rbx, %rdi
movl $0x122, %r9d            # imm = 0x122
xorl %eax, %eax
callq 0x3559f
leaq 0x9e910(%rip), %rsi     # 0xe96ee
leaq 0x9ea47(%rip), %rdx     # 0xe982c
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e903(%rip), %rsi     # 0xe96fc
leaq 0x9ea32(%rip), %rdx     # 0xe9832
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e8fb(%rip), %rsi     # 0xe970a
leaq 0x9ea22(%rip), %rdx     # 0xe9838
movq %r14, %rdi
callq 0x4a8cd
jmp 0x4ae23
movb $0x1, %bpl
movq 0x8(%rsp), %rdi
leaq 0x9ea0f(%rip), %rsi     # 0xe983e
callq 0x4aab6
testq %rax, %rax
jne 0x4b655
movq 0x8(%rsp), %rdi
leaq 0x9ea23(%rip), %rsi     # 0xe986c
callq 0x4aab6
testq %rax, %rax
jne 0x4b65a
movq 0x8(%rsp), %rdi
leaq 0x9ea37(%rip), %rsi     # 0xe989a
callq 0x4aab6
testq %rax, %rax
jne 0x4b65f
testb %bpl, %bpl
je 0x4af63
movq 0x8(%rsp), %rdi
leaq 0x9e868(%rip), %rsi     # 0xe96ee
callq 0x4aab6
leaq 0x9e99a(%rip), %rsi     # 0xe982c
movq %rax, %rdi
callq 0xb890
testl %eax, %eax
je 0x4aec8
leaq 0x982d4(%rip), %rsi     # 0xe3179
leaq 0x9ea1c(%rip), %rdx     # 0xe98c8
leaq 0x9e93e(%rip), %rcx     # 0xe97f1
leaq 0x9e626(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x12a, %r9d            # imm = 0x12A
jmp 0x4af5c
movq 0x8(%rsp), %rdi
leaq 0x9e828(%rip), %rsi     # 0xe96fc
callq 0x4aab6
leaq 0x9e952(%rip), %rsi     # 0xe9832
movq %rax, %rdi
callq 0xb890
testl %eax, %eax
je 0x4af13
leaq 0x98286(%rip), %rsi     # 0xe3179
leaq 0x9ea03(%rip), %rdx     # 0xe98fd
leaq 0x9e8f0(%rip), %rcx     # 0xe97f1
leaq 0x9e5d8(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x12b, %r9d            # imm = 0x12B
jmp 0x4af5c
movq 0x8(%rsp), %rdi
leaq 0x9e7eb(%rip), %rsi     # 0xe970a
callq 0x4aab6
leaq 0x9e90d(%rip), %rsi     # 0xe9838
movq %rax, %rdi
callq 0xb890
testl %eax, %eax
je 0x4af94
leaq 0x9823b(%rip), %rsi     # 0xe3179
leaq 0x9e9ed(%rip), %rdx     # 0xe9932
leaq 0x9e8a5(%rip), %rcx     # 0xe97f1
leaq 0x9e58d(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x12c, %r9d            # imm = 0x12C
xorl %eax, %eax
callq 0x3559f
movq 0x8(%rsp), %rdi
movl $0xffffffff, %ebx       # imm = 0xFFFFFFFF
testq %rdi, %rdi
je 0x4af83
leaq 0x9e567(%rip), %rsi     # 0xe94e0
movl $0x199, %edx            # imm = 0x199
callq 0x362a0
movl %ebx, %eax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x4afaf
leaq 0x9e53b(%rip), %rsi     # 0xe94e0
movl $0x199, %edx            # imm = 0x199
callq 0x362a0
callq 0x4b9dc
leaq 0x8(%rsp), %r14
movq %rax, (%r14)
leaq 0x9e72b(%rip), %rsi     # 0xe96ee
leaq 0x9e874(%rip), %rdx     # 0xe983e
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e723(%rip), %rsi     # 0xe96fc
leaq 0x9e88c(%rip), %rdx     # 0xe986c
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e71b(%rip), %rsi     # 0xe970a
leaq 0x9e8a4(%rip), %rdx     # 0xe989a
movq %r14, %rdi
callq 0x4a8cd
movq (%r14), %rdi
leaq 0x9e710(%rip), %rsi     # 0xe9718
callq 0x4aab6
movq %rax, %r14
testq %rax, %rax
je 0x4b041
leaq 0x9815d(%rip), %rsi     # 0xe3179
leaq 0x9e700(%rip), %rdx     # 0xe9723
leaq 0x9e7c7(%rip), %rcx     # 0xe97f1
leaq 0x9e4af(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x135, %r9d            # imm = 0x135
xorl %eax, %eax
callq 0x3559f
movq 0x8(%rsp), %rdi
leaq 0x9e7f1(%rip), %rsi     # 0xe983e
callq 0x4aab6
testq %rax, %rax
jne 0x4b7fa
movq 0x8(%rsp), %rdi
leaq 0x9e805(%rip), %rsi     # 0xe986c
callq 0x4aab6
testq %rax, %rax
jne 0x4b7ff
movq 0x8(%rsp), %rdi
leaq 0x9e819(%rip), %rsi     # 0xe989a
callq 0x4aab6
testq %rax, %rax
jne 0x4b804
testq %r14, %r14
jne 0x4af63
movq 0x8(%rsp), %rdi
leaq 0x9e64a(%rip), %rsi     # 0xe96ee
callq 0x4aab6
leaq 0x9e78e(%rip), %rsi     # 0xe983e
movq %rax, %rdi
callq 0xb890
testl %eax, %eax
je 0x4b0e6
leaq 0x980b6(%rip), %rsi     # 0xe3179
leaq 0x9e89d(%rip), %rdx     # 0xe9967
leaq 0x9e720(%rip), %rcx     # 0xe97f1
leaq 0x9e408(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x139, %r9d            # imm = 0x139
jmp 0x4af5c
movq 0x8(%rsp), %rdi
leaq 0x9e60a(%rip), %rsi     # 0xe96fc
callq 0x4aab6
leaq 0x9e76e(%rip), %rsi     # 0xe986c
movq %rax, %rdi
callq 0xb890
testl %eax, %eax
je 0x4b134
leaq 0x98068(%rip), %rsi     # 0xe3179
leaq 0x9e886(%rip), %rdx     # 0xe999e
leaq 0x9e6d2(%rip), %rcx     # 0xe97f1
leaq 0x9e3ba(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x13a, %r9d            # imm = 0x13A
jmp 0x4af5c
movq 0x8(%rsp), %rdi
leaq 0x9e5ca(%rip), %rsi     # 0xe970a
callq 0x4aab6
leaq 0x9e74e(%rip), %rsi     # 0xe989a
movq %rax, %rdi
callq 0xb890
testl %eax, %eax
je 0x4b182
leaq 0x9801a(%rip), %rsi     # 0xe3179
leaq 0x9e86f(%rip), %rdx     # 0xe99d5
leaq 0x9e684(%rip), %rcx     # 0xe97f1
leaq 0x9e36c(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x13b, %r9d            # imm = 0x13B
jmp 0x4af5c
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x4b19d
leaq 0x9e34d(%rip), %rsi     # 0xe94e0
movl $0x199, %edx            # imm = 0x199
callq 0x362a0
callq 0x4b9dc
leaq 0x8(%rsp), %r14
movq %rax, (%r14)
leaq 0x9e53d(%rip), %rsi     # 0xe96ee
leaq 0x9e854(%rip), %rdx     # 0xe9a0c
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e535(%rip), %rsi     # 0xe96fc
leaq 0x9e848(%rip), %rdx     # 0xe9a16
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e52d(%rip), %rsi     # 0xe970a
leaq 0x9e83c(%rip), %rdx     # 0xe9a20
movq %r14, %rdi
callq 0x4a8cd
movq (%r14), %rdi
leaq 0x9e522(%rip), %rsi     # 0xe9718
callq 0x4aab6
movq %rax, %r14
testq %rax, %rax
je 0x4b22f
leaq 0x97f6f(%rip), %rsi     # 0xe3179
leaq 0x9e512(%rip), %rdx     # 0xe9723
leaq 0x9e5d9(%rip), %rcx     # 0xe97f1
leaq 0x9e2c1(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x145, %r9d            # imm = 0x145
xorl %eax, %eax
callq 0x3559f
movq 0x8(%rsp), %rdi
leaq 0x9e7d1(%rip), %rsi     # 0xe9a0c
callq 0x4aab6
testq %rax, %rax
jne 0x4b969
movq 0x8(%rsp), %rdi
leaq 0x9e7c1(%rip), %rsi     # 0xe9a16
callq 0x4aab6
testq %rax, %rax
jne 0x4b96e
movq 0x8(%rsp), %rdi
leaq 0x9e7b1(%rip), %rsi     # 0xe9a20
callq 0x4aab6
testq %rax, %rax
jne 0x4b973
testq %r14, %r14
jne 0x4af63
movq 0x8(%rsp), %rdi
leaq 0x9e45c(%rip), %rsi     # 0xe96ee
callq 0x4aab6
leaq 0x9e76e(%rip), %rsi     # 0xe9a0c
movq %rax, %rdi
callq 0xb890
testl %eax, %eax
je 0x4b2d4
leaq 0x97ec8(%rip), %rsi     # 0xe3179
leaq 0x9e7ea(%rip), %rdx     # 0xe9aa2
leaq 0x9e532(%rip), %rcx     # 0xe97f1
leaq 0x9e21a(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x14a, %r9d            # imm = 0x14A
jmp 0x4af5c
movq 0x8(%rsp), %rdi
leaq 0x9e41c(%rip), %rsi     # 0xe96fc
callq 0x4aab6
leaq 0x9e72a(%rip), %rsi     # 0xe9a16
movq %rax, %rdi
callq 0xb890
testl %eax, %eax
je 0x4b322
leaq 0x97e7a(%rip), %rsi     # 0xe3179
leaq 0x9e7d5(%rip), %rdx     # 0xe9adb
leaq 0x9e4e4(%rip), %rcx     # 0xe97f1
leaq 0x9e1cc(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x14c, %r9d            # imm = 0x14C
jmp 0x4af5c
movq 0x8(%rsp), %rdi
leaq 0x9e3dc(%rip), %rsi     # 0xe970a
callq 0x4aab6
leaq 0x9e6e6(%rip), %rsi     # 0xe9a20
movq %rax, %rdi
callq 0xb890
testl %eax, %eax
je 0x4b370
leaq 0x97e2c(%rip), %rsi     # 0xe3179
leaq 0x9e7c0(%rip), %rdx     # 0xe9b14
leaq 0x9e496(%rip), %rcx     # 0xe97f1
leaq 0x9e17e(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x14e, %r9d            # imm = 0x14E
jmp 0x4af5c
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x4b38b
leaq 0x9e15f(%rip), %rsi     # 0xe94e0
movl $0x199, %edx            # imm = 0x199
callq 0x362a0
callq 0x4b9dc
leaq 0x8(%rsp), %r14
movq %rax, (%r14)
leaq 0x9e34f(%rip), %rsi     # 0xe96ee
leaq 0x9e666(%rip), %rdx     # 0xe9a0c
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e347(%rip), %rsi     # 0xe96fc
leaq 0x9e65a(%rip), %rdx     # 0xe9a16
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e33f(%rip), %rsi     # 0xe970a
leaq 0x9e64e(%rip), %rdx     # 0xe9a20
movq %r14, %rdi
callq 0x4a8cd
movq (%r14), %r12
movq %r12, %r13
movq %r13, %rax
incq %r13
cmpb $0x0, (%rax)
jne 0x4b3e0
leaq 0x2(%rax), %r13
cmpb $0x0, 0x1(%rax)
jne 0x4b3e0
leaq 0x9e2f2(%rip), %r14     # 0xe96ee
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movq %r14, %rsi
callq 0x4a7a3
movq (%r15), %rdi
movq %r14, %rsi
callq 0x4aab6
testq %rax, %rax
jne 0x4b9cd
movq 0x8(%rsp), %rdi
callq 0x4aad2
movq %rax, %r14
cmpq $0x2, %rax
je 0x4b45f
leaq 0x97d3f(%rip), %rsi     # 0xe3179
leaq 0x9e730(%rip), %rdx     # 0xe9b71
leaq 0x9e3a9(%rip), %rcx     # 0xe97f1
leaq 0x9e091(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x15c, %r9d            # imm = 0x15C
xorl %eax, %eax
callq 0x3559f
movq 0x8(%rsp), %r15
movq %r15, %rbp
movq %rbp, %rax
incq %rbp
cmpb $0x0, (%rax)
jne 0x4b467
leaq 0x2(%rax), %rbp
cmpb $0x0, 0x1(%rax)
jne 0x4b467
cmpq $0x2, %r14
jne 0x4af63
leaq 0x9e28b(%rip), %rsi     # 0xe9718
movq %r15, %rdi
callq 0x4aab6
testq %rax, %rax
je 0x4b4c4
leaq 0x97cd8(%rip), %rsi     # 0xe3179
leaq 0x9e27b(%rip), %rdx     # 0xe9723
leaq 0x9e342(%rip), %rcx     # 0xe97f1
leaq 0x9e02a(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x15e, %r9d            # imm = 0x15E
jmp 0x4af5c
addq %r15, %r13
addq %rbp, %r12
subq %r12, %r13
cmpq $0x10, %r13
jne 0x4b62b
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x4b4f2
leaq 0x9dff8(%rip), %rsi     # 0xe94e0
movl $0x199, %edx            # imm = 0x199
callq 0x362a0
callq 0x4b9dc
leaq 0x8(%rsp), %r14
movq %rax, (%r14)
leaq 0x9e1e8(%rip), %rsi     # 0xe96ee
leaq 0x9e4ff(%rip), %rdx     # 0xe9a0c
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e1e0(%rip), %rsi     # 0xe96fc
leaq 0x9e4f3(%rip), %rdx     # 0xe9a16
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e1d8(%rip), %rsi     # 0xe970a
leaq 0x9e4e7(%rip), %rdx     # 0xe9a20
movq %r14, %rdi
callq 0x4a8cd
movq (%r14), %r12
movq %r12, %r13
movq %r13, %rax
incq %r13
cmpb $0x0, (%rax)
jne 0x4b547
leaq 0x2(%rax), %r13
cmpb $0x0, 0x1(%rax)
jne 0x4b547
leaq 0x9e199(%rip), %r14     # 0xe96fc
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movq %r14, %rsi
callq 0x4a7a3
movq (%r15), %rdi
movq %r14, %rsi
callq 0x4aab6
testq %rax, %rax
jne 0x4b9d2
movq 0x8(%rsp), %rdi
callq 0x4aad2
movq %rax, %r14
cmpq $0x2, %rax
je 0x4b5c6
leaq 0x97bd8(%rip), %rsi     # 0xe3179
leaq 0x9e5c9(%rip), %rdx     # 0xe9b71
leaq 0x9e242(%rip), %rcx     # 0xe97f1
leaq 0x9df2a(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x16e, %r9d            # imm = 0x16E
xorl %eax, %eax
callq 0x3559f
movq 0x8(%rsp), %r15
movq %r15, %rbp
movq %rbp, %rax
incq %rbp
cmpb $0x0, (%rax)
jne 0x4b5ce
leaq 0x2(%rax), %rbp
cmpb $0x0, 0x1(%rax)
jne 0x4b5ce
cmpq $0x2, %r14
jne 0x4af63
leaq 0x9e124(%rip), %rsi     # 0xe9718
movq %r15, %rdi
callq 0x4aab6
testq %rax, %rax
je 0x4b669
leaq 0x97b71(%rip), %rsi     # 0xe3179
leaq 0x9e114(%rip), %rdx     # 0xe9723
leaq 0x9e1db(%rip), %rcx     # 0xe97f1
leaq 0x9dec3(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x170, %r9d            # imm = 0x170
jmp 0x4af5c
leaq 0x97b47(%rip), %rsi     # 0xe3179
leaq 0x9e558(%rip), %rdx     # 0xe9b91
leaq 0x9e1b1(%rip), %rcx     # 0xe97f1
leaq 0x9de99(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x160, %r9d            # imm = 0x160
jmp 0x4af5c
callq 0x14ade
callq 0x14b17
callq 0x14b50
callq 0x14aa5
addq %r15, %r13
addq %rbp, %r12
subq %r12, %r13
cmpq $0x10, %r13
jne 0x4b7d0
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x4b697
leaq 0x9de53(%rip), %rsi     # 0xe94e0
movl $0x199, %edx            # imm = 0x199
callq 0x362a0
callq 0x4b9dc
leaq 0x8(%rsp), %r14
movq %rax, (%r14)
leaq 0x9e043(%rip), %rsi     # 0xe96ee
leaq 0x9e35a(%rip), %rdx     # 0xe9a0c
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e03b(%rip), %rsi     # 0xe96fc
leaq 0x9e34e(%rip), %rdx     # 0xe9a16
movq %r14, %rdi
callq 0x4a8cd
leaq 0x9e033(%rip), %rsi     # 0xe970a
leaq 0x9e342(%rip), %rdx     # 0xe9a20
movq %r14, %rdi
callq 0x4a8cd
movq (%r14), %r12
movq %r12, %r13
movq %r13, %rax
incq %r13
cmpb $0x0, (%rax)
jne 0x4b6ec
leaq 0x2(%rax), %r13
cmpb $0x0, 0x1(%rax)
jne 0x4b6ec
leaq 0x9e002(%rip), %r14     # 0xe970a
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movq %r14, %rsi
callq 0x4a7a3
movq (%r15), %rdi
movq %r14, %rsi
callq 0x4aab6
testq %rax, %rax
jne 0x4b9d7
movq 0x8(%rsp), %rdi
callq 0x4aad2
movq %rax, %r14
cmpq $0x2, %rax
je 0x4b76b
leaq 0x97a33(%rip), %rsi     # 0xe3179
leaq 0x9e424(%rip), %rdx     # 0xe9b71
leaq 0x9e09d(%rip), %rcx     # 0xe97f1
leaq 0x9dd85(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x180, %r9d            # imm = 0x180
xorl %eax, %eax
callq 0x3559f
movq 0x8(%rsp), %r15
movq %r15, %rbp
movq %rbp, %rax
incq %rbp
cmpb $0x0, (%rax)
jne 0x4b773
leaq 0x2(%rax), %rbp
cmpb $0x0, 0x1(%rax)
jne 0x4b773
cmpq $0x2, %r14
jne 0x4af63
leaq 0x9df7f(%rip), %rsi     # 0xe9718
movq %r15, %rdi
callq 0x4aab6
testq %rax, %rax
je 0x4b809
leaq 0x979cc(%rip), %rsi     # 0xe3179
leaq 0x9df6f(%rip), %rdx     # 0xe9723
leaq 0x9e036(%rip), %rcx     # 0xe97f1
leaq 0x9dd1e(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x182, %r9d            # imm = 0x182
jmp 0x4af5c
leaq 0x979a2(%rip), %rsi     # 0xe3179
leaq 0x9e423(%rip), %rdx     # 0xe9c01
leaq 0x9e00c(%rip), %rcx     # 0xe97f1
leaq 0x9dcf4(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x172, %r9d            # imm = 0x172
jmp 0x4af5c
callq 0x14b89
callq 0x14bc2
callq 0x14bfb
addq %r15, %r13
addq %rbp, %r12
subq %r12, %r13
cmpq $0x10, %r13
jne 0x4b8b4
movq 0x8(%rsp), %rdi
testq %rdi, %rdi
je 0x4b837
leaq 0x9dcb3(%rip), %rsi     # 0xe94e0
movl $0x199, %edx            # imm = 0x199
callq 0x362a0
leaq 0x9deb0(%rip), %r14     # 0xe96ee
leaq 0xa63ec(%rip), %r15     # 0xf1c31
movq %r14, %rdi
movq %r15, %rsi
callq 0x4a578
leaq 0x10(%rsp), %r12
movq %rax, (%r12)
leaq 0x9de9c(%rip), %rsi     # 0xe96fc
leaq 0xa5a60(%rip), %rdx     # 0xf12c7
movq %r12, %rdi
callq 0x4a62c
movq (%r12), %rdi
movq %r14, %rsi
callq 0x4aab6
movq %rax, %rdi
movq %r15, %rsi
callq 0xb890
testl %eax, %eax
je 0x4b8de
leaq 0x978e8(%rip), %rsi     # 0xe3179
leaq 0x9e425(%rip), %rdx     # 0xe9cbd
leaq 0x9df52(%rip), %rcx     # 0xe97f1
leaq 0x9dc3a(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x18c, %r9d            # imm = 0x18C
jmp 0x4b9b3
leaq 0x978be(%rip), %rsi     # 0xe3179
leaq 0x9e3af(%rip), %rdx     # 0xe9c71
leaq 0x9df28(%rip), %rcx     # 0xe97f1
leaq 0x9dc10(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x184, %r9d            # imm = 0x184
jmp 0x4af5c
movq 0x10(%rsp), %rdi
leaq 0x9de12(%rip), %rsi     # 0xe96fc
callq 0x4aab6
leaq 0xa59d1(%rip), %rsi     # 0xf12c7
movq %rax, %rdi
callq 0xb890
testl %eax, %eax
je 0x4b92c
leaq 0x97870(%rip), %rsi     # 0xe3179
leaq 0x9e3e0(%rip), %rdx     # 0xe9cf0
leaq 0x9deda(%rip), %rcx     # 0xe97f1
leaq 0x9dbc2(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x18d, %r9d            # imm = 0x18D
jmp 0x4b9b3
movq 0x10(%rsp), %rdi
leaq 0xa598f(%rip), %rsi     # 0xf12c7
callq 0x4aab6
testq %rax, %rax
je 0x4b978
leaq 0x97830(%rip), %rsi     # 0xe3179
leaq 0x9e3d3(%rip), %rdx     # 0xe9d23
leaq 0x9de9a(%rip), %rcx     # 0xe97f1
leaq 0x9db82(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x18e, %r9d            # imm = 0x18E
jmp 0x4b9b3
callq 0x14c34
callq 0x14c6d
callq 0x14ca6
movq 0x10(%rsp), %rdi
leaq 0xa62ad(%rip), %rsi     # 0xf1c31
callq 0x4aab6
testq %rax, %rax
je 0x4b9c9
leaq 0x977e4(%rip), %rsi     # 0xe3179
leaq 0x9e3a9(%rip), %rdx     # 0xe9d45
leaq 0x9de4e(%rip), %rcx     # 0xe97f1
leaq 0x9db36(%rip), %r8      # 0xe94e0
movq %rbx, %rdi
movl $0x18f, %r9d            # imm = 0x18F
xorl %eax, %eax
callq 0x3559f
movl $0xffffffff, %ebx       # imm = 0xFFFFFFFF
movq 0x10(%rsp), %rdi
jmp 0x4af6d
xorl %ebx, %ebx
jmp 0x4b9bf
callq 0x14cdf
callq 0x14d18
callq 0x14d51