// File: /workspace/github_cpp_makefile_star2_O1/jkingan[P]ladyheather/heathmsc.cpp
// Function: show_log_state()
void show_log_state()
{
char *mode;
char c;
int row;
int shown;
int needed;
int avail;
char s[32];
#define MAX_LOG_NAMES 2


   if(text_mode && first_key) return;
   if(zoom_screen) return;

   show_serial_info();

   if(luxor) row = VER_ROW+6;
   else      row = VER_ROW+5;

   shown = 0;
   hide_op_mode = 0;
   avail = (6-4) + 1;
///if(all_adevs && (all_adev_row > row)) avail = all_adev_row - row;

   needed = 0;
   if(log_file) ++needed;
   else if(log_loaded) ++needed;
   else if(log_stream & LOG_HEX_STREAM) ++needed;

   if(raw_file) ++needed;
   if(prn_file) ++needed;
   if(ticc_file) ++needed;
   if(debug_file) ++needed;
if(ticc_port_open()) ++needed;
if(enviro_port_open()) ++needed;

   if(needed > avail) 

   vidstr(row, VER_COL, WHITE, "                       ");
   if(log_file) {
      ++shown;

      if(log_wrap) {
         vidstr(row, VER_COL, WHITE, "Log: on queue wrap");
      }
      else if(log_date || log_time) {
         vidstr(row, VER_COL, WHITE, "Log: timed");
      }
      else {
         if(log_mode[0] == 'a')               strcpy(s, "Cat");
         else if(log_stream & LOG_HEX_STREAM) strcpy(s, "Hex");
         else                                 strcpy(s, "Log");
         if(log_flush_mode) strupr(s);
         mode = &s[0];

         if((int)strlen(log_name) > 16) {
            sprintf(out, "%s:...%s", mode, &log_name[strlen(log_name)-16]);
         }
         else {
            sprintf(out, "%s: %s", mode, log_name);
         }
         vidstr(row, VER_COL, WHITE, out);
      }
      ++row;
   }
   else if(log_stream & LOG_HEX_STREAM) {  // debug packet dump mode
      ++shown;
      if(log_loaded) vidstr(row, VER_COL, WHITE, "Hex: loaded       ");
      else           vidstr(row, VER_COL, WHITE, "Hex: OFF          ");
      ++row;
   }
   else if(log_loaded) {
      ++shown;
      vidstr(row, VER_COL, WHITE, "Log: loaded       ");
      ++row;
   }
   else if(needed <= avail) {
      ++shown;
      vidstr(row, VER_COL, WHITE, "Log: OFF          ");
      ++row;
   }

   // show raw/debug file names
   // We only have room to show two file names.  If more than one is needed, 
   // the name is followed by an '*'
   if(shown >= avail) {
      ++hide_op_mode;
      return;
   }

   vidstr(row, VER_COL, WHITE, "                       ");
   if(rinex_file && rinex_name[0]) {
      strcpy(s, "Rnx");
      if(rinex_flush_mode) strupr(s);
      c = ':';
      ++shown;
      if((shown == avail) && (raw_file || prn_file || debug_file || ticc_file)) c = '+';

      if(strlen(rinex_name) > 16) {
         sprintf(out, "%s%c...%s", s,c, &rinex_name[strlen(rinex_name)-16]);
      }
      else {
         sprintf(out, "%s%c %s", s,c, rinex_name);
      }

      vidstr(row, VER_COL, WHITE, out);
      ++row;
   }
   if(shown >= avail) {
      ++hide_op_mode;
      return;
   }

   vidstr(row, VER_COL, WHITE, "                       ");
   if(ticc_file && ticc_name[0]) {
      mode = "TIC";
      c = ':';
      ++shown;
      if((shown == avail) && (raw_file || prn_file || debug_file)) c = '+';

      if(strlen(ticc_name) > 16) {
         sprintf(out, "%s%c...%s", mode,c, &ticc_name[strlen(ticc_name)-16]);
      }
      else {
         sprintf(out, "%s%c %s", mode,c, ticc_name);
      }

      vidstr(row, VER_COL, WHITE, out);
      ++row;
   }
   if(shown >= avail) {
      ++hide_op_mode;
      return;
   }

   vidstr(row, VER_COL, WHITE, "                       ");
   if(raw_file && raw_name[0]) {
      if(raw_flush_mode) mode = "CAP";
      else               mode = "Cap";
      c = ':';
      ++shown;
      if((shown == avail) && (prn_file || debug_file)) c = '+';

      if(strlen(raw_name) > 16) {
         sprintf(out, "%s%c...%s", mode,c, &raw_name[strlen(raw_name)-16]);
      }
      else {
         sprintf(out, "%s%c %s", mode,c, raw_name);
      }

      vidstr(row, VER_COL, WHITE, out);
      ++row;
   }
   if(shown >= avail) {
      ++hide_op_mode;
      return;
   }

   vidstr(row, VER_COL, WHITE, "                       ");
   if(debug_file && debug_name[0]) {
      if(dbg_flush_mode) mode = "DBG";
      else mode = "Dbg";
      c = ':';
      ++shown;
      if((shown == avail) && (prn_file)) c = '+';

      if((int)strlen(debug_name) > 16) {
         sprintf(out, "%s%c...%s", mode,c, &debug_name[strlen(debug_name)-16]);
      }
      else {
         sprintf(out, "%s%c %s", mode,c, debug_name);
      }

      vidstr(row, VER_COL, WHITE, out);
      ++row;
   }
   if(shown >= avail) {
      ++hide_op_mode;
      return;
   }

   vidstr(row, VER_COL, WHITE, "                       ");
   if(prn_file && prn_name[0]) {
      if(prn_flush_mode) mode = "PRN";
      else mode = "Prn";
      c = ':';
      ++shown;

      if((int)strlen(prn_name) > 16) {
         sprintf(out, "%s%c...%s", mode,c, &prn_name[strlen(prn_name)-16]);
      }
      else {
         sprintf(out, "%s%c %s", mode,c, prn_name);
      }

      vidstr(row, VER_COL, WHITE, out);
      ++row;
   }
   if(shown >= avail) {
      ++hide_op_mode;
      return;
   }

   vidstr(row, VER_COL, WHITE, "                       ");
   if(ticc_port_open()) {  // TICC is an auxiliary input device
      ++shown;

      if(ticc_sim_file && ticc_sim_eof)                 sprintf(out, "TIC: end of sim file  "); // simulation file eof
      else if(ticc_sim_file)                            sprintf(out, "TIC: simulation file  "); // simulation file
      else if(com[TICC_PORT].usb_port == USE_IDEV_NAME) sprintf(out, "TIC: %-17.17s", com[TICC_PORT].com_dev); // user specified device
      else if(com[TICC_PORT].usb_port == USE_DEV_NAME)  sprintf(out, "TIC: %-17.17s", com[TICC_PORT].com_dev); // symlink to /dev/heather
      else if(com[TICC_PORT].usb_port >= 10)            sprintf(out, "TIC: %-2d               ", com[TICC_PORT].usb_port-1);
      else if(com[TICC_PORT].usb_port)                  sprintf(out, "TIC: %-2d               ", com[TICC_PORT].usb_port-1);
#ifdef WINDOWS
      else if(com[TICC_PORT].com_port >= 10) sprintf(out, "TIC: %-2d               ", com[TICC_PORT].com_port);
      else if(com[TICC_PORT].com_port)       sprintf(out, "TIC: %-2d               ", com[TICC_PORT].com_port);
#else   // __linux__  __MACH__  __FreeBSD__
      else if(com[TICC_PORT].com_port >= 10) sprintf(out, "TIC: %-2d               ", com[TICC_PORT].com_port-1);
      else if(com[TICC_PORT].com_port)       sprintf(out, "TIC: %-2d               ", com[TICC_PORT].com_port-1);
#endif
#ifdef TCP_IP 
      else                              sprintf(out," TIC:%-17.17s", com[TICC_PORT].IP_addr); // TCP, no room for sernum
#else
      else                              sprintf(out, "TIC:none              ");
#endif
      if(strlen(out) > 25) strcpy(&out[25-3],"...");   // don't hit 'Power' label
      vidstr(row, VER_COL, WHITE, out);
      ++row;
   }
   if(shown >= avail) {
      ++hide_op_mode;
      return;
   }

   vidstr(row, VER_COL, WHITE, "                       ");
   if(enviro_port_open()) {  // envionmental sensor is an auxiliary input device
      ++shown;

      if(com[THERMO_PORT].usb_port == USE_IDEV_NAME)     sprintf(out, "ENV: %-17.17s", com[THERMO_PORT].com_dev); // user specified device
      else if(com[THERMO_PORT].usb_port == USE_DEV_NAME) sprintf(out, "ENV: %-17.17s", com[THERMO_PORT].com_dev); // symlink to /dev/heather
      else if(com[THERMO_PORT].usb_port >= 10)           sprintf(out, "ENV: %-2d               ", com[THERMO_PORT].usb_port-1);
      else if(com[THERMO_PORT].usb_port)                 sprintf(out, "ENV: %-2d               ", com[THERMO_PORT].usb_port-1);
#ifdef WINDOWS
      else if(com[THERMO_PORT].com_port >= 10) sprintf(out, "ENV: %-2d               ", com[THERMO_PORT].com_port);
      else if(com[THERMO_PORT].com_port)       sprintf(out, "ENV: %-2d               ", com[THERMO_PORT].com_port);
#else   // __linux__  __MACH__  __FreeBSD__
      else if(com[THERMO_PORT].com_port >= 10) sprintf(out, "ENV: %-2d               ", com[THERMO_PORT].com_port-1);
      else if(com[THERMO_PORT].com_port)       sprintf(out, "ENV: %-2d               ", com[THERMO_PORT].com_port-1);
#endif
#ifdef TCP_IP 
      else                              sprintf(out," ENV:%-17.17s", com[TICC_PORT].IP_addr); // TCP, no room for sernum
#else
      else                              sprintf(out, "ENV:none              ");
#endif
      if(strlen(out) > 25) strcpy(&out[25-3],"...");   // don't hit 'Power' label
      vidstr(row, VER_COL, WHITE, out);
      ++row;
   }
   if(shown >= avail) {
      ++hide_op_mode;
      return;
   }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
leaq 0x156d9c(%rip), %rax    # 0x2187d8
cmpl $0x0, (%rax)
sete %al
leaq 0x17d50f(%rip), %rcx    # 0x23ef58
cmpl $0x0, (%rcx)
sete %cl
orb %al, %cl
cmpb $0x1, %cl
jne 0xc22d0
leaq 0x24ad47(%rip), %rax    # 0x30c7a8
cmpb $0x0, (%rax)
jne 0xc22d0
callq 0xba0bd
leaq 0x17d4c8(%rip), %rax    # 0x23ef3e
leaq 0x156d17(%rip), %rcx    # 0x218794
movl (%rcx), %ebx
cmpb $0x1, (%rax)
sbbl $0x0, %ebx
addl $0x6, %ebx
leaq 0x17c8d1(%rip), %r15    # 0x23e360
leaq 0x17c964(%rip), %r13    # 0x23e3fa
leaq 0x17c973(%rip), %r14    # 0x23e410
movl $0x1, %eax
movl (%r14), %r12d
andl %eax, %r12d
cmpb $0x0, (%r13)
cmovnel %eax, %r12d
cmpq $0x0, (%r15)
cmovnel %eax, %r12d
leaq 0x17c8b0(%rip), %rax    # 0x23e370
cmpq $0x1, (%rax)
sbbl $-0x1, %r12d
leaq 0x17c8a9(%rip), %rax    # 0x23e378
cmpq $0x1, (%rax)
sbbl $-0x1, %r12d
leaq 0x17d466(%rip), %rax    # 0x23ef44
leaq 0x17c8a3(%rip), %rcx    # 0x23e388
cmpq $0x1, (%rcx)
movl $0x0, (%rax)
sbbl $-0x1, %r12d
leaq 0x17c896(%rip), %rax    # 0x23e390
cmpq $0x1, (%rax)
sbbl $-0x1, %r12d
callq 0x701f2
cmpl $0x1, %eax
sbbl $-0x1, %r12d
callq 0xab254
cmpl $0x1, %eax
sbbl $-0x1, %r12d
cmpl $0x4, %r12d
jl 0xc1b3c
leaq 0x156c71(%rip), %rax    # 0x218798
movl (%rax), %esi
leaq 0x71f2e(%rip), %rcx     # 0x133a5e
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
cmpq $0x0, (%r15)
je 0xc1b5a
leaq 0x24c4aa(%rip), %rax    # 0x30dff3
cmpb $0x0, (%rax)
je 0xc1b7a
leaq 0x6addd(%rip), %r14     # 0x12c932
jmp 0xc1c74
testb $0x1, (%r14)
movb (%r13), %al
jne 0xc1b9a
testb %al, %al
je 0xc1bdb
leaq 0x156c29(%rip), %rax    # 0x218798
movl (%rax), %esi
leaq 0x6ae0e(%rip), %rcx     # 0x12c986
jmp 0xc1bb7
leaq 0x24c433(%rip), %rax    # 0x30dfb4
leaq 0x24c41c(%rip), %rcx    # 0x30dfa4
movl (%rcx), %ecx
orl (%rax), %ecx
je 0xc1bc3
leaq 0x6adb0(%rip), %r14     # 0x12c945
jmp 0xc1c74
testb %al, %al
leaq 0x156bf5(%rip), %rax    # 0x218798
movl (%rax), %esi
leaq 0x6adc7(%rip), %rax     # 0x12c973
leaq 0x6adad(%rip), %rcx     # 0x12c960
cmoveq %rax, %rcx
movl %ebx, %edi
movl $0xf, %edx
jmp 0xc1c87
leaq 0x17c78e(%rip), %rax    # 0x23e358
movq (%rax), %rax
cmpb $0x61, (%rax)
jne 0xc1bfa
movl $0x746143, -0x50(%rbp)  # imm = 0x746143
jmp 0xc1c10
xorl %r13d, %r13d
cmpl $0x3, %r12d
jg 0xc1c94
leaq 0x156ba9(%rip), %rax    # 0x218798
movl (%rax), %esi
leaq 0x6ada1(%rip), %rcx     # 0x12c999
jmp 0xc1bb7
testb $0x1, (%r14)
jne 0xc1c09
movl $0x676f4c, -0x50(%rbp)  # imm = 0x676F4C
jmp 0xc1c10
movl $0x786548, -0x50(%rbp)  # imm = 0x786548
leaq 0x17c809(%rip), %rax    # 0x23e420
cmpl $0x0, (%rax)
je 0xc1c25
leaq -0x50(%rbp), %rdi
callq 0x9899
leaq 0x17b234(%rip), %r14    # 0x23ce60
movq %r14, %rdi
callq 0x9120
cmpl $0x11, %eax
jl 0xc1c51
leaq (%rax,%r14), %rcx
addq $-0x10, %rcx
leaq 0x27a5d8(%rip), %r14    # 0x33c220
leaq 0x6ad01(%rip), %rsi     # 0x12c950
jmp 0xc1c66
leaq 0x27a5c8(%rip), %r14    # 0x33c220
leaq 0x6acfa(%rip), %rsi     # 0x12c959
leaq 0x17b1fa(%rip), %rcx    # 0x23ce60
leaq -0x50(%rbp), %rdx
movq %r14, %rdi
xorl %eax, %eax
callq 0x9060
leaq 0x156b1d(%rip), %rax    # 0x218798
movl (%rax), %esi
movl %ebx, %edi
movl $0xf, %edx
movq %r14, %rcx
callq 0xe7d0
incl %ebx
movl $0x1, %r13d
leaq 0x156afd(%rip), %r12    # 0x218798
movl (%r12), %esi
leaq 0x71db8(%rip), %rcx     # 0x133a5e
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
leaq 0x17c6af(%rip), %rax    # 0x23e368
cmpq $0x0, (%rax)
je 0xc1d5d
leaq 0x17b296(%rip), %rax    # 0x23cf60
cmpb $0x0, (%rax)
je 0xc1d5d
movl $0x786e52, -0x50(%rbp)  # imm = 0x786E52
leaq 0x17c743(%rip), %rax    # 0x23e424
cmpl $0x0, (%rax)
je 0xc1cef
leaq -0x50(%rbp), %rdi
callq 0x9899
leaq 0x17b26a(%rip), %r14    # 0x23cf60
movq %r14, %rdi
callq 0x9120
cmpq $0x11, %rax
jb 0xc1d1c
leaq (%rax,%r14), %r8
addq $-0x10, %r8
leaq 0x27a50d(%rip), %rdi    # 0x33c220
leaq 0x6ac92(%rip), %rsi     # 0x12c9ac
jmp 0xc1d31
leaq 0x27a4fd(%rip), %rdi    # 0x33c220
leaq 0x48a12(%rip), %rsi     # 0x10a73c
leaq 0x17b22f(%rip), %r8     # 0x23cf60
leaq -0x50(%rbp), %rdx
movl $0x3a, %ecx
xorl %eax, %eax
callq 0x9060
incl %r13d
movl (%r12), %esi
leaq 0x27a4d1(%rip), %rcx    # 0x33c220
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
incl %ebx
movl (%r12), %esi
leaq 0x71cf6(%rip), %rcx     # 0x133a5e
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
leaq 0x17c60d(%rip), %rax    # 0x23e388
cmpq $0x0, (%rax)
je 0xc1e3e
leaq 0x17b4d4(%rip), %rax    # 0x23d260
cmpb $0x0, (%rax)
je 0xc1e3e
incl %r13d
movl $0x3a, %r14d
cmpl $0x3, %r13d
jne 0xc1dcb
leaq 0x17c5cd(%rip), %rax    # 0x23e378
movq (%rax), %rax
leaq 0x17c5bb(%rip), %rcx    # 0x23e370
orq (%rcx), %rax
leaq 0x17c5d1(%rip), %rcx    # 0x23e390
orq (%rcx), %rax
movl $0x2b, %eax
cmovnel %eax, %r14d
leaq 0x17b48e(%rip), %r15    # 0x23d260
movq %r15, %rdi
callq 0x9120
cmpq $0x11, %rax
jb 0xc1dff
leaq (%rax,%r15), %r8
addq $-0x10, %r8
leaq 0x27a431(%rip), %rdi    # 0x33c220
leaq 0x6abb6(%rip), %rsi     # 0x12c9ac
leaq 0x6ba83(%rip), %rdx     # 0x12d880
jmp 0xc1e1b
leaq 0x27a41a(%rip), %rdi    # 0x33c220
leaq 0x4892f(%rip), %rsi     # 0x10a73c
leaq 0x6ba6c(%rip), %rdx     # 0x12d880
leaq 0x17b445(%rip), %r8     # 0x23d260
movl %r14d, %ecx
xorl %eax, %eax
callq 0x9060
movl (%r12), %esi
leaq 0x27a3f0(%rip), %rcx    # 0x33c220
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
incl %ebx
cmpl $0x2, %r13d
jg 0xc22c7
movl (%r12), %esi
leaq 0x71c0b(%rip), %rcx     # 0x133a5e
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
leaq 0x17c50a(%rip), %rax    # 0x23e370
cmpq $0x0, (%rax)
je 0xc1f37
leaq 0x17b1e9(%rip), %rax    # 0x23d060
cmpb $0x0, (%rax)
je 0xc1f37
leaq 0x17c595(%rip), %rax    # 0x23e41c
cmpl $0x0, (%rax)
leaq 0x6ab25(%rip), %rax     # 0x12c9b6
leaq 0x48d29(%rip), %r14     # 0x10abc1
cmoveq %rax, %r14
incl %r13d
movl $0x3a, %r15d
cmpl $0x3, %r13d
jne 0xc1ec8
leaq 0x17c4de(%rip), %rax    # 0x23e390
movq (%rax), %rax
leaq 0x17c4bc(%rip), %rcx    # 0x23e378
orq (%rcx), %rax
movl $0x2b, %eax
cmovnel %eax, %r15d
leaq 0x17b191(%rip), %r12    # 0x23d060
movq %r12, %rdi
callq 0x9120
cmpq $0x11, %rax
jb 0xc1ef5
leaq (%rax,%r12), %r8
addq $-0x10, %r8
leaq 0x27a334(%rip), %rdi    # 0x33c220
leaq 0x6aab9(%rip), %rsi     # 0x12c9ac
jmp 0xc1f0a
leaq 0x27a324(%rip), %rdi    # 0x33c220
leaq 0x48839(%rip), %rsi     # 0x10a73c
leaq 0x17b156(%rip), %r8     # 0x23d060
movq %r14, %rdx
movl %r15d, %ecx
xorl %eax, %eax
callq 0x9060
leaq 0x15687a(%rip), %r12    # 0x218798
movl (%r12), %esi
leaq 0x27a2f7(%rip), %rcx    # 0x33c220
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
incl %ebx
cmpl $0x2, %r13d
jg 0xc22c7
movl (%r12), %esi
leaq 0x71b12(%rip), %rcx     # 0x133a5e
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
leaq 0x17c431(%rip), %rax    # 0x23e390
cmpq $0x0, (%rax)
je 0xc2028
leaq 0x17baf0(%rip), %rax    # 0x23da60
cmpb $0x0, (%rax)
je 0xc2028
leaq 0x17c4a8(%rip), %rax    # 0x23e428
cmpl $0x0, (%rax)
leaq 0x6aa30(%rip), %rax     # 0x12c9ba
leaq 0x64223(%rip), %r14     # 0x1261b4
cmoveq %rax, %r14
incl %r13d
leaq 0x17c3d9(%rip), %rax    # 0x23e378
cmpq $0x0, (%rax)
movl $0x2b, %r15d
movl $0x3a, %eax
cmovel %eax, %r15d
cmpl $0x3, %r13d
cmovnel %eax, %r15d
leaq 0x17ba9f(%rip), %r12    # 0x23da60
movq %r12, %rdi
callq 0x9120
cmpl $0x11, %eax
jl 0xc1fe6
leaq (%rax,%r12), %r8
addq $-0x10, %r8
leaq 0x27a243(%rip), %rdi    # 0x33c220
leaq 0x6a9c8(%rip), %rsi     # 0x12c9ac
jmp 0xc1ffb
leaq 0x27a233(%rip), %rdi    # 0x33c220
leaq 0x48748(%rip), %rsi     # 0x10a73c
leaq 0x17ba65(%rip), %r8     # 0x23da60
movq %r14, %rdx
movl %r15d, %ecx
xorl %eax, %eax
callq 0x9060
leaq 0x156789(%rip), %r12    # 0x218798
movl (%r12), %esi
leaq 0x27a206(%rip), %rcx    # 0x33c220
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
incl %ebx
cmpl $0x2, %r13d
jg 0xc22c7
movl (%r12), %esi
leaq 0x71a21(%rip), %rcx     # 0x133a5e
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
leaq 0x17c328(%rip), %rax    # 0x23e378
cmpq $0x0, (%rax)
je 0xc20f2
leaq 0x17b0ff(%rip), %rax    # 0x23d160
cmpb $0x0, (%rax)
je 0xc20f2
leaq 0x17c3bb(%rip), %rax    # 0x23e42c
cmpl $0x0, (%rax)
leaq 0x6a943(%rip), %rax     # 0x12c9be
leaq 0x70ffd(%rip), %r14     # 0x13307f
cmoveq %rax, %r14
leaq 0x17b0d3(%rip), %r15    # 0x23d160
movq %r15, %rdi
callq 0x9120
cmpl $0x11, %eax
jl 0xc20b2
leaq (%rax,%r15), %r8
addq $-0x10, %r8
leaq 0x27a177(%rip), %rdi    # 0x33c220
leaq 0x6a8fc(%rip), %rsi     # 0x12c9ac
jmp 0xc20c7
leaq 0x27a167(%rip), %rdi    # 0x33c220
leaq 0x4867c(%rip), %rsi     # 0x10a73c
leaq 0x17b099(%rip), %r8     # 0x23d160
movq %r14, %rdx
movl $0x3a, %ecx
xorl %eax, %eax
callq 0x9060
incl %r13d
movl (%r12), %esi
leaq 0x27a13c(%rip), %rcx    # 0x33c220
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
incl %ebx
cmpl $0x2, %r13d
jg 0xc22c7
movl (%r12), %esi
leaq 0x71957(%rip), %rcx     # 0x133a5e
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
callq 0x701f2
testl %eax, %eax
je 0xc21a5
leaq 0x17c271(%rip), %rax    # 0x23e398
movq (%rax), %rax
testq %rax, %rax
je 0xc2144
leaq 0x17c2a6(%rip), %rcx    # 0x23e3dc
cmpl $0x0, (%rcx)
je 0xc2144
movups 0x6a880(%rip), %xmm0    # 0x12c9c2
jmp 0xc2154
testq %rax, %rax
je 0xc2213
movups 0x6a885(%rip), %xmm0    # 0x12c9d9
leaq 0x27a0c5(%rip), %rax    # 0x33c220
movaps %xmm0, (%rax)
movabsq $0x2020656c696620, %rcx # imm = 0x2020656C696620
movq %rcx, 0xf(%rax)
leaq 0x27a0ad(%rip), %r14    # 0x33c220
movq %r14, %rdi
callq 0x9120
cmpq $0x1a, %rax
jb 0xc2189
movl $0x2e2e2e, 0x16(%r14)   # imm = 0x2E2E2E
incl %r13d
movl (%r12), %esi
leaq 0x27a089(%rip), %rcx    # 0x33c220
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
incl %ebx
cmpl $0x2, %r13d
jg 0xc22c7
movl (%r12), %esi
leaq 0x718a4(%rip), %rcx     # 0x133a5e
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
callq 0xab254
testl %eax, %eax
je 0xc22d0
leaq 0x24c106(%rip), %rax    # 0x30e2e0
movl 0x203a4(%rax), %edx
cmpl $0x3e7, %edx            # imm = 0x3E7
je 0xc21f0
cmpl $0x270f, %edx           # imm = 0x270F
jne 0xc225a
movl $0x203ac, %edx          # imm = 0x203AC
addq 0x8dde4(%rip), %rdx     # 0x14ffe0
leaq 0x27a01d(%rip), %rdi    # 0x33c220
leaq 0x6a81b(%rip), %rsi     # 0x12ca25
xorl %eax, %eax
callq 0x9060
jmp 0xc228d
leaq 0x24c0c6(%rip), %rax    # 0x30e2e0
movl 0x1bee4(%rax), %edx
cmpl $0x3e7, %edx            # imm = 0x3E7
je 0xc2234
cmpl $0x270f, %edx           # imm = 0x270F
jne 0xc22df
movl $0x1beec, %edx          # imm = 0x1BEEC
addq 0x8dda0(%rip), %rdx     # 0x14ffe0
leaq 0x279fd9(%rip), %rdi    # 0x33c220
leaq 0x6a7a2(%rip), %rsi     # 0x12c9f0
xorl %eax, %eax
callq 0x9060
jmp 0xc216c
cmpl $0xa, %edx
jge 0xc2276
testl %edx, %edx
jne 0xc2276
movl 0x203a0(%rax), %edx
cmpl $0xa, %edx
jge 0xc2276
testl %edx, %edx
je 0xc2313
decl %edx
leaq 0x279fa1(%rip), %rdi    # 0x33c220
leaq 0x6a7ad(%rip), %rsi     # 0x12ca33
xorl %eax, %eax
callq 0x9060
leaq 0x279f8c(%rip), %r14    # 0x33c220
movq %r14, %rdi
callq 0x9120
cmpq $0x1a, %rax
jb 0xc22aa
movl $0x2e2e2e, 0x16(%r14)   # imm = 0x2E2E2E
movl (%r12), %esi
leaq 0x279f6b(%rip), %rcx    # 0x33c220
movl %ebx, %edi
movl $0xf, %edx
callq 0xe7d0
cmpl $0x2, %r13d
jne 0xc22d0
leaq 0x17cc76(%rip), %rax    # 0x23ef44
incl (%rax)
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
cmpl $0xa, %edx
jge 0xc22f7
testl %edx, %edx
jne 0xc22f7
movl 0x1bee0(%rax), %edx
cmpl $0xa, %edx
jge 0xc22f7
testl %edx, %edx
je 0xc2332
decl %edx
leaq 0x279f20(%rip), %rdi    # 0x33c220
leaq 0x6a6f7(%rip), %rsi     # 0x12c9fe
xorl %eax, %eax
callq 0x9060
jmp 0xc216c
movl $0x1bfed, %edx          # imm = 0x1BFED
addq 0x8dcc1(%rip), %rdx     # 0x14ffe0
leaq 0x279efa(%rip), %rdi    # 0x33c220
leaq 0x6a71f(%rip), %rsi     # 0x12ca4c
jmp 0xc220a
movl $0x1bfed, %edx          # imm = 0x1BFED
addq 0x8dca2(%rip), %rdx     # 0x14ffe0
leaq 0x279edb(%rip), %rdi    # 0x33c220
leaq 0x6a6cb(%rip), %rsi     # 0x12ca17
jmp 0xc224e