// File: /workspace/github_c_makefile_star2_O2/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 0x27ab0
movq %rbx, %rdi
callq 0xc103
testb %al, %al
jne 0x283e7
callq 0x288d6
movq %rax, 0x8(%rsp)
movq %rax, %rdi
callq 0x27735
cmpq $0x3, %rax
jne 0x27b5b
leaq 0xaabb9(%rip), %rsi     # 0xd268c
leaq 0xaacf0(%rip), %rdx     # 0xd27ca
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x27410
leaq 0xaabac(%rip), %rsi     # 0xd269a
leaq 0xaacdb(%rip), %rdx     # 0xd27d0
movq %r14, %rdi
callq 0x27410
leaq 0xaaba4(%rip), %rsi     # 0xd26a8
leaq 0xaaccb(%rip), %rdx     # 0xd27d6
movq %r14, %rdi
callq 0x27410
movq (%r14), %rdi
leaq 0xaab99(%rip), %rsi     # 0xd26b6
callq 0x276e6
testq %rax, %rax
je 0x27bd2
leaq 0xa4627(%rip), %rsi     # 0xcc159
leaq 0xaab88(%rip), %rdx     # 0xd26c1
leaq 0xaac4f(%rip), %rcx     # 0xd278f
leaq 0xaa937(%rip), %r8      # 0xd247e
xorl %ebp, %ebp
movq %rbx, %rdi
movl $0x126, %r9d            # imm = 0x126
xorl %eax, %eax
callq 0xc007
jmp 0x27bd5
leaq 0xa45f7(%rip), %rsi     # 0xcc159
leaq 0xaac41(%rip), %rdx     # 0xd27aa
leaq 0xaac1f(%rip), %rcx     # 0xd278f
leaq 0xaa907(%rip), %r8      # 0xd247e
xorl %ebp, %ebp
movq %rbx, %rdi
movl $0x122, %r9d            # imm = 0x122
xorl %eax, %eax
callq 0xc007
leaq 0xaaafc(%rip), %rsi     # 0xd268c
leaq 0xaac33(%rip), %rdx     # 0xd27ca
leaq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x27410
leaq 0xaaaef(%rip), %rsi     # 0xd269a
leaq 0xaac1e(%rip), %rdx     # 0xd27d0
movq %r14, %rdi
callq 0x27410
leaq 0xaaae7(%rip), %rsi     # 0xd26a8
leaq 0xaac0e(%rip), %rdx     # 0xd27d6
movq %r14, %rdi
callq 0x27410
jmp 0x27bd5
movb $0x1, %bpl
movq 0x8(%rsp), %rdi
leaq 0xaabfb(%rip), %rsi     # 0xd27dc
callq 0x276e6
testq %rax, %rax
jne 0x2835a
movq 0x8(%rsp), %rdi
leaq 0xaac0f(%rip), %rsi     # 0xd280a
callq 0x276e6
testq %rax, %rax
jne 0x2838b
movq 0x8(%rsp), %rdi
leaq 0xaac23(%rip), %rsi     # 0xd2838
callq 0x276e6
testq %rax, %rax
jne 0x283b9
testb %bpl, %bpl
je 0x27d15
movq 0x8(%rsp), %rdi
leaq 0xaaa54(%rip), %rsi     # 0xd268c
callq 0x276e6
leaq 0xaab86(%rip), %rsi     # 0xd27ca
movq %rax, %rdi
callq 0xb880
testl %eax, %eax
je 0x27c7a
leaq 0xa4502(%rip), %rsi     # 0xcc159
leaq 0xaac08(%rip), %rdx     # 0xd2866
leaq 0xaab2a(%rip), %rcx     # 0xd278f
leaq 0xaa812(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x12a, %r9d            # imm = 0x12A
jmp 0x27d0e
movq 0x8(%rsp), %rdi
leaq 0xaaa14(%rip), %rsi     # 0xd269a
callq 0x276e6
leaq 0xaab3e(%rip), %rsi     # 0xd27d0
movq %rax, %rdi
callq 0xb880
testl %eax, %eax
je 0x27cc5
leaq 0xa44b4(%rip), %rsi     # 0xcc159
leaq 0xaabef(%rip), %rdx     # 0xd289b
leaq 0xaaadc(%rip), %rcx     # 0xd278f
leaq 0xaa7c4(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x12b, %r9d            # imm = 0x12B
jmp 0x27d0e
movq 0x8(%rsp), %rdi
leaq 0xaa9d7(%rip), %rsi     # 0xd26a8
callq 0x276e6
leaq 0xaaaf9(%rip), %rsi     # 0xd27d6
movq %rax, %rdi
callq 0xb880
testl %eax, %eax
je 0x27d33
leaq 0xa4469(%rip), %rsi     # 0xcc159
leaq 0xaabd9(%rip), %rdx     # 0xd28d0
leaq 0xaaa91(%rip), %rcx     # 0xd278f
leaq 0xaa779(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x12c, %r9d            # imm = 0x12C
xorl %eax, %eax
callq 0xc007
movq 0x8(%rsp), %rdi
callq 0x27a73
pushq $-0x1
popq %rbx
movl %ebx, %eax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x8(%rsp), %r14
movq (%r14), %rdi
callq 0x27a73
callq 0x288d6
movq %rax, (%r14)
leaq 0xaa93d(%rip), %rsi     # 0xd268c
leaq 0xaaa86(%rip), %rdx     # 0xd27dc
movq %r14, %rdi
callq 0x27410
leaq 0xaa935(%rip), %rsi     # 0xd269a
leaq 0xaaa9e(%rip), %rdx     # 0xd280a
movq %r14, %rdi
callq 0x27410
leaq 0xaa92d(%rip), %rsi     # 0xd26a8
leaq 0xaaab6(%rip), %rdx     # 0xd2838
movq %r14, %rdi
callq 0x27410
movq (%r14), %rdi
leaq 0xaa922(%rip), %rsi     # 0xd26b6
callq 0x276e6
movq %rax, %r14
testq %rax, %rax
je 0x27dcd
leaq 0xa43b1(%rip), %rsi     # 0xcc159
leaq 0xaa912(%rip), %rdx     # 0xd26c1
leaq 0xaa9d9(%rip), %rcx     # 0xd278f
leaq 0xaa6c1(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x135, %r9d            # imm = 0x135
xorl %eax, %eax
callq 0xc007
movq 0x8(%rsp), %rdi
leaq 0xaaa03(%rip), %rsi     # 0xd27dc
callq 0x276e6
testq %rax, %rax
jne 0x28575
movq 0x8(%rsp), %rdi
leaq 0xaaa17(%rip), %rsi     # 0xd280a
callq 0x276e6
testq %rax, %rax
jne 0x285a6
movq 0x8(%rsp), %rdi
leaq 0xaaa2b(%rip), %rsi     # 0xd2838
callq 0x276e6
testq %rax, %rax
jne 0x285d7
testq %r14, %r14
jne 0x27d15
movq 0x8(%rsp), %rdi
leaq 0xaa85c(%rip), %rsi     # 0xd268c
callq 0x276e6
leaq 0xaa9a0(%rip), %rsi     # 0xd27dc
movq %rax, %rdi
callq 0xb880
testl %eax, %eax
je 0x27e72
leaq 0xa430a(%rip), %rsi     # 0xcc159
leaq 0xaaaaf(%rip), %rdx     # 0xd2905
leaq 0xaa932(%rip), %rcx     # 0xd278f
leaq 0xaa61a(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x139, %r9d            # imm = 0x139
jmp 0x27d0e
movq 0x8(%rsp), %rdi
leaq 0xaa81c(%rip), %rsi     # 0xd269a
callq 0x276e6
leaq 0xaa980(%rip), %rsi     # 0xd280a
movq %rax, %rdi
callq 0xb880
testl %eax, %eax
je 0x27ec0
leaq 0xa42bc(%rip), %rsi     # 0xcc159
leaq 0xaaa98(%rip), %rdx     # 0xd293c
leaq 0xaa8e4(%rip), %rcx     # 0xd278f
leaq 0xaa5cc(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x13a, %r9d            # imm = 0x13A
jmp 0x27d0e
movq 0x8(%rsp), %rdi
leaq 0xaa7dc(%rip), %rsi     # 0xd26a8
callq 0x276e6
leaq 0xaa960(%rip), %rsi     # 0xd2838
movq %rax, %rdi
callq 0xb880
testl %eax, %eax
je 0x27f0e
leaq 0xa426e(%rip), %rsi     # 0xcc159
leaq 0xaaa81(%rip), %rdx     # 0xd2973
leaq 0xaa896(%rip), %rcx     # 0xd278f
leaq 0xaa57e(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x13b, %r9d            # imm = 0x13B
jmp 0x27d0e
leaq 0x8(%rsp), %r14
movq (%r14), %rdi
callq 0x27a73
callq 0x288d6
movq %rax, (%r14)
leaq 0xaa762(%rip), %rsi     # 0xd268c
leaq 0xaaa79(%rip), %rdx     # 0xd29aa
movq %r14, %rdi
callq 0x27410
leaq 0xaa75a(%rip), %rsi     # 0xd269a
leaq 0xaaa6d(%rip), %rdx     # 0xd29b4
movq %r14, %rdi
callq 0x27410
leaq 0xaa752(%rip), %rsi     # 0xd26a8
leaq 0xaaa61(%rip), %rdx     # 0xd29be
movq %r14, %rdi
callq 0x27410
movq (%r14), %rdi
leaq 0xaa747(%rip), %rsi     # 0xd26b6
callq 0x276e6
movq %rax, %r14
testq %rax, %rax
je 0x27fa8
leaq 0xa41d6(%rip), %rsi     # 0xcc159
leaq 0xaa737(%rip), %rdx     # 0xd26c1
leaq 0xaa7fe(%rip), %rcx     # 0xd278f
leaq 0xaa4e6(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x145, %r9d            # imm = 0x145
xorl %eax, %eax
callq 0xc007
movq 0x8(%rsp), %rdi
leaq 0xaa9f6(%rip), %rsi     # 0xd29aa
callq 0x276e6
testq %rax, %rax
jne 0x28758
movq 0x8(%rsp), %rdi
leaq 0xaa9e6(%rip), %rsi     # 0xd29b4
callq 0x276e6
testq %rax, %rax
jne 0x28789
movq 0x8(%rsp), %rdi
leaq 0xaa9d6(%rip), %rsi     # 0xd29be
callq 0x276e6
testq %rax, %rax
jne 0x287ba
testq %r14, %r14
jne 0x27d15
movq 0x8(%rsp), %rdi
leaq 0xaa681(%rip), %rsi     # 0xd268c
callq 0x276e6
leaq 0xaa993(%rip), %rsi     # 0xd29aa
movq %rax, %rdi
callq 0xb880
testl %eax, %eax
je 0x2804d
leaq 0xa412f(%rip), %rsi     # 0xcc159
leaq 0xaaa0f(%rip), %rdx     # 0xd2a40
leaq 0xaa757(%rip), %rcx     # 0xd278f
leaq 0xaa43f(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x14a, %r9d            # imm = 0x14A
jmp 0x27d0e
movq 0x8(%rsp), %rdi
leaq 0xaa641(%rip), %rsi     # 0xd269a
callq 0x276e6
leaq 0xaa94f(%rip), %rsi     # 0xd29b4
movq %rax, %rdi
callq 0xb880
testl %eax, %eax
je 0x2809b
leaq 0xa40e1(%rip), %rsi     # 0xcc159
leaq 0xaa9fa(%rip), %rdx     # 0xd2a79
leaq 0xaa709(%rip), %rcx     # 0xd278f
leaq 0xaa3f1(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x14c, %r9d            # imm = 0x14C
jmp 0x27d0e
movq 0x8(%rsp), %rdi
leaq 0xaa601(%rip), %rsi     # 0xd26a8
callq 0x276e6
leaq 0xaa90b(%rip), %rsi     # 0xd29be
movq %rax, %rdi
callq 0xb880
testl %eax, %eax
je 0x280e9
leaq 0xa4093(%rip), %rsi     # 0xcc159
leaq 0xaa9e5(%rip), %rdx     # 0xd2ab2
leaq 0xaa6bb(%rip), %rcx     # 0xd278f
leaq 0xaa3a3(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x14e, %r9d            # imm = 0x14E
jmp 0x27d0e
leaq 0x8(%rsp), %r15
movq (%r15), %rdi
callq 0x27a73
callq 0x288d6
movq %rax, (%r15)
leaq 0xaa587(%rip), %r12     # 0xd268c
leaq 0xaa89e(%rip), %rdx     # 0xd29aa
movq %r15, %rdi
movq %r12, %rsi
callq 0x27410
leaq 0xaa57c(%rip), %rsi     # 0xd269a
leaq 0xaa88f(%rip), %rdx     # 0xd29b4
movq %r15, %rdi
callq 0x27410
leaq 0xaa574(%rip), %rsi     # 0xd26a8
leaq 0xaa883(%rip), %rdx     # 0xd29be
movq %r15, %rdi
callq 0x27410
movq (%r15), %rdi
callq 0x273f1
movq %rax, %r14
movq %r15, %rdi
movq %r12, %rsi
callq 0x2721e
movq (%r15), %rdi
movq %r12, %rsi
callq 0x276e6
testq %rax, %rax
jne 0x28843
movq 0x8(%rsp), %rdi
callq 0x27735
movq %rax, %r15
cmpq $0x2, %rax
je 0x281ac
leaq 0xa3fd2(%rip), %rsi     # 0xcc159
leaq 0xaa981(%rip), %rdx     # 0xd2b0f
leaq 0xaa5fa(%rip), %rcx     # 0xd278f
leaq 0xaa2e2(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x15c, %r9d            # imm = 0x15C
xorl %eax, %eax
callq 0xc007
movq 0x8(%rsp), %r13
movq %r13, %rdi
callq 0x273f1
cmpq $0x2, %r15
jne 0x27d15
movq %rax, %r12
leaq 0xaa4e9(%rip), %rsi     # 0xd26b6
movq %r13, %rdi
callq 0x276e6
testq %rax, %rax
je 0x28204
leaq 0xa3f78(%rip), %rsi     # 0xcc159
leaq 0xaa4d9(%rip), %rdx     # 0xd26c1
leaq 0xaa5a0(%rip), %rcx     # 0xd278f
leaq 0xaa288(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x15e, %r9d            # imm = 0x15E
jmp 0x27d0e
subq %r12, %r14
cmpq $0x10, %r14
jne 0x28330
leaq 0x8(%rsp), %r15
movq (%r15), %rdi
callq 0x27a73
callq 0x288d6
movq %rax, (%r15)
leaq 0xaa45f(%rip), %rsi     # 0xd268c
leaq 0xaa776(%rip), %rdx     # 0xd29aa
movq %r15, %rdi
callq 0x27410
leaq 0xaa457(%rip), %r12     # 0xd269a
leaq 0xaa76a(%rip), %rdx     # 0xd29b4
movq %r15, %rdi
movq %r12, %rsi
callq 0x27410
leaq 0xaa44c(%rip), %rsi     # 0xd26a8
leaq 0xaa75b(%rip), %rdx     # 0xd29be
movq %r15, %rdi
callq 0x27410
movq (%r15), %rdi
callq 0x273f1
movq %rax, %r14
movq %r15, %rdi
movq %r12, %rsi
callq 0x2721e
movq (%r15), %rdi
movq %r12, %rsi
callq 0x276e6
testq %rax, %rax
jne 0x28874
movq 0x8(%rsp), %rdi
callq 0x27735
movq %rax, %r15
cmpq $0x2, %rax
je 0x282d4
leaq 0xa3eaa(%rip), %rsi     # 0xcc159
leaq 0xaa859(%rip), %rdx     # 0xd2b0f
leaq 0xaa4d2(%rip), %rcx     # 0xd278f
leaq 0xaa1ba(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x16e, %r9d            # imm = 0x16E
xorl %eax, %eax
callq 0xc007
movq 0x8(%rsp), %r13
movq %r13, %rdi
callq 0x273f1
cmpq $0x2, %r15
jne 0x27d15
movq %rax, %r12
leaq 0xaa3c1(%rip), %rsi     # 0xd26b6
movq %r13, %rdi
callq 0x276e6
testq %rax, %rax
je 0x2841f
leaq 0xa3e4c(%rip), %rsi     # 0xcc159
leaq 0xaa3ad(%rip), %rdx     # 0xd26c1
leaq 0xaa474(%rip), %rcx     # 0xd278f
leaq 0xaa15c(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x170, %r9d            # imm = 0x170
jmp 0x27d0e
leaq 0xa3e22(%rip), %rsi     # 0xcc159
leaq 0xaa7f1(%rip), %rdx     # 0xd2b2f
leaq 0xaa44a(%rip), %rcx     # 0xd278f
leaq 0xaa132(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x160, %r9d            # imm = 0x160
jmp 0x27d0e
movq 0x105c57(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa1cfb(%rip), %rsi     # 0xca066
leaq 0xaa472(%rip), %rdx     # 0xd27e4
leaq 0xaa416(%rip), %rcx     # 0xd278f
leaq 0xaa0fe(%rip), %r8      # 0xd247e
movl $0x127, %r9d            # imm = 0x127
jmp 0x28413
movq 0x105c26(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa1cca(%rip), %rsi     # 0xca066
leaq 0xaa46f(%rip), %rdx     # 0xd2812
leaq 0xaa3e5(%rip), %rcx     # 0xd278f
leaq 0xaa0cd(%rip), %r8      # 0xd247e
movl $0x128, %r9d            # imm = 0x128
jmp 0x28413
movq 0x105bf8(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa1c9c(%rip), %rsi     # 0xca066
leaq 0xaa46f(%rip), %rdx     # 0xd2840
leaq 0xaa3b7(%rip), %rcx     # 0xd278f
leaq 0xaa09f(%rip), %r8      # 0xd247e
movl $0x129, %r9d            # imm = 0x129
jmp 0x28413
movq 0x105bca(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa1c6e(%rip), %rsi     # 0xca066
leaq 0xa225a(%rip), %rdx     # 0xca659
leaq 0xaa389(%rip), %rcx     # 0xd278f
leaq 0xaa071(%rip), %r8      # 0xd247e
movl $0x11e, %r9d            # imm = 0x11E
xorl %eax, %eax
callq 0xb8c0
callq 0xb300
subq %r12, %r14
cmpq $0x10, %r14
jne 0x2854b
leaq 0x8(%rsp), %r15
movq (%r15), %rdi
callq 0x27a73
callq 0x288d6
movq %rax, (%r15)
leaq 0xaa244(%rip), %rsi     # 0xd268c
leaq 0xaa55b(%rip), %rdx     # 0xd29aa
movq %r15, %rdi
callq 0x27410
leaq 0xaa23c(%rip), %rsi     # 0xd269a
leaq 0xaa54f(%rip), %rdx     # 0xd29b4
movq %r15, %rdi
callq 0x27410
leaq 0xaa234(%rip), %r12     # 0xd26a8
leaq 0xaa543(%rip), %rdx     # 0xd29be
movq %r15, %rdi
movq %r12, %rsi
callq 0x27410
movq (%r15), %rdi
callq 0x273f1
movq %rax, %r14
movq %r15, %rdi
movq %r12, %rsi
callq 0x2721e
movq (%r15), %rdi
movq %r12, %rsi
callq 0x276e6
testq %rax, %rax
jne 0x288a5
movq 0x8(%rsp), %rdi
callq 0x27735
movq %rax, %r15
cmpq $0x2, %rax
je 0x284ef
leaq 0xa3c8f(%rip), %rsi     # 0xcc159
leaq 0xaa63e(%rip), %rdx     # 0xd2b0f
leaq 0xaa2b7(%rip), %rcx     # 0xd278f
leaq 0xa9f9f(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x180, %r9d            # imm = 0x180
xorl %eax, %eax
callq 0xc007
movq 0x8(%rsp), %r13
movq %r13, %rdi
callq 0x273f1
cmpq $0x2, %r15
jne 0x27d15
movq %rax, %r12
leaq 0xaa1a6(%rip), %rsi     # 0xd26b6
movq %r13, %rdi
callq 0x276e6
testq %rax, %rax
je 0x28608
leaq 0xa3c31(%rip), %rsi     # 0xcc159
leaq 0xaa192(%rip), %rdx     # 0xd26c1
leaq 0xaa259(%rip), %rcx     # 0xd278f
leaq 0xa9f41(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x182, %r9d            # imm = 0x182
jmp 0x27d0e
leaq 0xa3c07(%rip), %rsi     # 0xcc159
leaq 0xaa646(%rip), %rdx     # 0xd2b9f
leaq 0xaa22f(%rip), %rcx     # 0xd278f
leaq 0xa9f17(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x172, %r9d            # imm = 0x172
jmp 0x27d0e
movq 0x105a3c(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa1ae0(%rip), %rsi     # 0xca066
leaq 0xaa257(%rip), %rdx     # 0xd27e4
leaq 0xaa1fb(%rip), %rcx     # 0xd278f
leaq 0xa9ee3(%rip), %r8      # 0xd247e
movl $0x136, %r9d            # imm = 0x136
jmp 0x28413
movq 0x105a0b(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa1aaf(%rip), %rsi     # 0xca066
leaq 0xaa254(%rip), %rdx     # 0xd2812
leaq 0xaa1ca(%rip), %rcx     # 0xd278f
leaq 0xa9eb2(%rip), %r8      # 0xd247e
movl $0x137, %r9d            # imm = 0x137
jmp 0x28413
movq 0x1059da(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa1a7e(%rip), %rsi     # 0xca066
leaq 0xaa251(%rip), %rdx     # 0xd2840
leaq 0xaa199(%rip), %rcx     # 0xd278f
leaq 0xa9e81(%rip), %r8      # 0xd247e
movl $0x138, %r9d            # imm = 0x138
jmp 0x28413
subq %r12, %r14
cmpq $0x10, %r14
jne 0x2869c
movq 0x8(%rsp), %rdi
callq 0x27a73
leaq 0xaa066(%rip), %r14     # 0xd268c
leaq 0xb28d4(%rip), %r15     # 0xdaf01
movq %r14, %rdi
movq %r15, %rsi
callq 0x26f28
leaq 0x10(%rsp), %r12
movq %rax, (%r12)
leaq 0xaa052(%rip), %rsi     # 0xd269a
leaq 0xb1bd8(%rip), %rdx     # 0xda227
movq %r12, %rdi
callq 0x27035
movq (%r12), %rdi
movq %r14, %rsi
callq 0x276e6
movq %rax, %rdi
movq %r15, %rsi
callq 0xb880
testl %eax, %eax
je 0x286c6
leaq 0xa3ae0(%rip), %rsi     # 0xcc159
leaq 0xaa5db(%rip), %rdx     # 0xd2c5b
leaq 0xaa108(%rip), %rcx     # 0xd278f
leaq 0xa9df0(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x18c, %r9d            # imm = 0x18C
jmp 0x28826
leaq 0xa3ab6(%rip), %rsi     # 0xcc159
leaq 0xaa565(%rip), %rdx     # 0xd2c0f
leaq 0xaa0de(%rip), %rcx     # 0xd278f
leaq 0xa9dc6(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x184, %r9d            # imm = 0x184
jmp 0x27d0e
movq 0x10(%rsp), %rdi
leaq 0xa9fc8(%rip), %rsi     # 0xd269a
callq 0x276e6
leaq 0xb1b49(%rip), %rsi     # 0xda227
movq %rax, %rdi
callq 0xb880
testl %eax, %eax
je 0x28714
leaq 0xa3a68(%rip), %rsi     # 0xcc159
leaq 0xaa596(%rip), %rdx     # 0xd2c8e
leaq 0xaa090(%rip), %rcx     # 0xd278f
leaq 0xa9d78(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x18d, %r9d            # imm = 0x18D
jmp 0x28826
movq 0x10(%rsp), %rdi
leaq 0xb1b07(%rip), %rsi     # 0xda227
callq 0x276e6
testq %rax, %rax
je 0x287eb
leaq 0xa3a24(%rip), %rsi     # 0xcc159
leaq 0xaa585(%rip), %rdx     # 0xd2cc1
leaq 0xaa04c(%rip), %rcx     # 0xd278f
leaq 0xa9d34(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x18e, %r9d            # imm = 0x18E
jmp 0x28826
movq 0x105859(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa18fd(%rip), %rsi     # 0xca066
leaq 0xaa258(%rip), %rdx     # 0xd29c8
leaq 0xaa018(%rip), %rcx     # 0xd278f
leaq 0xa9d00(%rip), %r8      # 0xd247e
movl $0x146, %r9d            # imm = 0x146
jmp 0x28413
movq 0x105828(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa18cc(%rip), %rsi     # 0xca066
leaq 0xaa24f(%rip), %rdx     # 0xd29f0
leaq 0xa9fe7(%rip), %rcx     # 0xd278f
leaq 0xa9ccf(%rip), %r8      # 0xd247e
movl $0x147, %r9d            # imm = 0x147
jmp 0x28413
movq 0x1057f7(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa189b(%rip), %rsi     # 0xca066
leaq 0xaa246(%rip), %rdx     # 0xd2a18
leaq 0xa9fb6(%rip), %rcx     # 0xd278f
leaq 0xa9c9e(%rip), %r8      # 0xd247e
movl $0x148, %r9d            # imm = 0x148
jmp 0x28413
movq 0x10(%rsp), %rdi
leaq 0xb270a(%rip), %rsi     # 0xdaf01
callq 0x276e6
testq %rax, %rax
je 0x2883f
leaq 0xa3951(%rip), %rsi     # 0xcc159
leaq 0xaa4d4(%rip), %rdx     # 0xd2ce3
leaq 0xa9f79(%rip), %rcx     # 0xd278f
leaq 0xa9c61(%rip), %r8      # 0xd247e
movq %rbx, %rdi
movl $0x18f, %r9d            # imm = 0x18F
xorl %eax, %eax
callq 0xc007
pushq $-0x1
popq %rbx
movq 0x10(%rsp), %rdi
callq 0x27a73
jmp 0x27d22
xorl %ebx, %ebx
jmp 0x28830
movq 0x10576e(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa1812(%rip), %rsi     # 0xca066
leaq 0xaa290(%rip), %rdx     # 0xd2aeb
leaq 0xa9f2d(%rip), %rcx     # 0xd278f
leaq 0xa9c15(%rip), %r8      # 0xd247e
movl $0x15b, %r9d            # imm = 0x15B
jmp 0x28413
movq 0x10573d(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa17e1(%rip), %rsi     # 0xca066
leaq 0xaa2ef(%rip), %rdx     # 0xd2b7b
leaq 0xa9efc(%rip), %rcx     # 0xd278f
leaq 0xa9be4(%rip), %r8      # 0xd247e
movl $0x16d, %r9d            # imm = 0x16D
jmp 0x28413
movq 0x10570c(%rip), %rax    # 0x12dfb8
movq (%rax), %rdi
leaq 0xa17b0(%rip), %rsi     # 0xca066
leaq 0xaa32e(%rip), %rdx     # 0xd2beb
leaq 0xa9ecb(%rip), %rcx     # 0xd278f
leaq 0xa9bb3(%rip), %r8      # 0xd247e
movl $0x17f, %r9d            # imm = 0x17F
jmp 0x28413