// File: /workspace/github_c_makefile_star2_O0/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:
subq $0x58, %rsp
movq %rdi, 0x50(%rsp)
movl $0x0, 0x44(%rsp)
cmpq $0x0, 0x50(%rsp)
je 0x37381
movq 0x50(%rsp), %rdi
callq 0xc270
testb $0x1, %al
jne 0x37349
jmp 0x37381
movq 0x17cc88(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x126d0c(%rip), %rsi    # 0x15e066
leaq 0x1272e7(%rip), %rdx    # 0x15e648
leaq 0x12f5dd(%rip), %rcx    # 0x166945
leaq 0x12f2c5(%rip), %r8     # 0x166634
movl $0x11e, %r9d            # imm = 0x11E
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x37383
callq 0x38450
movq %rax, 0x48(%rsp)
cmpl $0x0, 0x44(%rsp)
jne 0x373dc
movq 0x48(%rsp), %rdi
callq 0x36ed0
cmpq $0x3, %rax
je 0x373da
movq 0x50(%rsp), %rdi
leaq 0x128dc7(%rip), %rsi    # 0x160177
leaq 0x12f5a9(%rip), %rdx    # 0x166960
leaq 0x12f587(%rip), %rcx    # 0x166945
leaq 0x12f26f(%rip), %r8     # 0x166634
movl $0x122, %r9d            # imm = 0x122
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x373dc
jmp 0x373de
leaq 0x48(%rsp), %rdi
leaq 0x12f458(%rip), %rsi    # 0x166842
leaq 0x12f58f(%rip), %rdx    # 0x166980
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12f44e(%rip), %rsi    # 0x166850
leaq 0x12f57d(%rip), %rdx    # 0x166986
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12f444(%rip), %rsi    # 0x16685e
leaq 0x12f56b(%rip), %rdx    # 0x16698c
callq 0x36ad0
cmpl $0x0, 0x44(%rsp)
jne 0x3747c
movq 0x48(%rsp), %rdi
leaq 0x12f433(%rip), %rsi    # 0x16686c
callq 0x36e50
cmpq $0x0, %rax
je 0x3747a
movq 0x50(%rsp), %rdi
leaq 0x128d27(%rip), %rsi    # 0x160177
leaq 0x12f420(%rip), %rdx    # 0x166877
leaq 0x12f4e7(%rip), %rcx    # 0x166945
leaq 0x12f1cf(%rip), %r8     # 0x166634
movl $0x126, %r9d            # imm = 0x126
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x3747c
jmp 0x3747e
jmp 0x37480
movq 0x48(%rsp), %rdi
leaq 0x12f506(%rip), %rsi    # 0x166992
callq 0x36e50
cmpq $0x0, %rax
je 0x374cf
movq 0x17cb3a(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x126bbe(%rip), %rsi    # 0x15e066
leaq 0x12f4eb(%rip), %rdx    # 0x16699a
leaq 0x12f48f(%rip), %rcx    # 0x166945
leaq 0x12f177(%rip), %r8     # 0x166634
movl $0x127, %r9d            # imm = 0x127
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x374d1
jmp 0x374d3
movq 0x48(%rsp), %rdi
leaq 0x12f4e1(%rip), %rsi    # 0x1669c0
callq 0x36e50
cmpq $0x0, %rax
je 0x37522
movq 0x17cae7(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x126b6b(%rip), %rsi    # 0x15e066
leaq 0x12f4c6(%rip), %rdx    # 0x1669c8
leaq 0x12f43c(%rip), %rcx    # 0x166945
leaq 0x12f124(%rip), %r8     # 0x166634
movl $0x128, %r9d            # imm = 0x128
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x37524
jmp 0x37526
movq 0x48(%rsp), %rdi
leaq 0x12f4bc(%rip), %rsi    # 0x1669ee
callq 0x36e50
cmpq $0x0, %rax
je 0x37575
movq 0x17ca94(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x126b18(%rip), %rsi    # 0x15e066
leaq 0x12f4a1(%rip), %rdx    # 0x1669f6
leaq 0x12f3e9(%rip), %rcx    # 0x166945
leaq 0x12f0d1(%rip), %r8     # 0x166634
movl $0x129, %r9d            # imm = 0x129
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x37577
jmp 0x37579
cmpl $0x0, 0x44(%rsp)
jne 0x375dd
movq 0x48(%rsp), %rdi
leaq 0x12f2b6(%rip), %rsi    # 0x166842
callq 0x36e50
movq %rax, %rdi
leaq 0x12f3e5(%rip), %rsi    # 0x166980
callq 0xb850
cmpl $0x0, %eax
je 0x375db
movq 0x50(%rsp), %rdi
leaq 0x128bc6(%rip), %rsi    # 0x160177
leaq 0x12f464(%rip), %rdx    # 0x166a1c
leaq 0x12f386(%rip), %rcx    # 0x166945
leaq 0x12f06e(%rip), %r8     # 0x166634
movl $0x12a, %r9d            # imm = 0x12A
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x375dd
jmp 0x375df
jmp 0x375e1
cmpl $0x0, 0x44(%rsp)
jne 0x37645
movq 0x48(%rsp), %rdi
leaq 0x12f25c(%rip), %rsi    # 0x166850
callq 0x36e50
movq %rax, %rdi
leaq 0x12f383(%rip), %rsi    # 0x166986
callq 0xb850
cmpl $0x0, %eax
je 0x37643
movq 0x50(%rsp), %rdi
leaq 0x128b5e(%rip), %rsi    # 0x160177
leaq 0x12f431(%rip), %rdx    # 0x166a51
leaq 0x12f31e(%rip), %rcx    # 0x166945
leaq 0x12f006(%rip), %r8     # 0x166634
movl $0x12b, %r9d            # imm = 0x12B
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x37645
jmp 0x37647
jmp 0x37649
cmpl $0x0, 0x44(%rsp)
jne 0x376ad
movq 0x48(%rsp), %rdi
leaq 0x12f202(%rip), %rsi    # 0x16685e
callq 0x36e50
movq %rax, %rdi
leaq 0x12f321(%rip), %rsi    # 0x16698c
callq 0xb850
cmpl $0x0, %eax
je 0x376ab
movq 0x50(%rsp), %rdi
leaq 0x128af6(%rip), %rsi    # 0x160177
leaq 0x12f3fe(%rip), %rdx    # 0x166a86
leaq 0x12f2b6(%rip), %rcx    # 0x166945
leaq 0x12ef9e(%rip), %r8     # 0x166634
movl $0x12c, %r9d            # imm = 0x12C
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x376ad
jmp 0x376af
movq 0x48(%rsp), %rdi
callq 0x372f0
cmpl $0x0, 0x44(%rsp)
jne 0x379a9
callq 0x38450
movq %rax, 0x48(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x12f168(%rip), %rsi    # 0x166842
leaq 0x12f2b1(%rip), %rdx    # 0x166992
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12f15e(%rip), %rsi    # 0x166850
leaq 0x12f2c7(%rip), %rdx    # 0x1669c0
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12f154(%rip), %rsi    # 0x16685e
leaq 0x12f2dd(%rip), %rdx    # 0x1669ee
callq 0x36ad0
cmpl $0x0, 0x44(%rsp)
jne 0x3776c
movq 0x48(%rsp), %rdi
leaq 0x12f143(%rip), %rsi    # 0x16686c
callq 0x36e50
cmpq $0x0, %rax
je 0x3776a
movq 0x50(%rsp), %rdi
leaq 0x128a37(%rip), %rsi    # 0x160177
leaq 0x12f130(%rip), %rdx    # 0x166877
leaq 0x12f1f7(%rip), %rcx    # 0x166945
leaq 0x12eedf(%rip), %r8     # 0x166634
movl $0x135, %r9d            # imm = 0x135
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x3776c
jmp 0x3776e
jmp 0x37770
movq 0x48(%rsp), %rdi
leaq 0x12f216(%rip), %rsi    # 0x166992
callq 0x36e50
cmpq $0x0, %rax
je 0x377bf
movq 0x17c84a(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x1268ce(%rip), %rsi    # 0x15e066
leaq 0x12f1fb(%rip), %rdx    # 0x16699a
leaq 0x12f19f(%rip), %rcx    # 0x166945
leaq 0x12ee87(%rip), %r8     # 0x166634
movl $0x136, %r9d            # imm = 0x136
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x377c1
jmp 0x377c3
movq 0x48(%rsp), %rdi
leaq 0x12f1f1(%rip), %rsi    # 0x1669c0
callq 0x36e50
cmpq $0x0, %rax
je 0x37812
movq 0x17c7f7(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x12687b(%rip), %rsi    # 0x15e066
leaq 0x12f1d6(%rip), %rdx    # 0x1669c8
leaq 0x12f14c(%rip), %rcx    # 0x166945
leaq 0x12ee34(%rip), %r8     # 0x166634
movl $0x137, %r9d            # imm = 0x137
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x37814
jmp 0x37816
movq 0x48(%rsp), %rdi
leaq 0x12f1cc(%rip), %rsi    # 0x1669ee
callq 0x36e50
cmpq $0x0, %rax
je 0x37865
movq 0x17c7a4(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x126828(%rip), %rsi    # 0x15e066
leaq 0x12f1b1(%rip), %rdx    # 0x1669f6
leaq 0x12f0f9(%rip), %rcx    # 0x166945
leaq 0x12ede1(%rip), %r8     # 0x166634
movl $0x138, %r9d            # imm = 0x138
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x37867
jmp 0x37869
cmpl $0x0, 0x44(%rsp)
jne 0x378cd
movq 0x48(%rsp), %rdi
leaq 0x12efc6(%rip), %rsi    # 0x166842
callq 0x36e50
movq %rax, %rdi
leaq 0x12f107(%rip), %rsi    # 0x166992
callq 0xb850
cmpl $0x0, %eax
je 0x378cb
movq 0x50(%rsp), %rdi
leaq 0x1288d6(%rip), %rsi    # 0x160177
leaq 0x12f213(%rip), %rdx    # 0x166abb
leaq 0x12f096(%rip), %rcx    # 0x166945
leaq 0x12ed7e(%rip), %r8     # 0x166634
movl $0x139, %r9d            # imm = 0x139
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x378cd
jmp 0x378cf
jmp 0x378d1
cmpl $0x0, 0x44(%rsp)
jne 0x37935
movq 0x48(%rsp), %rdi
leaq 0x12ef6c(%rip), %rsi    # 0x166850
callq 0x36e50
movq %rax, %rdi
leaq 0x12f0cd(%rip), %rsi    # 0x1669c0
callq 0xb850
cmpl $0x0, %eax
je 0x37933
movq 0x50(%rsp), %rdi
leaq 0x12886e(%rip), %rsi    # 0x160177
leaq 0x12f1e2(%rip), %rdx    # 0x166af2
leaq 0x12f02e(%rip), %rcx    # 0x166945
leaq 0x12ed16(%rip), %r8     # 0x166634
movl $0x13a, %r9d            # imm = 0x13A
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x37935
jmp 0x37937
jmp 0x37939
cmpl $0x0, 0x44(%rsp)
jne 0x3799d
movq 0x48(%rsp), %rdi
leaq 0x12ef12(%rip), %rsi    # 0x16685e
callq 0x36e50
movq %rax, %rdi
leaq 0x12f093(%rip), %rsi    # 0x1669ee
callq 0xb850
cmpl $0x0, %eax
je 0x3799b
movq 0x50(%rsp), %rdi
leaq 0x128806(%rip), %rsi    # 0x160177
leaq 0x12f1b1(%rip), %rdx    # 0x166b29
leaq 0x12efc6(%rip), %rcx    # 0x166945
leaq 0x12ecae(%rip), %r8     # 0x166634
movl $0x13b, %r9d            # imm = 0x13B
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x3799d
jmp 0x3799f
movq 0x48(%rsp), %rdi
callq 0x372f0
cmpl $0x0, 0x44(%rsp)
jne 0x37c99
callq 0x38450
movq %rax, 0x48(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x12ee78(%rip), %rsi    # 0x166842
leaq 0x12f18f(%rip), %rdx    # 0x166b60
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12ee6e(%rip), %rsi    # 0x166850
leaq 0x12f181(%rip), %rdx    # 0x166b6a
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12ee64(%rip), %rsi    # 0x16685e
leaq 0x12f173(%rip), %rdx    # 0x166b74
callq 0x36ad0
cmpl $0x0, 0x44(%rsp)
jne 0x37a5c
movq 0x48(%rsp), %rdi
leaq 0x12ee53(%rip), %rsi    # 0x16686c
callq 0x36e50
cmpq $0x0, %rax
je 0x37a5a
movq 0x50(%rsp), %rdi
leaq 0x128747(%rip), %rsi    # 0x160177
leaq 0x12ee40(%rip), %rdx    # 0x166877
leaq 0x12ef07(%rip), %rcx    # 0x166945
leaq 0x12ebef(%rip), %r8     # 0x166634
movl $0x145, %r9d            # imm = 0x145
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x37a5c
jmp 0x37a5e
jmp 0x37a60
movq 0x48(%rsp), %rdi
leaq 0x12f0f4(%rip), %rsi    # 0x166b60
callq 0x36e50
cmpq $0x0, %rax
je 0x37aaf
movq 0x17c55a(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x1265de(%rip), %rsi    # 0x15e066
leaq 0x12f0ef(%rip), %rdx    # 0x166b7e
leaq 0x12eeaf(%rip), %rcx    # 0x166945
leaq 0x12eb97(%rip), %r8     # 0x166634
movl $0x146, %r9d            # imm = 0x146
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x37ab1
jmp 0x37ab3
movq 0x48(%rsp), %rdi
leaq 0x12f0ab(%rip), %rsi    # 0x166b6a
callq 0x36e50
cmpq $0x0, %rax
je 0x37b02
movq 0x17c507(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x12658b(%rip), %rsi    # 0x15e066
leaq 0x12f0c4(%rip), %rdx    # 0x166ba6
leaq 0x12ee5c(%rip), %rcx    # 0x166945
leaq 0x12eb44(%rip), %r8     # 0x166634
movl $0x147, %r9d            # imm = 0x147
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x37b04
jmp 0x37b06
movq 0x48(%rsp), %rdi
leaq 0x12f062(%rip), %rsi    # 0x166b74
callq 0x36e50
cmpq $0x0, %rax
je 0x37b55
movq 0x17c4b4(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x126538(%rip), %rsi    # 0x15e066
leaq 0x12f099(%rip), %rdx    # 0x166bce
leaq 0x12ee09(%rip), %rcx    # 0x166945
leaq 0x12eaf1(%rip), %r8     # 0x166634
movl $0x148, %r9d            # imm = 0x148
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x37b57
jmp 0x37b59
cmpl $0x0, 0x44(%rsp)
jne 0x37bbd
movq 0x48(%rsp), %rdi
leaq 0x12ecd6(%rip), %rsi    # 0x166842
callq 0x36e50
movq %rax, %rdi
leaq 0x12efe5(%rip), %rsi    # 0x166b60
callq 0xb850
cmpl $0x0, %eax
je 0x37bbb
movq 0x50(%rsp), %rdi
leaq 0x1285e6(%rip), %rsi    # 0x160177
leaq 0x12f05e(%rip), %rdx    # 0x166bf6
leaq 0x12eda6(%rip), %rcx    # 0x166945
leaq 0x12ea8e(%rip), %r8     # 0x166634
movl $0x14a, %r9d            # imm = 0x14A
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x37bbd
jmp 0x37bbf
jmp 0x37bc1
cmpl $0x0, 0x44(%rsp)
jne 0x37c25
movq 0x48(%rsp), %rdi
leaq 0x12ec7c(%rip), %rsi    # 0x166850
callq 0x36e50
movq %rax, %rdi
leaq 0x12ef87(%rip), %rsi    # 0x166b6a
callq 0xb850
cmpl $0x0, %eax
je 0x37c23
movq 0x50(%rsp), %rdi
leaq 0x12857e(%rip), %rsi    # 0x160177
leaq 0x12f02f(%rip), %rdx    # 0x166c2f
leaq 0x12ed3e(%rip), %rcx    # 0x166945
leaq 0x12ea26(%rip), %r8     # 0x166634
movl $0x14c, %r9d            # imm = 0x14C
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x37c25
jmp 0x37c27
jmp 0x37c29
cmpl $0x0, 0x44(%rsp)
jne 0x37c8d
movq 0x48(%rsp), %rdi
leaq 0x12ec22(%rip), %rsi    # 0x16685e
callq 0x36e50
movq %rax, %rdi
leaq 0x12ef29(%rip), %rsi    # 0x166b74
callq 0xb850
cmpl $0x0, %eax
je 0x37c8b
movq 0x50(%rsp), %rdi
leaq 0x128516(%rip), %rsi    # 0x160177
leaq 0x12f000(%rip), %rdx    # 0x166c68
leaq 0x12ecd6(%rip), %rcx    # 0x166945
leaq 0x12e9be(%rip), %r8     # 0x166634
movl $0x14e, %r9d            # imm = 0x14E
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x37c8d
jmp 0x37c8f
movq 0x48(%rsp), %rdi
callq 0x372f0
cmpl $0x0, 0x44(%rsp)
jne 0x37e8e
callq 0x38450
movq %rax, 0x48(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x12eb88(%rip), %rsi    # 0x166842
leaq 0x12ee9f(%rip), %rdx    # 0x166b60
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12eb7e(%rip), %rsi    # 0x166850
leaq 0x12ee91(%rip), %rdx    # 0x166b6a
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12eb74(%rip), %rsi    # 0x16685e
leaq 0x12ee83(%rip), %rdx    # 0x166b74
callq 0x36ad0
movq 0x48(%rsp), %rdi
callq 0x36a70
movq %rax, 0x38(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x12eb31(%rip), %rsi    # 0x166842
callq 0x367b0
movq 0x48(%rsp), %rdi
leaq 0x12eb20(%rip), %rsi    # 0x166842
callq 0x36e50
cmpq $0x0, %rax
je 0x37d65
movq 0x17c2a4(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x126328(%rip), %rsi    # 0x15e066
leaq 0x12ef5c(%rip), %rdx    # 0x166ca1
leaq 0x12ebf9(%rip), %rcx    # 0x166945
leaq 0x12e8e1(%rip), %r8     # 0x166634
movl $0x15b, %r9d            # imm = 0x15B
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x37d67
jmp 0x37d69
cmpl $0x0, 0x44(%rsp)
jne 0x37db8
movq 0x48(%rsp), %rdi
callq 0x36ed0
cmpq $0x2, %rax
je 0x37db6
movq 0x50(%rsp), %rdi
leaq 0x1283eb(%rip), %rsi    # 0x160177
leaq 0x12ef32(%rip), %rdx    # 0x166cc5
leaq 0x12ebab(%rip), %rcx    # 0x166945
leaq 0x12e893(%rip), %r8     # 0x166634
movl $0x15c, %r9d            # imm = 0x15C
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x37db8
jmp 0x37dba
movq 0x48(%rsp), %rdi
callq 0x36a70
movq %rax, 0x30(%rsp)
cmpl $0x0, 0x44(%rsp)
jne 0x37e1f
movq 0x48(%rsp), %rdi
leaq 0x12ea90(%rip), %rsi    # 0x16686c
callq 0x36e50
cmpq $0x0, %rax
je 0x37e1d
movq 0x50(%rsp), %rdi
leaq 0x128384(%rip), %rsi    # 0x160177
leaq 0x12ea7d(%rip), %rdx    # 0x166877
leaq 0x12eb44(%rip), %rcx    # 0x166945
leaq 0x12e82c(%rip), %r8     # 0x166634
movl $0x15e, %r9d            # imm = 0x15E
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x37e1f
jmp 0x37e21
jmp 0x37e23
cmpl $0x0, 0x44(%rsp)
jne 0x37e82
movq 0x38(%rsp), %rax
subq 0x30(%rsp), %rax
subq $0x5, %rax
subq $0x1, %rax
subq $0x9, %rax
subq $0x1, %rax
cmpq $0x0, %rax
je 0x37e80
movq 0x50(%rsp), %rdi
leaq 0x128321(%rip), %rsi    # 0x160177
leaq 0x12ee88(%rip), %rdx    # 0x166ce5
leaq 0x12eae1(%rip), %rcx    # 0x166945
leaq 0x12e7c9(%rip), %r8     # 0x166634
movl $0x160, %r9d            # imm = 0x160
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x37e82
jmp 0x37e84
movq 0x48(%rsp), %rdi
callq 0x372f0
cmpl $0x0, 0x44(%rsp)
jne 0x38083
callq 0x38450
movq %rax, 0x48(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x12e993(%rip), %rsi    # 0x166842
leaq 0x12ecaa(%rip), %rdx    # 0x166b60
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12e989(%rip), %rsi    # 0x166850
leaq 0x12ec9c(%rip), %rdx    # 0x166b6a
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12e97f(%rip), %rsi    # 0x16685e
leaq 0x12ec8e(%rip), %rdx    # 0x166b74
callq 0x36ad0
movq 0x48(%rsp), %rdi
callq 0x36a70
movq %rax, 0x28(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x12e94a(%rip), %rsi    # 0x166850
callq 0x367b0
movq 0x48(%rsp), %rdi
leaq 0x12e939(%rip), %rsi    # 0x166850
callq 0x36e50
cmpq $0x0, %rax
je 0x37f5a
movq 0x17c0af(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x126133(%rip), %rsi    # 0x15e066
leaq 0x12edf7(%rip), %rdx    # 0x166d31
leaq 0x12ea04(%rip), %rcx    # 0x166945
leaq 0x12e6ec(%rip), %r8     # 0x166634
movl $0x16d, %r9d            # imm = 0x16D
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x37f5c
jmp 0x37f5e
cmpl $0x0, 0x44(%rsp)
jne 0x37fad
movq 0x48(%rsp), %rdi
callq 0x36ed0
cmpq $0x2, %rax
je 0x37fab
movq 0x50(%rsp), %rdi
leaq 0x1281f6(%rip), %rsi    # 0x160177
leaq 0x12ed3d(%rip), %rdx    # 0x166cc5
leaq 0x12e9b6(%rip), %rcx    # 0x166945
leaq 0x12e69e(%rip), %r8     # 0x166634
movl $0x16e, %r9d            # imm = 0x16E
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x37fad
jmp 0x37faf
movq 0x48(%rsp), %rdi
callq 0x36a70
movq %rax, 0x20(%rsp)
cmpl $0x0, 0x44(%rsp)
jne 0x38014
movq 0x48(%rsp), %rdi
leaq 0x12e89b(%rip), %rsi    # 0x16686c
callq 0x36e50
cmpq $0x0, %rax
je 0x38012
movq 0x50(%rsp), %rdi
leaq 0x12818f(%rip), %rsi    # 0x160177
leaq 0x12e888(%rip), %rdx    # 0x166877
leaq 0x12e94f(%rip), %rcx    # 0x166945
leaq 0x12e637(%rip), %r8     # 0x166634
movl $0x170, %r9d            # imm = 0x170
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x38014
jmp 0x38016
jmp 0x38018
cmpl $0x0, 0x44(%rsp)
jne 0x38077
movq 0x28(%rsp), %rax
subq 0x20(%rsp), %rax
subq $0x5, %rax
subq $0x1, %rax
subq $0x9, %rax
subq $0x1, %rax
cmpq $0x0, %rax
je 0x38075
movq 0x50(%rsp), %rdi
leaq 0x12812c(%rip), %rsi    # 0x160177
leaq 0x12ed03(%rip), %rdx    # 0x166d55
leaq 0x12e8ec(%rip), %rcx    # 0x166945
leaq 0x12e5d4(%rip), %r8     # 0x166634
movl $0x172, %r9d            # imm = 0x172
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x38077
jmp 0x38079
movq 0x48(%rsp), %rdi
callq 0x372f0
cmpl $0x0, 0x44(%rsp)
jne 0x38278
callq 0x38450
movq %rax, 0x48(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x12e79e(%rip), %rsi    # 0x166842
leaq 0x12eab5(%rip), %rdx    # 0x166b60
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12e794(%rip), %rsi    # 0x166850
leaq 0x12eaa7(%rip), %rdx    # 0x166b6a
callq 0x36ad0
leaq 0x48(%rsp), %rdi
leaq 0x12e78a(%rip), %rsi    # 0x16685e
leaq 0x12ea99(%rip), %rdx    # 0x166b74
callq 0x36ad0
movq 0x48(%rsp), %rdi
callq 0x36a70
movq %rax, 0x18(%rsp)
leaq 0x48(%rsp), %rdi
leaq 0x12e763(%rip), %rsi    # 0x16685e
callq 0x367b0
movq 0x48(%rsp), %rdi
leaq 0x12e752(%rip), %rsi    # 0x16685e
callq 0x36e50
cmpq $0x0, %rax
je 0x3814f
movq 0x17beba(%rip), %rax    # 0x1b3fd8
movq (%rax), %rdi
leaq 0x125f3e(%rip), %rsi    # 0x15e066
leaq 0x12ec72(%rip), %rdx    # 0x166da1
leaq 0x12e80f(%rip), %rcx    # 0x166945
leaq 0x12e4f7(%rip), %r8     # 0x166634
movl $0x17f, %r9d            # imm = 0x17F
movb $0x0, %al
callq 0xb890
callq 0xb2e0
jmp 0x38151
jmp 0x38153
cmpl $0x0, 0x44(%rsp)
jne 0x381a2
movq 0x48(%rsp), %rdi
callq 0x36ed0
cmpq $0x2, %rax
je 0x381a0
movq 0x50(%rsp), %rdi
leaq 0x128001(%rip), %rsi    # 0x160177
leaq 0x12eb48(%rip), %rdx    # 0x166cc5
leaq 0x12e7c1(%rip), %rcx    # 0x166945
leaq 0x12e4a9(%rip), %r8     # 0x166634
movl $0x180, %r9d            # imm = 0x180
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x381a2
jmp 0x381a4
movq 0x48(%rsp), %rdi
callq 0x36a70
movq %rax, 0x10(%rsp)
cmpl $0x0, 0x44(%rsp)
jne 0x38209
movq 0x48(%rsp), %rdi
leaq 0x12e6a6(%rip), %rsi    # 0x16686c
callq 0x36e50
cmpq $0x0, %rax
je 0x38207
movq 0x50(%rsp), %rdi
leaq 0x127f9a(%rip), %rsi    # 0x160177
leaq 0x12e693(%rip), %rdx    # 0x166877
leaq 0x12e75a(%rip), %rcx    # 0x166945
leaq 0x12e442(%rip), %r8     # 0x166634
movl $0x182, %r9d            # imm = 0x182
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x38209
jmp 0x3820b
jmp 0x3820d
cmpl $0x0, 0x44(%rsp)
jne 0x3826c
movq 0x18(%rsp), %rax
subq 0x10(%rsp), %rax
subq $0x5, %rax
subq $0x1, %rax
subq $0x9, %rax
subq $0x1, %rax
cmpq $0x0, %rax
je 0x3826a
movq 0x50(%rsp), %rdi
leaq 0x127f37(%rip), %rsi    # 0x160177
leaq 0x12eb7e(%rip), %rdx    # 0x166dc5
leaq 0x12e6f7(%rip), %rcx    # 0x166945
leaq 0x12e3df(%rip), %r8     # 0x166634
movl $0x184, %r9d            # imm = 0x184
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x3826c
jmp 0x3826e
movq 0x48(%rsp), %rdi
callq 0x372f0
cmpl $0x0, 0x44(%rsp)
jne 0x3843f
leaq 0x12e5b8(%rip), %rdi    # 0x166842
leaq 0x137488(%rip), %rsi    # 0x16f719
callq 0x36340
movq %rax, 0x8(%rsp)
leaq 0x8(%rsp), %rdi
leaq 0x12e5a9(%rip), %rsi    # 0x166850
leaq 0x136510(%rip), %rdx    # 0x16e7be
callq 0x36490
cmpl $0x0, 0x44(%rsp)
jne 0x38317
movq 0x8(%rsp), %rdi
leaq 0x12e57c(%rip), %rsi    # 0x166842
callq 0x36e50
movq %rax, %rdi
leaq 0x137444(%rip), %rsi    # 0x16f719
callq 0xb850
cmpl $0x0, %eax
je 0x38315
movq 0x50(%rsp), %rdi
leaq 0x127e8c(%rip), %rsi    # 0x160177
leaq 0x12eb1f(%rip), %rdx    # 0x166e11
leaq 0x12e64c(%rip), %rcx    # 0x166945
leaq 0x12e334(%rip), %r8     # 0x166634
movl $0x18c, %r9d            # imm = 0x18C
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x38317
jmp 0x38319
jmp 0x3831b
cmpl $0x0, 0x44(%rsp)
jne 0x3837f
movq 0x8(%rsp), %rdi
leaq 0x12e522(%rip), %rsi    # 0x166850
callq 0x36e50
movq %rax, %rdi
leaq 0x136481(%rip), %rsi    # 0x16e7be
callq 0xb850
cmpl $0x0, %eax
je 0x3837d
movq 0x50(%rsp), %rdi
leaq 0x127e24(%rip), %rsi    # 0x160177
leaq 0x12eaea(%rip), %rdx    # 0x166e44
leaq 0x12e5e4(%rip), %rcx    # 0x166945
leaq 0x12e2cc(%rip), %r8     # 0x166634
movl $0x18d, %r9d            # imm = 0x18D
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x3837f
jmp 0x38381
jmp 0x38383
cmpl $0x0, 0x44(%rsp)
jne 0x383d9
movq 0x8(%rsp), %rdi
leaq 0x136428(%rip), %rsi    # 0x16e7be
callq 0x36e50
cmpq $0x0, %rax
je 0x383d7
movq 0x50(%rsp), %rdi
leaq 0x127dca(%rip), %rsi    # 0x160177
leaq 0x12eac3(%rip), %rdx    # 0x166e77
leaq 0x12e58a(%rip), %rcx    # 0x166945
leaq 0x12e272(%rip), %r8     # 0x166634
movl $0x18e, %r9d            # imm = 0x18E
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x383d9
jmp 0x383db
jmp 0x383dd
cmpl $0x0, 0x44(%rsp)
jne 0x38433
movq 0x8(%rsp), %rdi
leaq 0x137329(%rip), %rsi    # 0x16f719
callq 0x36e50
cmpq $0x0, %rax
je 0x38431
movq 0x50(%rsp), %rdi
leaq 0x127d70(%rip), %rsi    # 0x160177
leaq 0x12ea8b(%rip), %rdx    # 0x166e99
leaq 0x12e530(%rip), %rcx    # 0x166945
leaq 0x12e218(%rip), %r8     # 0x166634
movl $0x18f, %r9d            # imm = 0x18F
movb $0x0, %al
callq 0xc0d0
movl $0xffffffff, 0x44(%rsp) # imm = 0xFFFFFFFF
jmp 0x38433
jmp 0x38435
movq 0x8(%rsp), %rdi
callq 0x372f0
movl 0x44(%rsp), %eax
addq $0x58, %rsp
retq
nopl (%rax,%rax)