// File: /workspace/github_cpp_makefile_star2_O1/jkingan[P]ladyheather/heathui.cpp
// Function: rpn_math()
int rpn_math()
{
double val;
ITYPE ival;

   // basic math
   if     (!strcmp(msg_field, "+"))     { val=rpn_top()+rpn[0]; rpn_set(val); }
   else if(!strcmp(msg_field, "*"))     { val=rpn_top()*rpn[0]; rpn_set(val); }
   else if(!strcmp(msg_field, "-"))     { val=rpn[1]-rpn[0]; rpn_top(); rpn_set(val); }
   else if(!strcmp(msg_field, "/"))     { val=rpn[1]/rpn[0]; rpn_top(); rpn_set(val); }
   else if(!strcmp(msg_field, "mod"))   { val=rpn_top(); rpn_set(fmod(rpn[0],val)); }
   else if(!strcmp(msg_field, "chs"))   { val=last_x; rpn_new(0.0-rpn[0]); last_x=val; }
   else if(!strcmp(msg_field, "inv"))   { rpn_new(1.0/rpn[0]); }
   else if(!strcmp(msg_field, "abs"))   { rpn_new(fabs(rpn[0])); }
   else if(!strcmp(msg_field, "int"))   { rpn_new((double) (int) rpn[0]); }
   else if(!strcmp(msg_field, "frac"))  { rpn_new(rpn[0]-(double) (int) rpn[0]); }
   else if(!strcmp(msg_field, "ctof"))  { rpn_new((rpn[0]*1.8)+32.0); }
   else if(!strcmp(msg_field, "ftoc"))  { rpn_new((rpn[0]-32.0)*(5.0/9.0)); }
   else if(!strcmp(msg_field, "ftom"))  { rpn_new(rpn[0]/FEET_PER_METER); }
   else if(!strcmp(msg_field, "mtof"))  { rpn_new(rpn[0]*FEET_PER_METER); }
   else if(!strcmp(msg_field, "max"))   { rpn_max(); }
   else if(!strcmp(msg_field, "min"))   { rpn_min(); }

   // logical operations
   else if(!strcmp(msg_field, "&"))     { ival=(ITYPE)rpn[1] & (ITYPE) rpn[0]; rpn_top(); rpn_set((double) ival); }
   else if(!strcmp(msg_field, "|"))     { ival=(ITYPE)rpn[1] | (ITYPE) rpn[0]; rpn_top(); rpn_set((double) ival); }
   else if(!strcmp(msg_field, "^"))     { ival=(ITYPE)rpn[1] ^ (ITYPE) rpn[0]; rpn_top(); rpn_set((double) ival); }
   else if(!strcmp(msg_field, "~"))     { ival=(ITYPE)rpn[0]; rpn_top(); rpn_set((double) (~ival)); }
   else if(!strncmp(msg_field, ">>",2)) { rpn_shr(); }
   else if(!strncmp(msg_field, "<<",2)) { rpn_shl(); }

   // trig
   else if(!strcmp(msg_field, "deg"))   { deg_mode = 180.0/PI; }
   else if(!strcmp(msg_field, "rad"))   { deg_mode = 1.0; }
   else if(!strcmp(msg_field, "sin"))   { rpn_new(sin(rpn[0]/deg_mode)); }
   else if(!strcmp(msg_field, "cos"))   { rpn_new(cos(rpn[0]/deg_mode)); }
   else if(!strcmp(msg_field, "tan"))   { rpn_new(tan(rpn[0]/deg_mode)); }
   else if(!strcmp(msg_field, "asin"))  { rpn_new(asin(rpn[0])*deg_mode); }
   else if(!strcmp(msg_field, "acos"))  { rpn_new(acos(rpn[0])*deg_mode); }
   else if(!strcmp(msg_field, "atan"))  { rpn_new(atan(rpn[0])*deg_mode); }
   else if(!strcmp(msg_field, "atan2")) { val=rpn_top(); rpn_set(atan2(rpn[0],val)*deg_mode); }
   else if(!strcmp(msg_field, "rtod"))  { rpn_new(rpn[0]*180.0/PI); }
   else if(!strcmp(msg_field, "dtor"))  { rpn_new(rpn[0]*PI/180.0); }
   else if(!strcmp(msg_field, "rtop"))  { rpn_rtop(); } // rectangular to polar
   else if(!strcmp(msg_field, "ptor"))  { rpn_ptor(); } // to polar rectangular
   else if(!strcmp(msg_field, "diag"))  { val=rpn_top(); val=sqrt(val*val+rpn[0]*rpn[0]); rpn_set(val); }
   else if(!strcmp(msg_field, "dist"))  { rpn_dist(); }
   else if(!strcmp(msg_field, "dms"))   { rpn_dms(); }
   else if(!strcmp(msg_field, "secs"))  { rpn_secs(); }
   else if(!strcmp(msg_field, "dec"))   { rpn_dec(); }
   else if(!strcmp(msg_field, "gcd"))   { rpn_gcd(); }
   else if(!strcmp(msg_field, "bearing"))   { rpn_bearing(); }

   // logs and powers
   else if(!strcmp(msg_field, "ln"))    { rpn_new(log(rpn[0])); }
   else if(!strcmp(msg_field, "log"))   { rpn_new(log10(rpn[0])); }
   else if(!strcmp(msg_field, "sqrt"))  { rpn_new(sqrt(rpn[0])); }
   else if(!strcmp(msg_field, "sqr"))   { rpn_new(rpn[0]*rpn[0]); }
   else if(!strcmp(msg_field, "exp"))   { rpn_new(pow(E_VALUE, rpn[0])); }
   else if(!strcmp(msg_field, "powe"))  { rpn_new(pow(E_VALUE, rpn[0])); }
   else if(!strcmp(msg_field, "pow10")) { rpn_new(pow(10.0, rpn[0])); }
   else if(!strcmp(msg_field, "pow"))   { val=rpn_top(); rpn_set(pow(rpn[0],val)); }
   else if(!strcmp(msg_field, "**"))    { val=rpn_top(); rpn_set(pow(rpn[0],val)); }

   // stack manipulation
   else if(!strcmp(msg_field,  "ex"))       { val=rpn[0]; rpn[0]=rpn[1]; rpn[1]=val; }
   else if(!strcmp(msg_field,  "ent"))      { rpn_push(rpn[0]); }
   else if(!strcmp(msg_field,  "enter"))    { rpn_push(rpn[0]); }
   else if(!strcmp(msg_field,  "clx"))      { rpn[0]=0.0; last_was_clx=1; }
   else if(!strcmp(msg_field,  "cls"))      { rpn_clear(1); }
   else if(!strcmp(msg_field,  "clm"))      { rpn_clear(2); }
   else if(!strcmp(msg_field,  "clear"))    { rpn_clear(3); }
   else if(!strncmp(msg_field, "drop", 4))  { rpn_drop(); }
   else if(!strncmp(msg_field, "roll", 4))  { rpn_down(); }
   else if(!strncmp(msg_field, "down", 4))  { rpn_down(); }
   else if(!strncmp(msg_field, "up", 2))    { rpn_up(); }
   else if(!strncmp(msg_field, "sto", 3))   { rpn_store(); }
   else if(!strncmp(msg_field, "rcl", 3))   { rpn_recall(); }
   else if(!strncmp(msg_field, "stack", 5)) { rpn_stack(); }
   else if(!strncmp(msg_field, "swap", 4))  { rpn_swap(); }
   else if(!strncmp(msg_field, "size", 4))  { rpn_size(); }

   // display formatting
   else if(!strncmp(msg_field, "fix", 3))   { hex_mode = 0;  eng_mode = 0; rpn_digits(1); }
   else if(!strncmp(msg_field, "sci", 3))   { hex_mode = 0;  eng_mode = 0; rpn_digits(-1); }
   else if(!strncmp(msg_field, "eng", 3))   { hex_mode = 0;  eng_mode = 1; rpn_digits(-1); }
   else if(!strncmp(msg_field, "hex", 3))   { hex_mode = 16; rpn_digits(1); }    // show stack top as hex integer
   else if(!strncmp(msg_field, "oct", 3))   { hex_mode = 8;  rpn_digits(1); }    // show stack top as octal integer
   else if(!strncmp(msg_field, "bin", 3))   { hex_mode = 2;  rpn_digits(1); }    // show stack top as octal integer
   else if(!strncmp(msg_field, "comma", 5)) { rpn_comma(); }    // format integer part with commas

   // user defined operations
   else if(!strcmp(msg_field,  "define"))   { rpn_define(0); }
   else if(!strcmp(msg_field,  "edit"))     { rpn_edit(); }
   else if(!strcmp(msg_field,  "savedefs")) { rpn_save(0); }
   else if(!strcmp(msg_field,  "saveall"))  { rpn_save(1); }
   else if(!strcmp(msg_field,  "run"))      { rpn_run(); }

   else if(!strcmp(msg_field,  "exit"))     { shut_down(987); }

   else return 0;  // unknown command

   return 1;  // command processed
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
pushq %rax
leaq 0x31638b(%rip), %rax    # 0x33ba40
movzwl (%rax), %ecx
addl $-0x2a, %ecx
cmpl $0x5, %ecx
ja 0x25832
leaq 0xe64c9(%rip), %rdx     # 0x10bb94
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
movl $0x0, 0x31d652(%rip)    # 0x342d30
movsd 0x31d28a(%rip), %xmm0   # 0x342970
movsd %xmm0, 0x31d64a(%rip)   # 0x342d38
movsd %xmm0, 0x31d632(%rip)   # 0x342d28
movl 0x144954(%rip), %edx    # 0x16a050
cmpl $0x2, %edx
jl 0x25724
decl %edx
shlq $0x3, %rdx
leaq 0x31d262(%rip), %rdi    # 0x342970
leaq 0x31d263(%rip), %rsi    # 0x342978
movsd %xmm0, -0x10(%rbp)
callq 0x9650
movsd -0x10(%rbp), %xmm0
mulsd 0x31d244(%rip), %xmm0   # 0x342970
jmp 0x2579c
movsd 0x31d242(%rip), %xmm1   # 0x342978
movsd 0x31d232(%rip), %xmm0   # 0x342970
subsd %xmm0, %xmm1
jmp 0x257c2
movl $0x0, 0x31d5e2(%rip)    # 0x342d30
movsd 0x31d21a(%rip), %xmm0   # 0x342970
movsd %xmm0, 0x31d5da(%rip)   # 0x342d38
movsd %xmm0, 0x31d5c2(%rip)   # 0x342d28
movl 0x1448e4(%rip), %edx    # 0x16a050
cmpl $0x2, %edx
jl 0x25794
decl %edx
shlq $0x3, %rdx
leaq 0x31d1f2(%rip), %rdi    # 0x342970
leaq 0x31d1f3(%rip), %rsi    # 0x342978
movsd %xmm0, -0x10(%rbp)
callq 0x9650
movsd -0x10(%rbp), %xmm0
addsd 0x31d1d4(%rip), %xmm0   # 0x342970
movsd %xmm0, 0x31d594(%rip)   # 0x342d38
movsd %xmm0, 0x31d1c4(%rip)   # 0x342970
jmp 0x2581a
movsd 0x31d1c2(%rip), %xmm1   # 0x342978
movsd 0x31d1b2(%rip), %xmm0   # 0x342970
divsd %xmm0, %xmm1
movl $0x0, 0x31d564(%rip)    # 0x342d30
movsd %xmm0, 0x31d564(%rip)   # 0x342d38
movsd %xmm0, 0x31d54c(%rip)   # 0x342d28
movl 0x14486e(%rip), %edx    # 0x16a050
cmpl $0x2, %edx
jl 0x2580a
decl %edx
shlq $0x3, %rdx
leaq 0x31d17c(%rip), %rdi    # 0x342970
leaq 0x31d17d(%rip), %rsi    # 0x342978
movsd %xmm1, -0x10(%rbp)
callq 0x9650
movsd -0x10(%rbp), %xmm1
movsd %xmm1, 0x31d526(%rip)   # 0x342d38
movsd %xmm1, 0x31d156(%rip)   # 0x342970
movl $0x0, 0x31d50c(%rip)    # 0x342d30
movl $0x1, %ebx
movl %ebx, %eax
addq $0x8, %rsp
popq %rbx
popq %rbp
retq
movl (%rax), %ecx
cmpl $0x736862, %ecx         # imm = 0x736862
jle 0x25876
cmpl $0x736863, %ecx         # imm = 0x736863
je 0x258a0
cmpl $0x746e69, %ecx         # imm = 0x746E69
je 0x258b1
cmpl $0x766e69, %ecx         # imm = 0x766E69
jne 0x25940
movsd 0x31d110(%rip), %xmm0   # 0x342970
movsd 0xe3808(%rip), %xmm1    # 0x109070
divsd %xmm0, %xmm1
movsd %xmm0, 0x31d4b4(%rip)   # 0x342d28
jmp 0x2580a
cmpl $0x646f6d, %ecx         # imm = 0x646F6D
je 0x258de
cmpl $0x736261, %ecx         # imm = 0x736261
jne 0x25940
movsd 0x31d0de(%rip), %xmm0   # 0x342970
movapd 0xe38e6(%rip), %xmm1    # 0x109180
andpd %xmm0, %xmm1
jmp 0x258c1
xorpd %xmm0, %xmm0
subsd 0x31d0c4(%rip), %xmm0   # 0x342970
jmp 0x2579c
movsd 0x31d0b7(%rip), %xmm0   # 0x342970
cvttpd2dq %xmm0, %xmm1
cvtdq2pd %xmm1, %xmm1
movsd %xmm0, 0x31d45f(%rip)   # 0x342d28
movlpd %xmm1, 0x31d467(%rip)   # 0x342d38
movlpd %xmm1, 0x31d097(%rip)   # 0x342970
jmp 0x2581a
movl $0x0, 0x31d448(%rip)    # 0x342d30
movsd 0x31d080(%rip), %xmm1   # 0x342970
movsd %xmm1, 0x31d440(%rip)   # 0x342d38
movsd %xmm1, 0x31d428(%rip)   # 0x342d28
movl 0x14474a(%rip), %edx    # 0x16a050
cmpl $0x2, %edx
jl 0x2592e
decl %edx
shlq $0x3, %rdx
leaq 0x31d058(%rip), %rdi    # 0x342970
leaq 0x31d059(%rip), %rsi    # 0x342978
movsd %xmm1, -0x10(%rbp)
callq 0x9650
movsd -0x10(%rbp), %xmm1
movsd 0x31d03a(%rip), %xmm0   # 0x342970
callq 0x94d0
jmp 0x2579c
movl $0x63617266, %edx       # imm = 0x63617266
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x259b9
movl $0x666f7463, %edx       # imm = 0x666F7463
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x259da
movl $0x636f7466, %edx       # imm = 0x636F7466
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x259fb
movl $0x6d6f7466, %edx       # imm = 0x6D6F7466
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x25a1c
movl $0x666f746d, %edx       # imm = 0x666F746D
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x25a39
cmpl $0x6e696d, %ecx         # imm = 0x6E696D
je 0x25a52
cmpl $0x78616d, %ecx         # imm = 0x78616D
jne 0x25a5c
callq 0x216e3
jmp 0x25824
movsd 0x31cfaf(%rip), %xmm0   # 0x342970
cvttpd2dq %xmm0, %xmm1
cvtdq2pd %xmm1, %xmm1
movsd %xmm0, 0x31d357(%rip)   # 0x342d28
subsd %xmm1, %xmm0
jmp 0x2579c
movsd 0x31cf8e(%rip), %xmm0   # 0x342970
movsd 0xe3696(%rip), %xmm1    # 0x109080
mulsd %xmm0, %xmm1
addsd 0xe36ba(%rip), %xmm1    # 0x1090b0
jmp 0x2586c
movsd 0x31cf6d(%rip), %xmm0   # 0x342970
movsd 0xe5e95(%rip), %xmm1    # 0x10b8a0
addsd %xmm0, %xmm1
mulsd 0xe5e91(%rip), %xmm1    # 0x10b8a8
jmp 0x2586c
movsd 0x31cf4c(%rip), %xmm0   # 0x342970
movsd %xmm0, 0x31d2fc(%rip)   # 0x342d28
divsd 0xe5e64(%rip), %xmm0    # 0x10b898
jmp 0x2579c
movsd 0x31cf2f(%rip), %xmm0   # 0x342970
movsd 0xe5e4f(%rip), %xmm1    # 0x10b898
mulsd %xmm0, %xmm1
jmp 0x2586c
callq 0x217b1
jmp 0x25824
movzwl (%rax), %ecx
cmpl $0x7d, %ecx
jg 0x25ae9
cmpl $0x26, %ecx
je 0x25b14
cmpl $0x5e, %ecx
je 0x25c33
cmpl $0x7c, %ecx
jne 0x25be7
movsd 0x31ceed(%rip), %xmm0   # 0x342978
movsd 0xe5d9d(%rip), %xmm1    # 0x10b830
cvttsd2si %xmm0, %rcx
subsd %xmm1, %xmm0
cvttsd2si %xmm0, %rdx
movq %rcx, %rax
sarq $0x3f, %rax
andq %rdx, %rax
orq %rcx, %rax
movsd 0x31ceba(%rip), %xmm0   # 0x342970
cvttsd2si %xmm0, %rcx
movsd %xmm0, 0x31d275(%rip)   # 0x342d38
movsd %xmm0, 0x31d25d(%rip)   # 0x342d28
subsd %xmm1, %xmm0
cvttsd2si %xmm0, %rdx
movq %rcx, %rbx
sarq $0x3f, %rbx
andq %rdx, %rbx
orq %rcx, %rbx
orq %rax, %rbx
jmp 0x25c94
cmpl $0x7e, %ecx
je 0x25b7a
cmpl $0x3c3c, %ecx           # imm = 0x3C3C
je 0x25ce8
cmpl $0x3e3e, %ecx           # imm = 0x3E3E
jne 0x25be7
callq 0x22d83
jmp 0x25824
movsd 0x31ce5c(%rip), %xmm0   # 0x342978
movsd 0xe5d0c(%rip), %xmm1    # 0x10b830
cvttsd2si %xmm0, %rcx
subsd %xmm1, %xmm0
cvttsd2si %xmm0, %rdx
movq %rcx, %rax
sarq $0x3f, %rax
andq %rdx, %rax
orq %rcx, %rax
movsd 0x31ce29(%rip), %xmm0   # 0x342970
cvttsd2si %xmm0, %rcx
movsd %xmm0, 0x31d1e4(%rip)   # 0x342d38
movsd %xmm0, 0x31d1cc(%rip)   # 0x342d28
subsd %xmm1, %xmm0
cvttsd2si %xmm0, %rdx
movq %rcx, %rbx
sarq $0x3f, %rbx
andq %rdx, %rbx
orq %rcx, %rbx
andq %rax, %rbx
jmp 0x25c94
movsd 0x31cdee(%rip), %xmm0   # 0x342970
cvttsd2si %xmm0, %rax
movq %rax, %rcx
movsd %xmm0, 0x31d1a6(%rip)   # 0x342d38
movsd %xmm0, 0x31d18e(%rip)   # 0x342d28
subsd 0xe5c8e(%rip), %xmm0    # 0x10b830
sarq $0x3f, %rcx
cvttsd2si %xmm0, %rbx
andq %rcx, %rbx
orq %rax, %rbx
movl $0x0, 0x31d175(%rip)    # 0x342d30
movl 0x14448f(%rip), %edx    # 0x16a050
cmpl $0x2, %edx
jl 0x25bdf
decl %edx
shlq $0x3, %rdx
leaq 0x31cd9d(%rip), %rdi    # 0x342970
leaq 0x31cd9e(%rip), %rsi    # 0x342978
callq 0x9650
notq %rbx
jmp 0x25cc2
movl (%rax), %ecx
cmpl $0x6e6173, %ecx         # imm = 0x6E6173
jle 0x25cf2
cmpl $0x6e6174, %ecx         # imm = 0x6E6174
je 0x25d0e
cmpl $0x6e6973, %ecx         # imm = 0x6E6973
je 0x25d28
cmpl $0x736f63, %ecx         # imm = 0x736F63
jne 0x25d58
movsd 0x31cd4f(%rip), %xmm0   # 0x342970
divsd 0x14442f(%rip), %xmm0   # 0x16a058
callq 0x9710
jmp 0x25e5f
movsd 0x31cd3d(%rip), %xmm0   # 0x342978
movsd 0xe5bed(%rip), %xmm1    # 0x10b830
cvttsd2si %xmm0, %rcx
subsd %xmm1, %xmm0
cvttsd2si %xmm0, %rdx
movq %rcx, %rax
sarq $0x3f, %rax
andq %rdx, %rax
orq %rcx, %rax
movsd 0x31cd0a(%rip), %xmm0   # 0x342970
cvttsd2si %xmm0, %rcx
movsd %xmm0, 0x31d0c5(%rip)   # 0x342d38
movsd %xmm0, 0x31d0ad(%rip)   # 0x342d28
subsd %xmm1, %xmm0
cvttsd2si %xmm0, %rdx
movq %rcx, %rbx
sarq $0x3f, %rbx
andq %rdx, %rbx
orq %rcx, %rbx
xorq %rax, %rbx
movl $0x0, 0x31d092(%rip)    # 0x342d30
movl 0x1443ac(%rip), %edx    # 0x16a050
cmpl $0x2, %edx
jl 0x25cc2
decl %edx
shlq $0x3, %rdx
leaq 0x31ccba(%rip), %rdi    # 0x342970
leaq 0x31ccbb(%rip), %rsi    # 0x342978
callq 0x9650
movq %rbx, %xmm0
punpckldq 0xe71d1(%rip), %xmm0 # xmm0 = xmm0[0],mem[0],xmm0[1],mem[1]
subpd 0xe71d9(%rip), %xmm0    # 0x10ceb0
movapd %xmm0, %xmm1
unpckhpd %xmm0, %xmm1            # xmm1 = xmm1[1],xmm0[1]
addsd %xmm0, %xmm1
jmp 0x2580a
callq 0x22df2
jmp 0x25824
cmpl $0x646172, %ecx         # imm = 0x646172
je 0x25d42
cmpl $0x676564, %ecx         # imm = 0x676564
jne 0x25d58
movabsq $0x404ca5dc1a63c1f8, %rax # imm = 0x404CA5DC1A63C1F8
jmp 0x25d4c
movsd 0x31cc5a(%rip), %xmm0   # 0x342970
divsd 0x14433a(%rip), %xmm0   # 0x16a058
callq 0x91b0
jmp 0x25e5f
movsd 0x31cc40(%rip), %xmm0   # 0x342970
divsd 0x144320(%rip), %xmm0   # 0x16a058
callq 0x9080
jmp 0x25e5f
movabsq $0x3ff0000000000000, %rax # imm = 0x3FF0000000000000
movq %rax, 0x144305(%rip)    # 0x16a058
jmp 0x25824
movl $0x6e697361, %edx       # imm = 0x6E697361
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x25e2c
movl $0x736f6361, %edx       # imm = 0x736F6361
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x25e3b
movl $0x6e617461, %edx       # imm = 0x6E617461
movl (%rax), %esi
xorl %edx, %esi
movzbl 0x4(%rax), %edi
orl %esi, %edi
je 0x25e4a
xorl (%rax), %edx
movzwl 0x4(%rax), %esi
xorl $0x32, %esi
orl %edx, %esi
je 0x25e74
movl $0x646f7472, %edx       # imm = 0x646F7472
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x25ede
movl $0x726f7464, %edx       # imm = 0x726F7464
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x25eff
movl $0x706f7472, %edx       # imm = 0x706F7472
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x25f20
movl $0x726f7470, %edx       # imm = 0x726F7470
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x25f2a
movl $0x67616964, %edx       # imm = 0x67616964
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x25f34
movl $0x74736964, %edx       # imm = 0x74736964
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x25faf
cmpl $0x736d64, %ecx         # imm = 0x736D64
jne 0x25fb9
callq 0x2292b
jmp 0x25824
movsd 0x31cb3c(%rip), %xmm0   # 0x342970
callq 0x9660
jmp 0x25e57
movsd 0x31cb2d(%rip), %xmm0   # 0x342970
callq 0x9350
jmp 0x25e57
movsd 0x31cb1e(%rip), %xmm0   # 0x342970
callq 0x92d0
mulsd 0x1441f9(%rip), %xmm0   # 0x16a058
movsd 0x31cb09(%rip), %xmm1   # 0x342970
movsd %xmm1, 0x31ceb9(%rip)   # 0x342d28
jmp 0x2579c
movl $0x0, 0x31ceb2(%rip)    # 0x342d30
movsd 0x31caea(%rip), %xmm0   # 0x342970
movsd %xmm0, 0x31ceaa(%rip)   # 0x342d38
movsd %xmm0, -0x10(%rbp)
movsd %xmm0, 0x31ce8d(%rip)   # 0x342d28
movl 0x1441af(%rip), %edx    # 0x16a050
cmpl $0x2, %edx
jl 0x25ebf
decl %edx
shlq $0x3, %rdx
leaq 0x31cabd(%rip), %rdi    # 0x342970
leaq 0x31cabe(%rip), %rsi    # 0x342978
callq 0x9650
movsd 0x31caa9(%rip), %xmm0   # 0x342970
movsd -0x10(%rbp), %xmm1
callq 0x9050
mulsd 0x14417f(%rip), %xmm0   # 0x16a058
jmp 0x2579c
movsd 0x31ca8a(%rip), %xmm0   # 0x342970
movsd 0xe5932(%rip), %xmm1    # 0x10b820
mulsd %xmm0, %xmm1
divsd 0xe591e(%rip), %xmm1    # 0x10b818
jmp 0x2586c
movsd 0x31ca69(%rip), %xmm0   # 0x342970
movsd 0xe5909(%rip), %xmm1    # 0x10b818
mulsd %xmm0, %xmm1
divsd 0xe5905(%rip), %xmm1    # 0x10b820
jmp 0x2586c
callq 0x2187f
jmp 0x25824
callq 0x2191d
jmp 0x25824
movl $0x0, 0x31cdf2(%rip)    # 0x342d30
movsd 0x31ca2a(%rip), %xmm0   # 0x342970
movsd %xmm0, 0x31cdea(%rip)   # 0x342d38
movsd %xmm0, -0x10(%rbp)
movsd %xmm0, 0x31cdcd(%rip)   # 0x342d28
movl 0x1440ef(%rip), %edx    # 0x16a050
cmpl $0x2, %edx
jl 0x25f7f
decl %edx
shlq $0x3, %rdx
leaq 0x31c9fd(%rip), %rdi    # 0x342970
leaq 0x31c9fe(%rip), %rsi    # 0x342978
callq 0x9650
movsd 0x31c9e9(%rip), %xmm0   # 0x342970
mulsd %xmm0, %xmm0
movsd -0x10(%rbp), %xmm1
mulsd %xmm1, %xmm1
addsd %xmm0, %xmm1
xorpd %xmm2, %xmm2
movapd %xmm1, %xmm0
ucomisd %xmm2, %xmm1
jb 0x25fe2
sqrtsd %xmm0, %xmm0
jmp 0x2579c
callq 0x22178
jmp 0x25824
movl $0x73636573, %edx       # imm = 0x73636573
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x25fec
cmpl $0x646367, %ecx         # imm = 0x646367
je 0x25ff6
cmpl $0x636564, %ecx         # imm = 0x636564
jne 0x26000
callq 0x22be2
jmp 0x25824
callq 0x9270
jmp 0x2579c
callq 0x226da
jmp 0x25824
callq 0x22308
jmp 0x25824
movabsq $0x676e6972616562, %rcx # imm = 0x676E6972616562
cmpq %rcx, (%rax)
jne 0x26019
callq 0x2251a
jmp 0x25824
movl $0x6e6c, %ecx           # imm = 0x6E6C
xorl (%rax), %ecx
movzbl 0x2(%rax), %edx
orw %cx, %dx
je 0x26045
movl (%rax), %ecx
cmpl $0x676f6c, %ecx         # imm = 0x676F6C
jne 0x26057
movsd 0x31c935(%rip), %xmm0   # 0x342970
callq 0x9160
jmp 0x25e5f
movsd 0x31c923(%rip), %xmm0   # 0x342970
callq 0x9290
jmp 0x25e5f
movl $0x74727173, %edx       # imm = 0x74727173
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x26093
cmpl $0x707865, %ecx         # imm = 0x707865
je 0x2616f
cmpl $0x727173, %ecx         # imm = 0x727173
jne 0x260b2
movsd 0x31c8ee(%rip), %xmm0   # 0x342970
movsd %xmm0, 0x31cc9e(%rip)   # 0x342d28
mulsd %xmm0, %xmm0
jmp 0x2579c
movsd 0x31c8d5(%rip), %xmm0   # 0x342970
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jb 0x26189
sqrtsd %xmm0, %xmm0
jmp 0x25e5f
movl $0x65776f70, %edx       # imm = 0x65776F70
xorl (%rax), %edx
movzbl 0x4(%rax), %esi
orl %edx, %esi
je 0x2616f
movl $0x31776f70, %edx       # imm = 0x31776F70
xorl (%rax), %edx
movzwl 0x4(%rax), %esi
xorl $0x30, %esi
orl %edx, %esi
je 0x261f5
cmpl $0x776f70, %ecx         # imm = 0x776F70
je 0x26193
movl $0x2a2a, %edx           # imm = 0x2A2A
xorl (%rax), %edx
movzbl 0x2(%rax), %esi
orw %dx, %si
je 0x26193
movl $0x7865, %edx           # imm = 0x7865
xorl (%rax), %edx
movzbl 0x2(%rax), %esi
orw %dx, %si
je 0x2621c
cmpl $0x746e65, %ecx         # imm = 0x746E65
je 0x2620a
movl $0x65746e65, %edx       # imm = 0x65746E65
xorl (%rax), %edx
movzwl 0x4(%rax), %esi
xorl $0x72, %esi
orl %edx, %esi
je 0x2620a
cmpl $0x6d6c63, %ecx         # imm = 0x6D6C63
je 0x262c6
cmpl $0x736c63, %ecx         # imm = 0x736C63
je 0x26241
cmpl $0x786c63, %ecx         # imm = 0x786C63
jne 0x26274
movq $0x0, 0x31c810(%rip) # 0x342970
movl $0x1, 0x31cbc6(%rip)    # 0x342d30
jmp 0x25824
movsd 0x31c7f9(%rip), %xmm1   # 0x342970
movsd 0xe56d9(%rip), %xmm0    # 0x10b858
callq 0x96b0
jmp 0x25e5f
callq 0x9270
jmp 0x25e5f
movl $0x0, 0x31cb93(%rip)    # 0x342d30
movsd 0x31c7cb(%rip), %xmm0   # 0x342970
movsd %xmm0, 0x31cb8b(%rip)   # 0x342d38
movsd %xmm0, -0x10(%rbp)
movsd %xmm0, 0x31cb6e(%rip)   # 0x342d28
movl 0x143e90(%rip), %edx    # 0x16a050
cmpl $0x2, %edx
jl 0x261de
decl %edx
shlq $0x3, %rdx
leaq 0x31c79e(%rip), %rdi    # 0x342970
leaq 0x31c79f(%rip), %rsi    # 0x342978
callq 0x9650
movsd 0x31c78a(%rip), %xmm0   # 0x342970
movsd -0x10(%rbp), %xmm1
callq 0x96b0
jmp 0x2579c
movsd 0x31c773(%rip), %xmm1   # 0x342970
movsd 0xe2ea3(%rip), %xmm0    # 0x1090a8
jmp 0x2617f
movsd 0x31c75e(%rip), %xmm0   # 0x342970
callq 0x21298
jmp 0x25824
movsd 0x31c74c(%rip), %xmm0   # 0x342970
movsd 0x31c74c(%rip), %xmm1   # 0x342978
movsd %xmm1, 0x31c73c(%rip)   # 0x342970
movsd %xmm0, 0x31c73c(%rip)   # 0x342978
jmp 0x25824
movslq 0x143e08(%rip), %rdx    # 0x16a050
testq %rdx, %rdx
jle 0x2625f
shlq $0x3, %rdx
leaq 0x31c718(%rip), %rdi    # 0x342970
xorl %esi, %esi
callq 0x91a0
xorl %eax, %eax
movq %rax, 0x31cac0(%rip)    # 0x342d28
movq %rax, 0x31cac9(%rip)    # 0x342d38
jmp 0x2581a
movl $0x61656c63, %edx       # imm = 0x61656C63
xorl (%rax), %edx
movzwl 0x4(%rax), %esi
xorl $0x72, %esi
orl %edx, %esi
je 0x262a8
cmpl $0x6c6c6f72, %ecx       # imm = 0x6C6C6F72
je 0x262ee
cmpl $0x6e776f64, %ecx       # imm = 0x6E776F64
je 0x262ee
cmpl $0x706f7264, %ecx       # imm = 0x706F7264
jne 0x262f8
callq 0x211bf
jmp 0x25824
movslq 0x143da1(%rip), %rdx    # 0x16a050
testq %rdx, %rdx
jle 0x262c6
shlq $0x3, %rdx
leaq 0x31c6b1(%rip), %rdi    # 0x342970
xorl %esi, %esi
callq 0x91a0
leaq 0x31c733(%rip), %rdi    # 0x342a00
xorl %ebx, %ebx
movl $0x320, %edx            # imm = 0x320
xorl %esi, %esi
callq 0x91a0
movq %rbx, 0x31ca46(%rip)    # 0x342d28
movq %rbx, 0x31ca4f(%rip)    # 0x342d38
jmp 0x2581a
callq 0x2102b
jmp 0x25824
cmpw $0x7075, (%rax)         # imm = 0x7075
jne 0x26309
callq 0x210d3
jmp 0x25824
movl $0x7473, %ecx           # imm = 0x7473
xorl (%rax), %ecx
movzbl 0x2(%rax), %edx
xorl $0x6f, %edx
orw %cx, %dx
je 0x2635d
movl $0x6372, %ecx           # imm = 0x6372
xorl (%rax), %ecx
movzbl 0x2(%rax), %edx
xorl $0x6c, %edx
orw %cx, %dx
je 0x26367
movl $0x63617473, %ecx       # imm = 0x63617473
xorl (%rax), %ecx
movzbl 0x4(%rax), %edx
xorl $0x6b, %edx
orl %ecx, %edx
je 0x26371
movl (%rax), %ecx
cmpl $0x657a6973, %ecx       # imm = 0x657A6973
je 0x2637b
cmpl $0x70617773, %ecx       # imm = 0x70617773
jne 0x26385
callq 0x21396
jmp 0x25824
callq 0x21450
jmp 0x25824
callq 0x2159f
jmp 0x25824
callq 0x21322
jmp 0x25824
callq 0x22e61
jmp 0x25824
movl $0x6966, %ecx           # imm = 0x6966
xorl (%rax), %ecx
movzbl 0x2(%rax), %edx
xorl $0x78, %edx
orw %cx, %dx
je 0x26490
movl $0x6373, %ecx           # imm = 0x6373
xorl (%rax), %ecx
movzbl 0x2(%rax), %edx
xorl $0x69, %edx
orw %cx, %dx
je 0x264b2
movl $0x6e65, %ecx           # imm = 0x6E65
xorl (%rax), %ecx
movzbl 0x2(%rax), %edx
xorl $0x67, %edx
orw %cx, %dx
je 0x264c2
movl $0x6568, %ecx           # imm = 0x6568
xorl (%rax), %ecx
movzbl 0x2(%rax), %edx
xorl $0x78, %edx
orw %cx, %dx
je 0x264e5
movl $0x636f, %ecx           # imm = 0x636F
xorl (%rax), %ecx
movzbl 0x2(%rax), %edx
xorl $0x74, %edx
orw %cx, %dx
je 0x264f1
movl $0x6962, %ecx           # imm = 0x6962
xorl (%rax), %ecx
movzbl 0x2(%rax), %edx
xorl $0x6e, %edx
orw %cx, %dx
je 0x264fd
movl $0x6d6d6f63, %ecx       # imm = 0x6D6D6F63
xorl (%rax), %ecx
movzbl 0x4(%rax), %edx
xorl $0x61, %edx
orl %ecx, %edx
je 0x26509
movl $0x69666564, %ecx       # imm = 0x69666564
xorl (%rax), %ecx
movl $0x656e69, %edx         # imm = 0x656E69
xorl 0x3(%rax), %edx
orl %ecx, %edx
je 0x2651c
movl $0x74696465, %ecx       # imm = 0x74696465
xorl (%rax), %ecx
movzbl 0x4(%rax), %edx
orl %ecx, %edx
je 0x26528
movabsq $0x7366656465766173, %rcx # imm = 0x7366656465766173
xorq (%rax), %rcx
movzbl 0x8(%rax), %edx
orq %rcx, %rdx
je 0x2654a
movabsq $0x6c6c6165766173, %rcx # imm = 0x6C6C6165766173
cmpq %rcx, (%rax)
jne 0x26556
movl $0x1, %ebx
movl $0x1, %edi
callq 0x23c04
jmp 0x25829
xorl %eax, %eax
movl %eax, 0x31c8a8(%rip)    # 0x342d40
movl %eax, 0x31c8aa(%rip)    # 0x342d48
movl $0x1, %ebx
movl $0x1, %edi
callq 0x22ec8
jmp 0x25829
xorl %eax, %eax
movl %eax, 0x31c886(%rip)    # 0x342d40
movl %eax, 0x31c888(%rip)    # 0x342d48
jmp 0x264d6
movl $0x0, 0x31c874(%rip)    # 0x342d40
movl $0x1, 0x31c872(%rip)    # 0x342d48
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
callq 0x22ec8
jmp 0x25824
movl $0x10, 0x31c851(%rip)   # 0x342d40
jmp 0x2649e
movl $0x8, 0x31c845(%rip)    # 0x342d40
jmp 0x2649e
movl $0x2, 0x31c839(%rip)    # 0x342d40
jmp 0x2649e
movsbl 0x5(%rax), %eax
testl %eax, %eax
je 0x26532
movl %eax, 0x31c82d(%rip)    # 0x342d44
jmp 0x25824
xorl %edi, %edi
callq 0x2303f
jmp 0x25824
callq 0x23a20
jmp 0x25824
cmpl $0x0, 0x31c80b(%rip)    # 0x342d44
je 0x26568
movl $0x0, 0x31c7ff(%rip)    # 0x342d44
jmp 0x25824
xorl %edi, %edi
callq 0x23c04
jmp 0x25824
cmpl $0x6e7572, (%rax)       # imm = 0x6E7572
jne 0x26577
callq 0x23d53
jmp 0x25824
movl $0x2c, 0x31c7d2(%rip)   # 0x342d44
jmp 0x25824
movl $0x74697865, %ecx       # imm = 0x74697865
xorl (%rax), %ecx
movzbl 0x4(%rax), %eax
xorl %ebx, %ebx
orl %ecx, %eax
jne 0x25829
movl $0x3db, %edi            # imm = 0x3DB
callq 0xdd23
jmp 0x25824