// File: /workspace/github_c_makefile_star2_O3/genometools[P]genometools/src/annotationsketch/style.c
// Function: gt_style_unit_test
int gt_style_unit_test(GtError *err)
{
  int had_err = 0;
  GtStyle *sty = NULL, *new_sty = NULL;
  bool val = false;
  GtError *testerr;
  GtStr *test1      = gt_str_new_cstr("mRNA"),
        *str        = gt_str_new(),
        *sty_buffer = gt_str_new();
  GtColor col1, col2, GT_UNUSED col, defcol, tmpcol;
  double num = 10.0;
  gt_error_check(err);

  /* example colors */
  col1.red=.1;col1.green=.2;col1.blue=.3;col1.alpha=0.5;
  col2.red=.4;col2.green=.5;col2.blue=.6;col2.alpha=0.5;
  col.red=1.0;col.green=1.0;col.blue=1.0;col.alpha=0.5;
  defcol.red=.5;defcol.green=.5;defcol.blue=.5;defcol.alpha=0.5;

  testerr = gt_error_new();

  /* instantiate new style object */
  gt_ensure((sty = gt_style_new(testerr)) != NULL);
  gt_ensure(!gt_error_is_set(testerr));

  /* test safe/unsafe mode switching */
  gt_ensure(!gt_style_is_unsafe(sty));
  gt_style_unsafe_mode(sty);
  gt_ensure(gt_style_is_unsafe(sty));
  gt_style_safe_mode(sty);
  gt_ensure(!gt_style_is_unsafe(sty));

  /* at the beginning, all values are defaults, since nothing is defined */
  gt_ensure(gt_style_get_color(sty, "exon", "fill", &tmpcol, NULL,
                                     testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure(gt_color_equals(&tmpcol, &defcol));
  gt_ensure(!gt_error_is_set(testerr));
  gt_ensure(gt_style_get_color(sty, "cds", "fill", &tmpcol, NULL,
                                     testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure(gt_color_equals(&tmpcol, &defcol));
  gt_ensure(!gt_error_is_set(testerr));
  gt_ensure(gt_style_get_color(sty, "foo", "fill", &tmpcol, NULL,
                                     testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure(gt_color_equals(&tmpcol, &defcol));
  gt_ensure(!gt_error_is_set(testerr));
  gt_ensure(gt_style_get_num(sty, "format", "margins", &num, NULL,
                                   testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure(!gt_error_is_set(testerr));
  gt_ensure(num == MARGINS_DEFAULT);
  gt_ensure(gt_style_get_bool(sty, "exon", "collapse_to_parent", &val,
                                    NULL, testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure(!gt_error_is_set(testerr));
  gt_ensure(!val);

  /* change some values... */
  (void) gt_style_set_color(sty, "exon", "fill", &col1);
  gt_style_set_num(sty, "format", "margins", 11.0);
  gt_style_set_num(sty, "format", "foo", 2.0);

  /* is it saved correctly? */
  (void) gt_style_get_color(sty, "exon", "fill", &tmpcol, NULL, testerr);
  gt_ensure(!gt_color_equals(&tmpcol, &defcol));
  gt_ensure(gt_color_equals(&tmpcol, &col1));
  gt_ensure(gt_style_get_num(sty, "format", "margins", &num, NULL,
                                   testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure(num == 11.0);
  gt_ensure(!gt_error_is_set(testerr));
  gt_ensure(gt_style_get_num(sty, "format", "foo", &num, NULL,
                                   testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure(num == 2.0);
  gt_ensure(!gt_error_is_set(testerr));

  /* create a new color definition */
  gt_style_set_color(sty, "foo", "fill", &col2);
  gt_style_set_str(sty, "bar", "baz", test1);

  /* is it saved correctly? */
  gt_ensure(gt_style_get_color(sty, "foo", "fill", &tmpcol, NULL,
                                     testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure(!gt_color_equals(&tmpcol, &defcol));
  gt_ensure(gt_color_equals(&tmpcol, &col2));
  gt_str_reset(str);
  gt_ensure(gt_style_get_str(sty, "bar", "baz", str, NULL,
                                   testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure((strcmp(gt_str_get(str),"")!=0));
  gt_ensure((gt_str_cmp(str,test1)==0));
  gt_str_reset(str);
  gt_ensure(gt_style_get_str(sty, "bar", "test", str, NULL,
                                   testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure((strcmp(gt_str_get(str),"")==0));

  /* clone a GtStyle object */
  new_sty = gt_style_clone(sty, testerr);
  gt_ensure(new_sty  != NULL);
  gt_ensure(!gt_error_is_set(testerr));

  /* check again */
  gt_ensure(gt_style_get_color(new_sty, "foo", "fill", &tmpcol, NULL,
                                     testerr) == 0);
  gt_ensure(!gt_color_equals(&tmpcol, &defcol));
  gt_ensure(gt_color_equals(&tmpcol, &col2));
  gt_str_reset(str);
  gt_ensure(gt_style_get_str(new_sty, "bar", "baz", str, NULL,
                                   testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure((strcmp(gt_str_get(str),"")!=0));
  gt_ensure((gt_str_cmp(str,test1)==0));
  gt_str_reset(str);
  gt_ensure(gt_style_get_str(new_sty, "bar", "test", str, NULL,
                                   testerr) != GT_STYLE_QUERY_ERROR);
  gt_ensure((strcmp(gt_str_get(str),"")==0));

  /* mem cleanup */
  gt_error_delete(testerr);
  gt_str_delete(test1);
  gt_str_delete(str);
  gt_str_delete(sty_buffer);
  gt_style_delete(sty);
  gt_style_delete(new_sty);

  return had_err;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xb8, %rsp
movq %rdi, %rbp
movb $0x0, 0x17(%rsp)
leaq 0x90c6d(%rip), %rdi     # 0xe4c2a
callq 0x3b785
movq %rax, 0x8(%rsp)
callq 0x3b728
movq %rax, %r14
callq 0x3b728
movq %rax, %rbx
movabsq $0x4024000000000000, %rax # imm = 0x4024000000000000
movq %rax, 0x18(%rsp)
testq %rbp, %rbp
je 0x53ffb
movq %rbp, %rdi
callq 0x34fea
testb %al, %al
jne 0x547b2
movaps 0x97e3e(%rip), %xmm0    # 0xebe40
movaps %xmm0, 0x90(%rsp)
movaps 0x97e3f(%rip), %xmm0    # 0xebe50
movaps %xmm0, 0xa0(%rsp)
movaps 0x97e40(%rip), %xmm0    # 0xebe60
movaps %xmm0, 0x70(%rsp)
movaps 0x97e44(%rip), %xmm0    # 0xebe70
movaps %xmm0, 0x80(%rsp)
movapd 0x97df4(%rip), %xmm0    # 0xebe30
movapd %xmm0, 0x40(%rsp)
movapd %xmm0, 0x50(%rsp)
callq 0x34f04
movq %rax, %r13
movq %rax, %rdi
callq 0x52810
movq %rax, %r12
testq %rax, %rax
movq %rbx, 0x68(%rsp)
je 0x54098
movq %r13, %rdi
callq 0x34fea
testb %al, %al
je 0x540bf
leaq 0x8f0e1(%rip), %rsi     # 0xe3159
leaq 0x90a47(%rip), %rdx     # 0xe4ac6
leaq 0x98207(%rip), %rcx     # 0xec28d
leaq 0x97e18(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x355, %r9d            # imm = 0x355
jmp 0x540f4
leaq 0x8f0ba(%rip), %rsi     # 0xe3159
leaq 0x981fa(%rip), %rdx     # 0xec2a0
leaq 0x981e0(%rip), %rcx     # 0xec28d
leaq 0x97df1(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x354, %r9d            # imm = 0x354
jmp 0x540f4
movq %r12, %rdi
callq 0x52b71
testb %al, %al
je 0x54239
leaq 0x8f083(%rip), %rsi     # 0xe3159
leaq 0x981e9(%rip), %rdx     # 0xec2c6
leaq 0x981a9(%rip), %rcx     # 0xec28d
leaq 0x97dba(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x358, %r9d            # imm = 0x358
xorl %eax, %eax
callq 0x34f1f
movq %r12, %rdi
callq 0x52abc
movq %r12, %rdi
callq 0x52af0
leaq 0xa87e0(%rip), %rbx     # 0xfc8f2
leaq 0x9d3a6(%rip), %r15     # 0xf14bf
leaq 0x90(%rsp), %rcx
movq %r12, %rdi
movq %rbx, %rsi
movq %r15, %rdx
callq 0x531b4
leaq 0x8d060(%rip), %rbp     # 0xe1196
leaq 0x972fb(%rip), %rdx     # 0xeb438
movsd 0x97d43(%rip), %xmm0    # 0xebe88
movq %r12, %rdi
movq %rbp, %rsi
callq 0x53956
leaq 0x9da8a(%rip), %rdx     # 0xf1be1
movsd 0x97d31(%rip), %xmm0    # 0xebe90
movq %r12, %rdi
movq %rbp, %rsi
callq 0x53956
movq %r13, (%rsp)
leaq 0x20(%rsp), %rcx
movq %r12, %rdi
movq %rbx, %rsi
movq %r15, %rdx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x52d8f
leaq 0x9da53(%rip), %rsi     # 0xf1be1
leaq 0x9d32a(%rip), %rdx     # 0xf14bf
leaq 0x70(%rsp), %rcx
movq %r12, %rdi
callq 0x531b4
leaq 0x9d0ce(%rip), %rsi     # 0xf1277
leaq 0x9c090(%rip), %rdx     # 0xf0240
movq %r12, %rdi
movq 0x8(%rsp), %rbp
movq %rbp, %rcx
callq 0x5364a
movq %r14, %rdi
callq 0x3bbee
movq %r14, %rdi
callq 0x3bbee
movq %r12, %rdi
movq %r13, %rsi
callq 0x53eb7
movq %rax, %r15
movq %r14, %rdi
callq 0x3bbee
movq %r14, %rdi
callq 0x3bbee
movl $0xffffffff, %ebx       # imm = 0xFFFFFFFF
movq %r13, %rdi
callq 0x35085
movq %rbp, %rdi
callq 0x3c87b
movq %r14, %rdi
callq 0x3c87b
movq 0x68(%rsp), %rdi
callq 0x3c87b
movq %r12, %rdi
callq 0x53f50
movq %r15, %rdi
callq 0x53f50
movl %ebx, %eax
addq $0xb8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %r12, %rdi
callq 0x52abc
movq %r12, %rdi
callq 0x52b71
testb %al, %al
je 0x5428b
movq %r12, %rdi
callq 0x52af0
movq %r12, %rdi
callq 0x52b71
testb %al, %al
je 0x542bc
leaq 0x8eef1(%rip), %rsi     # 0xe3159
leaq 0x98057(%rip), %rdx     # 0xec2c6
leaq 0x98017(%rip), %rcx     # 0xec28d
leaq 0x97c28(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x35c, %r9d            # imm = 0x35C
jmp 0x54378
leaq 0x8eec7(%rip), %rsi     # 0xe3159
leaq 0x9802e(%rip), %rdx     # 0xec2c7
leaq 0x97fed(%rip), %rcx     # 0xec28d
leaq 0x97bfe(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x35a, %r9d            # imm = 0x35A
xorl %eax, %eax
callq 0x34f1f
jmp 0x54103
movq %r13, (%rsp)
leaq 0xa862b(%rip), %rsi     # 0xfc8f2
leaq 0x9d1f1(%rip), %rdx     # 0xf14bf
leaq 0x20(%rsp), %rcx
movq %r12, %rdi
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x52d8f
cmpl $0x2, %eax
jne 0x5430d
leaq 0x8ee6c(%rip), %rsi     # 0xe3159
leaq 0x97feb(%rip), %rdx     # 0xec2df
leaq 0x97f92(%rip), %rcx     # 0xec28d
leaq 0x97ba3(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x360, %r9d            # imm = 0x360
jmp 0x54378
leaq 0x20(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x8dc15
testb %al, %al
je 0x54353
movq %r13, %rdi
callq 0x34fea
testb %al, %al
je 0x54384
leaq 0x8ee26(%rip), %rsi     # 0xe3159
leaq 0x9078c(%rip), %rdx     # 0xe4ac6
leaq 0x97f4c(%rip), %rcx     # 0xec28d
leaq 0x97b5d(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x362, %r9d            # imm = 0x362
jmp 0x54378
leaq 0x8edff(%rip), %rsi     # 0xe3159
leaq 0x9815b(%rip), %rdx     # 0xec4bc
leaq 0x97f25(%rip), %rcx     # 0xec28d
leaq 0x97b36(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x361, %r9d            # imm = 0x361
xorl %eax, %eax
callq 0x34f1f
jmp 0x5410b
movq %r13, (%rsp)
leaq 0x913fa(%rip), %rsi     # 0xe5789
leaq 0x9d129(%rip), %rdx     # 0xf14bf
leaq 0x20(%rsp), %rcx
movq %r12, %rdi
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x52d8f
cmpl $0x2, %eax
jne 0x543d5
leaq 0x8eda4(%rip), %rsi     # 0xe3159
leaq 0x97f7b(%rip), %rdx     # 0xec337
leaq 0x97eca(%rip), %rcx     # 0xec28d
leaq 0x97adb(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x364, %r9d            # imm = 0x364
jmp 0x54378
leaq 0x20(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x8dc15
testb %al, %al
je 0x5441e
movq %r13, %rdi
callq 0x34fea
testb %al, %al
je 0x54448
leaq 0x8ed5e(%rip), %rsi     # 0xe3159
leaq 0x906c4(%rip), %rdx     # 0xe4ac6
leaq 0x97e84(%rip), %rcx     # 0xec28d
leaq 0x97a95(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x366, %r9d            # imm = 0x366
jmp 0x54378
leaq 0x8ed34(%rip), %rsi     # 0xe3159
leaq 0x98090(%rip), %rdx     # 0xec4bc
leaq 0x97e5a(%rip), %rcx     # 0xec28d
leaq 0x97a6b(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x365, %r9d            # imm = 0x365
jmp 0x54378
movq %r13, (%rsp)
leaq 0x9d78e(%rip), %rsi     # 0xf1be1
leaq 0x9d065(%rip), %rdx     # 0xf14bf
leaq 0x20(%rsp), %rcx
movq %r12, %rdi
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x52d8f
cmpl $0x2, %eax
jne 0x5449c
leaq 0x8ece0(%rip), %rsi     # 0xe3159
leaq 0x97f0e(%rip), %rdx     # 0xec38e
leaq 0x97e06(%rip), %rcx     # 0xec28d
leaq 0x97a17(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x368, %r9d            # imm = 0x368
jmp 0x54378
leaq 0x20(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x8dc15
testb %al, %al
je 0x544e5
movq %r13, %rdi
callq 0x34fea
testb %al, %al
je 0x5450f
leaq 0x8ec97(%rip), %rsi     # 0xe3159
leaq 0x905fd(%rip), %rdx     # 0xe4ac6
leaq 0x97dbd(%rip), %rcx     # 0xec28d
leaq 0x979ce(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x36a, %r9d            # imm = 0x36A
jmp 0x54378
leaq 0x8ec6d(%rip), %rsi     # 0xe3159
leaq 0x97fc9(%rip), %rdx     # 0xec4bc
leaq 0x97d93(%rip), %rcx     # 0xec28d
leaq 0x979a4(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x369, %r9d            # imm = 0x369
jmp 0x54378
movq %r13, (%rsp)
leaq 0x8cc7c(%rip), %rsi     # 0xe1196
leaq 0x96f17(%rip), %rdx     # 0xeb438
leaq 0x18(%rsp), %rcx
movq %r12, %rdi
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x53720
cmpl $0x2, %eax
jne 0x54563
leaq 0x8ec19(%rip), %rsi     # 0xe3159
leaq 0x97e9e(%rip), %rdx     # 0xec3e5
leaq 0x97d3f(%rip), %rcx     # 0xec28d
leaq 0x97950(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x36c, %r9d            # imm = 0x36C
jmp 0x54378
movq %r13, %rdi
callq 0x34fea
testb %al, %al
je 0x54599
leaq 0x8ebe3(%rip), %rsi     # 0xe3159
leaq 0x90549(%rip), %rdx     # 0xe4ac6
leaq 0x97d09(%rip), %rcx     # 0xec28d
leaq 0x9791a(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x36d, %r9d            # imm = 0x36D
jmp 0x54378
movsd 0x18(%rsp), %xmm0
ucomisd 0x978d9(%rip), %xmm0    # 0xebe80
jne 0x545ff
jp 0x545ff
movq %r13, (%rsp)
leaq 0xa833c(%rip), %rsi     # 0xfc8f2
leaq 0x963a4(%rip), %rdx     # 0xea961
leaq 0x17(%rsp), %rcx
movq %r12, %rdi
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x539f7
cmpl $0x2, %eax
jne 0x54629
leaq 0x8eb7d(%rip), %rsi     # 0xe3159
leaq 0x97e71(%rip), %rdx     # 0xec454
leaq 0x97ca3(%rip), %rcx     # 0xec28d
leaq 0x978b4(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x370, %r9d            # imm = 0x370
jmp 0x54378
leaq 0x8eb53(%rip), %rsi     # 0xe3159
leaq 0x97e30(%rip), %rdx     # 0xec43d
leaq 0x97c79(%rip), %rcx     # 0xec28d
leaq 0x9788a(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x36e, %r9d            # imm = 0x36E
jmp 0x54378
movq %r13, %rdi
callq 0x34fea
testb %al, %al
je 0x5465f
leaq 0x8eb1d(%rip), %rsi     # 0xe3159
leaq 0x90483(%rip), %rdx     # 0xe4ac6
leaq 0x97c43(%rip), %rcx     # 0xec28d
leaq 0x97854(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x371, %r9d            # imm = 0x371
jmp 0x54378
cmpb $0x1, 0x17(%rsp)
jne 0x54690
leaq 0x8eaec(%rip), %rsi     # 0xe3159
leaq 0x97e42(%rip), %rdx     # 0xec4b6
leaq 0x97c12(%rip), %rcx     # 0xec28d
leaq 0x97823(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x372, %r9d            # imm = 0x372
jmp 0x54378
leaq 0xa825b(%rip), %rsi     # 0xfc8f2
leaq 0x9ce21(%rip), %r15     # 0xf14bf
leaq 0x90(%rsp), %rcx
movq %r12, %rdi
movq %r15, %rdx
callq 0x531b4
leaq 0x8cade(%rip), %rbx     # 0xe1196
leaq 0x96d79(%rip), %rdx     # 0xeb438
movsd 0x977c1(%rip), %xmm0    # 0xebe88
movq %r12, %rdi
movq %rbx, %rsi
callq 0x53956
leaq 0x9d508(%rip), %rdx     # 0xf1be1
movsd 0x977af(%rip), %xmm0    # 0xebe90
movq %r12, %rdi
movq %rbx, %rsi
callq 0x53956
movq %r13, (%rsp)
leaq 0x20(%rsp), %rbx
movq %r12, %rdi
leaq 0xa81f3(%rip), %rsi     # 0xfc8f2
movq %r15, %rdx
movq %rbx, %rcx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x52d8f
leaq 0x40(%rsp), %rsi
movq %rbx, %rdi
callq 0x8dc15
testb %al, %al
je 0x5474b
leaq 0x8ea31(%rip), %rsi     # 0xe3159
leaq 0x97d8c(%rip), %rdx     # 0xec4bb
leaq 0x97b57(%rip), %rcx     # 0xec28d
leaq 0x97768(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x37b, %r9d            # imm = 0x37B
jmp 0x547dc
leaq 0x20(%rsp), %rdi
leaq 0x90(%rsp), %rsi
callq 0x8dc15
testb %al, %al
je 0x547b7
movq %r13, (%rsp)
leaq 0x8ca2a(%rip), %rsi     # 0xe1196
leaq 0x96cc5(%rip), %rdx     # 0xeb438
leaq 0x18(%rsp), %rcx
movq %r12, %rdi
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x53720
cmpl $0x2, %eax
jne 0x547e8
leaq 0x8e9c7(%rip), %rsi     # 0xe3159
leaq 0x97c4c(%rip), %rdx     # 0xec3e5
leaq 0x97aed(%rip), %rcx     # 0xec28d
leaq 0x976fe(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x37e, %r9d            # imm = 0x37E
jmp 0x547dc
callq 0x1868c
leaq 0x8e99b(%rip), %rsi     # 0xe3159
leaq 0x97d19(%rip), %rdx     # 0xec4de
leaq 0x97ac1(%rip), %rcx     # 0xec28d
leaq 0x976d2(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x37c, %r9d            # imm = 0x37C
xorl %eax, %eax
callq 0x34f1f
jmp 0x54187
movsd 0x18(%rsp), %xmm0
ucomisd 0x97692(%rip), %xmm0    # 0xebe88
jne 0x5482d
jp 0x5482d
movq %r13, %rdi
callq 0x34fea
testb %al, %al
je 0x54854
leaq 0x8e94c(%rip), %rsi     # 0xe3159
leaq 0x902b2(%rip), %rdx     # 0xe4ac6
leaq 0x97a72(%rip), %rcx     # 0xec28d
leaq 0x97683(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x380, %r9d            # imm = 0x380
jmp 0x547dc
leaq 0x8e925(%rip), %rsi     # 0xe3159
leaq 0x97cc3(%rip), %rdx     # 0xec4fe
leaq 0x97a4b(%rip), %rcx     # 0xec28d
leaq 0x9765c(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x37f, %r9d            # imm = 0x37F
jmp 0x547dc
movq %r13, (%rsp)
leaq 0x8c937(%rip), %rsi     # 0xe1196
leaq 0x9d37b(%rip), %rdx     # 0xf1be1
leaq 0x18(%rsp), %rcx
movq %r12, %rdi
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x53720
cmpl $0x2, %eax
jne 0x548a8
leaq 0x8e8d4(%rip), %rsi     # 0xe3159
leaq 0x97c7e(%rip), %rdx     # 0xec50a
leaq 0x979fa(%rip), %rcx     # 0xec28d
leaq 0x9760b(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x382, %r9d            # imm = 0x382
jmp 0x547dc
movsd 0x18(%rsp), %xmm0
ucomisd 0x975da(%rip), %xmm0    # 0xebe90
jne 0x548f0
jp 0x548f0
movq %r13, %rdi
callq 0x34fea
testb %al, %al
je 0x5491a
leaq 0x8e88c(%rip), %rsi     # 0xe3159
leaq 0x901f2(%rip), %rdx     # 0xe4ac6
leaq 0x979b2(%rip), %rcx     # 0xec28d
leaq 0x975c3(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x384, %r9d            # imm = 0x384
jmp 0x547dc
leaq 0x8e862(%rip), %rsi     # 0xe3159
leaq 0x97c60(%rip), %rdx     # 0xec55e
leaq 0x97988(%rip), %rcx     # 0xec28d
leaq 0x97599(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x383, %r9d            # imm = 0x383
jmp 0x547dc
leaq 0x9d2c0(%rip), %rbx     # 0xf1be1
leaq 0x9cb97(%rip), %r15     # 0xf14bf
leaq 0x70(%rsp), %rcx
movq %r12, %rdi
movq %rbx, %rsi
movq %r15, %rdx
callq 0x531b4
leaq 0x9c935(%rip), %rsi     # 0xf1277
leaq 0x9b8f7(%rip), %rdx     # 0xf0240
movq %r12, %rdi
movq 0x8(%rsp), %rcx
callq 0x5364a
movq %r13, (%rsp)
leaq 0x20(%rsp), %rcx
movq %r12, %rdi
movq %rbx, %rsi
movq %r15, %rdx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x52d8f
cmpl $0x2, %eax
jne 0x549a2
leaq 0x8e7da(%rip), %rsi     # 0xe3159
leaq 0x97a08(%rip), %rdx     # 0xec38e
leaq 0x97900(%rip), %rcx     # 0xec28d
leaq 0x97511(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x38c, %r9d            # imm = 0x38C
jmp 0x54a71
leaq 0x20(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x8dc15
testb %al, %al
je 0x549df
leaq 0x8e79d(%rip), %rsi     # 0xe3159
leaq 0x97af8(%rip), %rdx     # 0xec4bb
leaq 0x978c3(%rip), %rcx     # 0xec28d
leaq 0x974d4(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x38d, %r9d            # imm = 0x38D
jmp 0x54a71
leaq 0x20(%rsp), %rdi
leaq 0x70(%rsp), %rsi
callq 0x8dc15
testb %al, %al
je 0x54a4c
movq %r14, %rdi
callq 0x3bbee
movq %r13, (%rsp)
leaq 0x9c872(%rip), %rsi     # 0xf1277
leaq 0x9b834(%rip), %rdx     # 0xf0240
movq %r12, %rdi
movq %r14, %rcx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x53433
cmpl $0x2, %eax
jne 0x54a82
leaq 0x8e730(%rip), %rsi     # 0xe3159
leaq 0x97b59(%rip), %rdx     # 0xec589
leaq 0x97856(%rip), %rcx     # 0xec28d
leaq 0x97467(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x391, %r9d            # imm = 0x391
jmp 0x54aec
leaq 0x8e706(%rip), %rsi     # 0xe3159
leaq 0x97b0f(%rip), %rdx     # 0xec569
leaq 0x9782c(%rip), %rcx     # 0xec28d
leaq 0x9743d(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x38e, %r9d            # imm = 0x38E
xorl %eax, %eax
callq 0x34f1f
movq 0x8(%rsp), %rbp
jmp 0x541c0
movq %r14, %rdi
callq 0x3bb5d
cmpb $0x0, (%rax)
je 0x54ac7
movq %r14, %rdi
movq 0x8(%rsp), %rsi
callq 0x3bc02
testl %eax, %eax
je 0x54afd
leaq 0x8e6b2(%rip), %rsi     # 0xe3159
leaq 0x97b4b(%rip), %rdx     # 0xec5f9
leaq 0x977d8(%rip), %rcx     # 0xec28d
leaq 0x973e9(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x393, %r9d            # imm = 0x393
jmp 0x54aec
leaq 0x8e68b(%rip), %rsi     # 0xe3159
leaq 0x97b04(%rip), %rdx     # 0xec5d9
leaq 0x977b1(%rip), %rcx     # 0xec28d
leaq 0x973c2(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x392, %r9d            # imm = 0x392
xorl %eax, %eax
callq 0x34f1f
movq 0x8(%rsp), %rbp
jmp 0x541c8
movq %r14, %rdi
callq 0x3bbee
movq %r13, (%rsp)
leaq 0x9c767(%rip), %rsi     # 0xf1277
leaq 0x8cb6b(%rip), %rdx     # 0xe1682
movq %r12, %rdi
movq %r14, %rcx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x53433
cmpl $0x2, %eax
jne 0x54b54
leaq 0x8e625(%rip), %rsi     # 0xe3159
leaq 0x97ad9(%rip), %rdx     # 0xec614
leaq 0x9774b(%rip), %rcx     # 0xec28d
leaq 0x9735c(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x396, %r9d            # imm = 0x396
jmp 0x54b86
movq %r14, %rdi
callq 0x3bb5d
cmpb $0x0, (%rax)
je 0x54b97
leaq 0x8e5f1(%rip), %rsi     # 0xe3159
leaq 0x97af6(%rip), %rdx     # 0xec665
leaq 0x97717(%rip), %rcx     # 0xec28d
leaq 0x97328(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x397, %r9d            # imm = 0x397
xorl %eax, %eax
callq 0x34f1f
movq 0x8(%rsp), %rbp
jmp 0x541d0
movq %r12, %rdi
movq %r13, %rsi
callq 0x53eb7
testq %rax, %rax
je 0x54be0
movq %rax, %r15
movq %r13, %rdi
callq 0x34fea
testb %al, %al
je 0x54c0d
leaq 0x8e59c(%rip), %rsi     # 0xe3159
leaq 0x8ff02(%rip), %rdx     # 0xe4ac6
leaq 0x976c2(%rip), %rcx     # 0xec28d
leaq 0x972d3(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x39c, %r9d            # imm = 0x39C
jmp 0x54d2f
leaq 0x8e572(%rip), %rsi     # 0xe3159
leaq 0x97a97(%rip), %rdx     # 0xec685
leaq 0x97698(%rip), %rcx     # 0xec28d
leaq 0x972a9(%rip), %r8      # 0xebea5
xorl %r15d, %r15d
movq %rbp, %rdi
movl $0x39b, %r9d            # imm = 0x39B
jmp 0x54d2f
movq %r13, (%rsp)
leaq 0x9cfc9(%rip), %rsi     # 0xf1be1
leaq 0x9c8a0(%rip), %rdx     # 0xf14bf
leaq 0x20(%rsp), %rcx
movq %r15, %rdi
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x52d8f
testl %eax, %eax
je 0x54c60
leaq 0x8e51c(%rip), %rsi     # 0xe3159
leaq 0x97a51(%rip), %rdx     # 0xec695
leaq 0x97642(%rip), %rcx     # 0xec28d
leaq 0x97253(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x3a0, %r9d            # imm = 0x3A0
jmp 0x54d2f
leaq 0x20(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x8dc15
testb %al, %al
je 0x54c9d
leaq 0x8e4df(%rip), %rsi     # 0xe3159
leaq 0x9783a(%rip), %rdx     # 0xec4bb
leaq 0x97605(%rip), %rcx     # 0xec28d
leaq 0x97216(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x3a1, %r9d            # imm = 0x3A1
jmp 0x54d2f
leaq 0x20(%rsp), %rdi
leaq 0x70(%rsp), %rsi
callq 0x8dc15
testb %al, %al
je 0x54d0a
movq %r14, %rdi
callq 0x3bbee
movq %r13, (%rsp)
leaq 0x9c5b4(%rip), %rsi     # 0xf1277
leaq 0x9b576(%rip), %rdx     # 0xf0240
movq %r15, %rdi
movq %r14, %rcx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x53433
cmpl $0x2, %eax
jne 0x54d40
leaq 0x8e472(%rip), %rsi     # 0xe3159
leaq 0x979ef(%rip), %rdx     # 0xec6dd
leaq 0x97598(%rip), %rcx     # 0xec28d
leaq 0x971a9(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x3a5, %r9d            # imm = 0x3A5
jmp 0x54daa
leaq 0x8e448(%rip), %rsi     # 0xe3159
leaq 0x97851(%rip), %rdx     # 0xec569
leaq 0x9756e(%rip), %rcx     # 0xec28d
leaq 0x9717f(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x3a2, %r9d            # imm = 0x3A2
xorl %eax, %eax
callq 0x34f1f
movq 0x8(%rsp), %rbp
jmp 0x541de
movq %r14, %rdi
callq 0x3bb5d
cmpb $0x0, (%rax)
je 0x54d85
movq %r14, %rdi
movq 0x8(%rsp), %rsi
callq 0x3bc02
testl %eax, %eax
je 0x54dbb
leaq 0x8e3f4(%rip), %rsi     # 0xe3159
leaq 0x9788d(%rip), %rdx     # 0xec5f9
leaq 0x9751a(%rip), %rcx     # 0xec28d
leaq 0x9712b(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x3a7, %r9d            # imm = 0x3A7
jmp 0x54daa
leaq 0x8e3cd(%rip), %rsi     # 0xe3159
leaq 0x97846(%rip), %rdx     # 0xec5d9
leaq 0x974f3(%rip), %rcx     # 0xec28d
leaq 0x97104(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x3a6, %r9d            # imm = 0x3A6
xorl %eax, %eax
callq 0x34f1f
movq 0x8(%rsp), %rbp
jmp 0x541e6
movq %r14, %rdi
callq 0x3bbee
movq %r13, (%rsp)
leaq 0x9c4a9(%rip), %rsi     # 0xf1277
leaq 0x8c8ad(%rip), %rdx     # 0xe1682
xorl %ebx, %ebx
movq %r15, %rdi
movq %r14, %rcx
xorl %r8d, %r8d
xorl %r9d, %r9d
callq 0x53433
cmpl $0x2, %eax
jne 0x54e14
leaq 0x8e365(%rip), %rsi     # 0xe3159
leaq 0x97936(%rip), %rdx     # 0xec731
leaq 0x9748b(%rip), %rcx     # 0xec28d
leaq 0x9709c(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x3aa, %r9d            # imm = 0x3AA
jmp 0x54e46
movq %r14, %rdi
callq 0x3bb5d
cmpb $0x0, (%rax)
je 0x54e52
leaq 0x8e331(%rip), %rsi     # 0xe3159
leaq 0x97836(%rip), %rdx     # 0xec665
leaq 0x97457(%rip), %rcx     # 0xec28d
leaq 0x97068(%rip), %r8      # 0xebea5
movq %rbp, %rdi
movl $0x3ab, %r9d            # imm = 0x3AB
xorl %eax, %eax
callq 0x34f1f
movl $0xffffffff, %ebx       # imm = 0xFFFFFFFF
movq 0x8(%rsp), %rbp
jmp 0x541f3