// File: jkingan[P]ladyheather/heathmsc.cpp
// Function: get_obs_types(_IO_FILE*, char*, int, int*)
int get_obs_types(FILE *file, char *s, int system, int *obs_type)
{
int i;
int len;
char obs[5+1];
char *sys;
unsigned ti;
int num_obs;
int max_obs; // max observation types per line

   // parse list of observation types to output and build the RINEX file
   // observation type list

   // !!!!!!!!!! needs changes for RINEX v3 !!!!!!!!!!!!!!

   num_obs = 0;
   if(file == 0) return num_obs;

   if(s == 0) s = "";

   len = strlen(s);
   if(len) ++len;

   ti = 0;
   obs[0] = 0;
   for(i=0; i<len; i++) {  // build obs list from user specified measurments
      if(obs[0] && (s[i] == 0)) goto got_obs;  // null observation type list

      if(isalpha(s[i]) || isdigit(s[i])) {    // build the next obs type string
         if(ti >= (sizeof(obs)-1)) continue;  // obs name is too long, clip it
         obs[ti++] = s[i];
         obs[ti] = 0;
      }
      else if(obs[0]) {  // got the obs type string, parse it
         got_obs:
         strupr(obs);

         // RINEX v2.11
         if     (strstr(obs, "S1")) num_obs = add_obs_type(obs_type, num_obs, S1_OBS);  // signal strength
         else if(strstr(obs, "S2")) num_obs = add_obs_type(obs_type, num_obs, S2_OBS);
         else if(strstr(obs, "S5")) num_obs = add_obs_type(obs_type, num_obs, S5_OBS);
         else if(strstr(obs, "S6")) num_obs = add_obs_type(obs_type, num_obs, S6_OBS);
         else if(strstr(obs, "S7")) num_obs = add_obs_type(obs_type, num_obs, S7_OBS);
         else if(strstr(obs, "S8")) num_obs = add_obs_type(obs_type, num_obs, S8_OBS);
                                                                                     
         else if(strstr(obs, "D1")) num_obs = add_obs_type(obs_type, num_obs, D1_OBS);  // doppler
         else if(strstr(obs, "D2")) num_obs = add_obs_type(obs_type, num_obs, D2_OBS);
         else if(strstr(obs, "D5")) num_obs = add_obs_type(obs_type, num_obs, D5_OBS);
         else if(strstr(obs, "D6")) num_obs = add_obs_type(obs_type, num_obs, D6_OBS);
         else if(strstr(obs, "D7")) num_obs = add_obs_type(obs_type, num_obs, D7_OBS);
         else if(strstr(obs, "D8")) num_obs = add_obs_type(obs_type, num_obs, D8_OBS);
                                                                                     
         else if(strstr(obs, "C1")) num_obs = add_obs_type(obs_type, num_obs, C1_OBS);  // pseudorange
         else if(strstr(obs, "L1")) num_obs = add_obs_type(obs_type, num_obs, L1_OBS);
         else if(strstr(obs, "L2")) num_obs = add_obs_type(obs_type, num_obs, L2_OBS);
         else if(strstr(obs, "L5")) num_obs = add_obs_type(obs_type, num_obs, L5_OBS);
         else if(strstr(obs, "L6")) num_obs = add_obs_type(obs_type, num_obs, L6_OBS);
         else if(strstr(obs, "L7")) num_obs = add_obs_type(obs_type, num_obs, L7_OBS);
         else if(strstr(obs, "L8")) num_obs = add_obs_type(obs_type, num_obs, L8_OBS);
                                                                                     
         else if(strstr(obs, "P1")) num_obs = add_obs_type(obs_type, num_obs, P1_OBS);  // carrier phase
         else if(strstr(obs, "P2")) num_obs = add_obs_type(obs_type, num_obs, P2_OBS);
         else if(strstr(obs, "P5")) num_obs = add_obs_type(obs_type, num_obs, P5_OBS);
         else if(strstr(obs, "P6")) num_obs = add_obs_type(obs_type, num_obs, P6_OBS);
         else if(strstr(obs, "P7")) num_obs = add_obs_type(obs_type, num_obs, P7_OBS);
         else if(strstr(obs, "P8")) num_obs = add_obs_type(obs_type, num_obs, P8_OBS);

         // RINEX v3.03  - !!!!! These need work !!!!!
         else if(strstr(obs, "S1C")) num_obs = add_obs_type(obs_type, num_obs, S1_OBS);  // signal strength
         else if(strstr(obs, "S2C")) num_obs = add_obs_type(obs_type, num_obs, S2_OBS);
         else if(strstr(obs, "S5C")) num_obs = add_obs_type(obs_type, num_obs, S5_OBS);
         else if(strstr(obs, "S6C")) num_obs = add_obs_type(obs_type, num_obs, S6_OBS);
         else if(strstr(obs, "S7C")) num_obs = add_obs_type(obs_type, num_obs, S7_OBS);
         else if(strstr(obs, "S8C")) num_obs = add_obs_type(obs_type, num_obs, S8_OBS);
                                                                                       
         else if(strstr(obs, "D1C")) num_obs = add_obs_type(obs_type, num_obs, D1_OBS);  // doppler
         else if(strstr(obs, "D2C")) num_obs = add_obs_type(obs_type, num_obs, D2_OBS);
         else if(strstr(obs, "D5C")) num_obs = add_obs_type(obs_type, num_obs, D5_OBS);
         else if(strstr(obs, "D6C")) num_obs = add_obs_type(obs_type, num_obs, D6_OBS);
         else if(strstr(obs, "D7C")) num_obs = add_obs_type(obs_type, num_obs, D7_OBS);
         else if(strstr(obs, "D8C")) num_obs = add_obs_type(obs_type, num_obs, D8_OBS);
                                                                                       
         else if(strstr(obs, "C1C")) num_obs = add_obs_type(obs_type, num_obs, C1_OBS);  // pseudorange
         else if(strstr(obs, "C1P")) num_obs = add_obs_type(obs_type, num_obs, L1_OBS);
         else if(strstr(obs, "C2P")) num_obs = add_obs_type(obs_type, num_obs, L2_OBS);
         else if(strstr(obs, "C5P")) num_obs = add_obs_type(obs_type, num_obs, L5_OBS);
         else if(strstr(obs, "C6P")) num_obs = add_obs_type(obs_type, num_obs, L6_OBS);
         else if(strstr(obs, "C7P")) num_obs = add_obs_type(obs_type, num_obs, L7_OBS);
         else if(strstr(obs, "C8P")) num_obs = add_obs_type(obs_type, num_obs, L8_OBS);
                                                                                       
         else if(strstr(obs, "L1C")) num_obs = add_obs_type(obs_type, num_obs, P1_OBS);  // carrier phase
         else if(strstr(obs, "L2C")) num_obs = add_obs_type(obs_type, num_obs, P2_OBS);
         else if(strstr(obs, "L5C")) num_obs = add_obs_type(obs_type, num_obs, P5_OBS);
         else if(strstr(obs, "L6C")) num_obs = add_obs_type(obs_type, num_obs, P6_OBS);
         else if(strstr(obs, "L7C")) num_obs = add_obs_type(obs_type, num_obs, P7_OBS);
         else if(strstr(obs, "L8C")) num_obs = add_obs_type(obs_type, num_obs, P8_OBS);

         else continue;

         ++num_obs;
         ti = 0;
         obs[0] = 0;
         if(num_obs >= MAX_OBS) break;
      }
      else obs[0] = 0;  // skip whitespace

      if(s[i] == 0) break;
   }

   if(num_obs == 0) {  // build obs list from data type seen
      if(have_range & system)       obs_type[num_obs++] = C1_OBS;
      else if((have_phase & system) && use_rinex_cppr) {
         obs_type[num_obs++] = C1_OBS;
      }
      if(have_l1_range & system)    obs_type[num_obs++] = P1_OBS;
      if(have_l2_range & system)    obs_type[num_obs++] = P2_OBS;
      if(have_l5_range & system)    obs_type[num_obs++] = P5_OBS;
      if(have_l6_range & system)    obs_type[num_obs++] = P6_OBS;
      if(have_l7_range & system)    obs_type[num_obs++] = P7_OBS;
      if(have_l8_range & system)    obs_type[num_obs++] = P8_OBS;

      if((have_phase & system) || (have_l1_phase & system)) obs_type[num_obs++] = L1_OBS;
      if(have_l2_phase & system)    obs_type[num_obs++] = L2_OBS;
      if(have_l5_phase & system)    obs_type[num_obs++] = L5_OBS;
      if(have_l6_phase & system)    obs_type[num_obs++] = L6_OBS;
      if(have_l7_phase & system)    obs_type[num_obs++] = L7_OBS;
      if(have_l8_phase & system)    obs_type[num_obs++] = L8_OBS;

      if(rcvr_type == MOTO_RCVR) ;        // doppler value is unusable for RINEX 
      else if(rcvr_type == VENUS_RCVR) ;  // doppler value is unusable for RINEX
      else {
         if((have_doppler & system) || (have_l1_doppler & system)) {
            obs_type[num_obs++] = D1_OBS;
         }
         if(have_l2_doppler & system)  obs_type[num_obs++] = D2_OBS;
         if(have_l5_doppler & system)  obs_type[num_obs++] = D5_OBS;
         if(have_l6_doppler & system)  obs_type[num_obs++] = D6_OBS;
         if(have_l7_doppler & system)  obs_type[num_obs++] = D7_OBS;
         if(have_l8_doppler & system)  obs_type[num_obs++] = D8_OBS;
      }

      if(have_snr & system)         obs_type[num_obs++] = S1_OBS;
      else if(have_l1_snr & system) obs_type[num_obs++] = S1_OBS;
      if(have_l2_snr & system)      obs_type[num_obs++] = S2_OBS;
      if(have_l5_snr & system)      obs_type[num_obs++] = S5_OBS;
      if(have_l6_snr & system)      obs_type[num_obs++] = S6_OBS;
      if(have_l7_snr & system)      obs_type[num_obs++] = S7_OBS;
      if(have_l8_snr & system)      obs_type[num_obs++] = S8_OBS;
   }

   if(rinex_fmt >= 3.0) {
      if     (system & GPS)     sys = "G";
      else if(system & SBAS)    sys = "S";
      else if(system & GLONASS) sys = "R";
      else if(system & GALILEO) sys = "E";
      else if(system & BEIDOU)  sys = "C";
      else                      sys = "?";
      sprintf(out, "%s%5d", sys, num_obs);

      max_obs = 13;
      sys = "SYS / # / OBS TYPES";

      len = 0;
      for(i=0; i<num_obs; i++) {  // build the RINEX file observation list
         // !!!!!!!! THESE ARE TEMPORARY TEST VALUES... NEED TO BE UPDATED TO REAL ONES !!!!!!!!!
         if     (obs_type[i] == S1_OBS) { strcat(out, " S1C"); ++len; }  // sig level
         else if(obs_type[i] == S2_OBS) { strcat(out, " S2C"); ++len; } 
         else if(obs_type[i] == S5_OBS) { strcat(out, " S5C"); ++len; } 
         else if(obs_type[i] == S6_OBS) { strcat(out, " S6C"); ++len; } 
         else if(obs_type[i] == S7_OBS) { strcat(out, " S7C"); ++len; } 
         else if(obs_type[i] == S8_OBS) { strcat(out, " S8C"); ++len; } 

         else if(obs_type[i] == D1_OBS) { strcat(out, " D1C"); ++len; }  // dopple
         else if(obs_type[i] == D2_OBS) { strcat(out, " D2C"); ++len; } 
         else if(obs_type[i] == D5_OBS) { strcat(out, " D5C"); ++len; } 
         else if(obs_type[i] == D6_OBS) { strcat(out, " D6C"); ++len; } 
         else if(obs_type[i] == D7_OBS) { strcat(out, " D7C"); ++len; } 
         else if(obs_type[i] == D8_OBS) { strcat(out, " D8C"); ++len; } 

         else if(obs_type[i] == C1_OBS) { strcat(out, " C1C"); ++len; }  // pseudorange
         else if(obs_type[i] == P1_OBS) { strcat(out, " C1P"); ++len; } 
         else if(obs_type[i] == P2_OBS) { strcat(out, " C2P"); ++len; } 
         else if(obs_type[i] == P5_OBS) { strcat(out, " C5P"); ++len; } 
         else if(obs_type[i] == P6_OBS) { strcat(out, " C6P"); ++len; } 
         else if(obs_type[i] == P7_OBS) { strcat(out, " C7P"); ++len; } 
         else if(obs_type[i] == P8_OBS) { strcat(out, " C8P"); ++len; } 

         else if(obs_type[i] == L1_OBS) { strcat(out, " L1C"); ++len; }  // carrier phase
         else if(obs_type[i] == L2_OBS) { strcat(out, " L2C"); ++len; } 
         else if(obs_type[i] == L5_OBS) { strcat(out, " L5C"); ++len; } 
         else if(obs_type[i] == L6_OBS) { strcat(out, " L6C"); ++len; } 
         else if(obs_type[i] == L7_OBS) { strcat(out, " L7C"); ++len; } 
         else if(obs_type[i] == L8_OBS) { strcat(out, " L8C"); ++len; } 


         if(len >= max_obs) {  // time for continuation line
            write_rinex_line(file, out, sys); 
            strcpy(out,"      ");
            len = 0;
         }
      }

      if(len) {  // flush the last observation list line
         write_rinex_line(file, out, sys); 
      }
   }
   else {
      sprintf(out, "%6d", num_obs);

      max_obs = 9;
      sys = "# / TYPES OF OBSERV";

      len = 0;
      for(i=0; i<num_obs; i++) {  // build the RINEX file observation list
         if     (obs_type[i] == S1_OBS) { strcat(out, "    S1"); ++len; }
         else if(obs_type[i] == S2_OBS) { strcat(out, "    S2"); ++len; } 
         else if(obs_type[i] == S5_OBS) { strcat(out, "    S5"); ++len; } 
         else if(obs_type[i] == S6_OBS) { strcat(out, "    S6"); ++len; } 
         else if(obs_type[i] == S7_OBS) { strcat(out, "    S7"); ++len; } 
         else if(obs_type[i] == S8_OBS) { strcat(out, "    S8"); ++len; } 

         else if(obs_type[i] == D1_OBS) { strcat(out, "    D1"); ++len; } 
         else if(obs_type[i] == D2_OBS) { strcat(out, "    D2"); ++len; } 
         else if(obs_type[i] == D5_OBS) { strcat(out, "    D5"); ++len; } 
         else if(obs_type[i] == D6_OBS) { strcat(out, "    D6"); ++len; } 
         else if(obs_type[i] == D7_OBS) { strcat(out, "    D7"); ++len; } 
         else if(obs_type[i] == D8_OBS) { strcat(out, "    D8"); ++len; } 

         else if(obs_type[i] == C1_OBS) { strcat(out, "    C1"); ++len; } 
         else if(obs_type[i] == P1_OBS) { strcat(out, "    P1"); ++len; } 
         else if(obs_type[i] == P2_OBS) { strcat(out, "    P2"); ++len; } 
         else if(obs_type[i] == P5_OBS) { strcat(out, "    P5"); ++len; } 
         else if(obs_type[i] == P6_OBS) { strcat(out, "    P6"); ++len; } 
         else if(obs_type[i] == P7_OBS) { strcat(out, "    P7"); ++len; } 
         else if(obs_type[i] == P8_OBS) { strcat(out, "    P8"); ++len; } 


         else if(obs_type[i] == L1_OBS) { strcat(out, "    L1"); ++len; } 
         else if(obs_type[i] == L2_OBS) { strcat(out, "    L2"); ++len; } 
         else if(obs_type[i] == L5_OBS) { strcat(out, "    L5"); ++len; } 
         else if(obs_type[i] == L6_OBS) { strcat(out, "    L6"); ++len; } 
         else if(obs_type[i] == L7_OBS) { strcat(out, "    L7"); ++len; } 
         else if(obs_type[i] == L8_OBS) { strcat(out, "    L8"); ++len; } 


         if(len >= max_obs) {  // time for continuation line
            write_rinex_line(file, out, sys); 
            strcpy(out,"      ");
            len = 0;
         }
      }

      if(len) {  // flush the last observation list line
         write_rinex_line(file, out, sys); 
      }
   }

   return num_obs;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x50, %rsp
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
movl %edx, -0x1c(%rbp)
movq %rcx, -0x28(%rbp)
movl $0x0, -0x48(%rbp)
cmpq $0x0, -0x10(%rbp)
jne 0x12d7c0
movl -0x48(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x12f2c5
cmpq $0x0, -0x18(%rbp)
jne 0x12d7d2
leaq 0x66dc4(%rip), %rax     # 0x194592
movq %rax, -0x18(%rbp)
movq -0x18(%rbp), %rdi
callq 0x9120
movl %eax, -0x30(%rbp)
cmpl $0x0, -0x30(%rbp)
je 0x12d7ed
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
movl $0x0, -0x44(%rbp)
movb $0x0, -0x36(%rbp)
movl $0x0, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
cmpl -0x30(%rbp), %eax
jge 0x12e26f
cmpb $0x0, -0x36(%rbp)
je 0x12d824
movq -0x18(%rbp), %rax
movslq -0x2c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x0, %eax
jne 0x12d824
jmp 0x12d893
movq -0x18(%rbp), %rax
movslq -0x2c(%rbp), %rcx
movsbl (%rax,%rcx), %edi
callq 0x9620
cmpl $0x0, %eax
jne 0x12d850
movq -0x18(%rbp), %rax
movslq -0x2c(%rbp), %rcx
movsbl (%rax,%rcx), %edi
callq 0x9330
cmpl $0x0, %eax
je 0x12d887
movl -0x44(%rbp), %eax
cmpq $0x5, %rax
jb 0x12d85e
jmp 0x12e261
movq -0x18(%rbp), %rax
movslq -0x2c(%rbp), %rcx
movb (%rax,%rcx), %cl
movl -0x44(%rbp), %eax
movl %eax, %edx
addl $0x1, %edx
movl %edx, -0x44(%rbp)
movl %eax, %eax
movb %cl, -0x36(%rbp,%rax)
movl -0x44(%rbp), %eax
movb $0x0, -0x36(%rbp,%rax)
jmp 0x12e24c
cmpb $0x0, -0x36(%rbp)
je 0x12e246
jmp 0x12d893
leaq -0x36(%rbp), %rdi
callq 0x9890
leaq -0x36(%rbp), %rdi
leaq 0x687ad(%rip), %rsi     # 0x196054
callq 0x9090
cmpq $0x0, %rax
je 0x12d8cb
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x1, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e228
leaq -0x36(%rbp), %rdi
leaq 0x68785(%rip), %rsi     # 0x19605b
callq 0x9090
cmpq $0x0, %rax
je 0x12d8fa
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x2, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e226
leaq -0x36(%rbp), %rdi
leaq 0x6875d(%rip), %rsi     # 0x196062
callq 0x9090
cmpq $0x0, %rax
je 0x12d929
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x3, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e224
leaq -0x36(%rbp), %rdi
leaq 0x68735(%rip), %rsi     # 0x196069
callq 0x9090
cmpq $0x0, %rax
je 0x12d958
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x4, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e222
leaq -0x36(%rbp), %rdi
leaq 0x6870d(%rip), %rsi     # 0x196070
callq 0x9090
cmpq $0x0, %rax
je 0x12d987
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x5, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e220
leaq -0x36(%rbp), %rdi
leaq 0x686e5(%rip), %rsi     # 0x196077
callq 0x9090
cmpq $0x0, %rax
je 0x12d9b6
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x6, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e21e
leaq -0x36(%rbp), %rdi
leaq 0x686bd(%rip), %rsi     # 0x19607e
callq 0x9090
cmpq $0x0, %rax
je 0x12d9e5
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x7, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e21c
leaq -0x36(%rbp), %rdi
leaq 0x68695(%rip), %rsi     # 0x196085
callq 0x9090
cmpq $0x0, %rax
je 0x12da14
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x8, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e21a
leaq -0x36(%rbp), %rdi
leaq 0x6866d(%rip), %rsi     # 0x19608c
callq 0x9090
cmpq $0x0, %rax
je 0x12da43
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x9, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e218
leaq -0x36(%rbp), %rdi
leaq 0x68645(%rip), %rsi     # 0x196093
callq 0x9090
cmpq $0x0, %rax
je 0x12da72
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xa, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e216
leaq -0x36(%rbp), %rdi
leaq 0x6861d(%rip), %rsi     # 0x19609a
callq 0x9090
cmpq $0x0, %rax
je 0x12daa1
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xb, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e214
leaq -0x36(%rbp), %rdi
leaq 0x685f5(%rip), %rsi     # 0x1960a1
callq 0x9090
cmpq $0x0, %rax
je 0x12dad0
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xc, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e212
leaq -0x36(%rbp), %rdi
leaq 0x685cd(%rip), %rsi     # 0x1960a8
callq 0x9090
cmpq $0x0, %rax
je 0x12daff
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xd, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e210
leaq -0x36(%rbp), %rdi
leaq 0x685cf(%rip), %rsi     # 0x1960d9
callq 0x9090
cmpq $0x0, %rax
je 0x12db2e
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x14, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e20e
leaq -0x36(%rbp), %rdi
leaq 0x685a7(%rip), %rsi     # 0x1960e0
callq 0x9090
cmpq $0x0, %rax
je 0x12db5d
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x15, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e20c
leaq -0x36(%rbp), %rdi
leaq 0x6857f(%rip), %rsi     # 0x1960e7
callq 0x9090
cmpq $0x0, %rax
je 0x12db8c
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x16, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e20a
leaq -0x36(%rbp), %rdi
leaq 0x68557(%rip), %rsi     # 0x1960ee
callq 0x9090
cmpq $0x0, %rax
je 0x12dbbb
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x17, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e208
leaq -0x36(%rbp), %rdi
leaq 0x6852f(%rip), %rsi     # 0x1960f5
callq 0x9090
cmpq $0x0, %rax
je 0x12dbea
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x18, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e206
leaq -0x36(%rbp), %rdi
leaq 0x68507(%rip), %rsi     # 0x1960fc
callq 0x9090
cmpq $0x0, %rax
je 0x12dc19
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x19, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e204
leaq -0x36(%rbp), %rdi
leaq 0x6848b(%rip), %rsi     # 0x1960af
callq 0x9090
cmpq $0x0, %rax
je 0x12dc48
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xe, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e202
leaq -0x36(%rbp), %rdi
leaq 0x68463(%rip), %rsi     # 0x1960b6
callq 0x9090
cmpq $0x0, %rax
je 0x12dc77
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xf, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e200
leaq -0x36(%rbp), %rdi
leaq 0x6843b(%rip), %rsi     # 0x1960bd
callq 0x9090
cmpq $0x0, %rax
je 0x12dca6
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x10, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1fe
leaq -0x36(%rbp), %rdi
leaq 0x68413(%rip), %rsi     # 0x1960c4
callq 0x9090
cmpq $0x0, %rax
je 0x12dcd5
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x11, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1fc
leaq -0x36(%rbp), %rdi
leaq 0x683eb(%rip), %rsi     # 0x1960cb
callq 0x9090
cmpq $0x0, %rax
je 0x12dd04
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x12, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1fa
leaq -0x36(%rbp), %rdi
leaq 0x683c3(%rip), %rsi     # 0x1960d2
callq 0x9090
cmpq $0x0, %rax
je 0x12dd33
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x13, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1f8
leaq -0x36(%rbp), %rdi
leaq 0x68282(%rip), %rsi     # 0x195fc0
callq 0x9090
cmpq $0x0, %rax
je 0x12dd62
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x1, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1f6
leaq -0x36(%rbp), %rdi
leaq 0x68258(%rip), %rsi     # 0x195fc5
callq 0x9090
cmpq $0x0, %rax
je 0x12dd91
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x2, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1f4
leaq -0x36(%rbp), %rdi
leaq 0x6822e(%rip), %rsi     # 0x195fca
callq 0x9090
cmpq $0x0, %rax
je 0x12ddc0
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x3, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1f2
leaq -0x36(%rbp), %rdi
leaq 0x68204(%rip), %rsi     # 0x195fcf
callq 0x9090
cmpq $0x0, %rax
je 0x12ddef
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x4, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1f0
leaq -0x36(%rbp), %rdi
leaq 0x681da(%rip), %rsi     # 0x195fd4
callq 0x9090
cmpq $0x0, %rax
je 0x12de1e
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x5, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1ee
leaq -0x36(%rbp), %rdi
leaq 0x681b0(%rip), %rsi     # 0x195fd9
callq 0x9090
cmpq $0x0, %rax
je 0x12de4d
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x6, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1ec
leaq -0x36(%rbp), %rdi
leaq 0x68186(%rip), %rsi     # 0x195fde
callq 0x9090
cmpq $0x0, %rax
je 0x12de7c
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x7, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1ea
leaq -0x36(%rbp), %rdi
leaq 0x6815c(%rip), %rsi     # 0x195fe3
callq 0x9090
cmpq $0x0, %rax
je 0x12deab
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x8, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1e8
leaq -0x36(%rbp), %rdi
leaq 0x68132(%rip), %rsi     # 0x195fe8
callq 0x9090
cmpq $0x0, %rax
je 0x12deda
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x9, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1e6
leaq -0x36(%rbp), %rdi
leaq 0x68108(%rip), %rsi     # 0x195fed
callq 0x9090
cmpq $0x0, %rax
je 0x12df09
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xa, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1e4
leaq -0x36(%rbp), %rdi
leaq 0x680de(%rip), %rsi     # 0x195ff2
callq 0x9090
cmpq $0x0, %rax
je 0x12df38
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xb, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1e2
leaq -0x36(%rbp), %rdi
leaq 0x680b4(%rip), %rsi     # 0x195ff7
callq 0x9090
cmpq $0x0, %rax
je 0x12df67
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xc, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1e0
leaq -0x36(%rbp), %rdi
leaq 0x6808a(%rip), %rsi     # 0x195ffc
callq 0x9090
cmpq $0x0, %rax
je 0x12df96
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xd, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1de
leaq -0x36(%rbp), %rdi
leaq 0x68060(%rip), %rsi     # 0x196001
callq 0x9090
cmpq $0x0, %rax
je 0x12dfc5
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x14, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1dc
leaq -0x36(%rbp), %rdi
leaq 0x68036(%rip), %rsi     # 0x196006
callq 0x9090
cmpq $0x0, %rax
je 0x12dff4
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x15, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1da
leaq -0x36(%rbp), %rdi
leaq 0x6800c(%rip), %rsi     # 0x19600b
callq 0x9090
cmpq $0x0, %rax
je 0x12e023
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x16, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1d8
leaq -0x36(%rbp), %rdi
leaq 0x67fe2(%rip), %rsi     # 0x196010
callq 0x9090
cmpq $0x0, %rax
je 0x12e052
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x17, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1d6
leaq -0x36(%rbp), %rdi
leaq 0x67fb8(%rip), %rsi     # 0x196015
callq 0x9090
cmpq $0x0, %rax
je 0x12e081
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x18, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1d4
leaq -0x36(%rbp), %rdi
leaq 0x67f8e(%rip), %rsi     # 0x19601a
callq 0x9090
cmpq $0x0, %rax
je 0x12e0b0
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x19, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1d2
leaq -0x36(%rbp), %rdi
leaq 0x67f64(%rip), %rsi     # 0x19601f
callq 0x9090
cmpq $0x0, %rax
je 0x12e0df
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xe, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1d0
leaq -0x36(%rbp), %rdi
leaq 0x67f3a(%rip), %rsi     # 0x196024
callq 0x9090
cmpq $0x0, %rax
je 0x12e10e
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0xf, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1ce
leaq -0x36(%rbp), %rdi
leaq 0x67f10(%rip), %rsi     # 0x196029
callq 0x9090
cmpq $0x0, %rax
je 0x12e13d
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x10, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1cc
leaq -0x36(%rbp), %rdi
leaq 0x67ee6(%rip), %rsi     # 0x19602e
callq 0x9090
cmpq $0x0, %rax
je 0x12e169
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x11, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1ca
leaq -0x36(%rbp), %rdi
leaq 0x67ebf(%rip), %rsi     # 0x196033
callq 0x9090
cmpq $0x0, %rax
je 0x12e195
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x12, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1c8
leaq -0x36(%rbp), %rdi
leaq 0x67e98(%rip), %rsi     # 0x196038
callq 0x9090
cmpq $0x0, %rax
je 0x12e1c1
movq -0x28(%rbp), %rdi
movl -0x48(%rbp), %esi
movl $0x13, %edx
callq 0x12d700
movl %eax, -0x48(%rbp)
jmp 0x12e1c6
jmp 0x12e261
jmp 0x12e1c8
jmp 0x12e1ca
jmp 0x12e1cc
jmp 0x12e1ce
jmp 0x12e1d0
jmp 0x12e1d2
jmp 0x12e1d4
jmp 0x12e1d6
jmp 0x12e1d8
jmp 0x12e1da
jmp 0x12e1dc
jmp 0x12e1de
jmp 0x12e1e0
jmp 0x12e1e2
jmp 0x12e1e4
jmp 0x12e1e6
jmp 0x12e1e8
jmp 0x12e1ea
jmp 0x12e1ec
jmp 0x12e1ee
jmp 0x12e1f0
jmp 0x12e1f2
jmp 0x12e1f4
jmp 0x12e1f6
jmp 0x12e1f8
jmp 0x12e1fa
jmp 0x12e1fc
jmp 0x12e1fe
jmp 0x12e200
jmp 0x12e202
jmp 0x12e204
jmp 0x12e206
jmp 0x12e208
jmp 0x12e20a
jmp 0x12e20c
jmp 0x12e20e
jmp 0x12e210
jmp 0x12e212
jmp 0x12e214
jmp 0x12e216
jmp 0x12e218
jmp 0x12e21a
jmp 0x12e21c
jmp 0x12e21e
jmp 0x12e220
jmp 0x12e222
jmp 0x12e224
jmp 0x12e226
jmp 0x12e228
movl -0x48(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x48(%rbp)
movl $0x0, -0x44(%rbp)
movb $0x0, -0x36(%rbp)
cmpl $0x1b, -0x48(%rbp)
jl 0x12e244
jmp 0x12e26f
jmp 0x12e24a
movb $0x0, -0x36(%rbp)
jmp 0x12e24c
movq -0x18(%rbp), %rax
movslq -0x2c(%rbp), %rcx
movsbl (%rax,%rcx), %eax
cmpl $0x0, %eax
jne 0x12e25f
jmp 0x12e26f
jmp 0x12e261
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x12d7ff
cmpl $0x0, -0x48(%rbp)
jne 0x12e74a
leaq 0x23e2a8(%rip), %rax    # 0x36c528
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e2a5
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0xd, (%rax,%rcx,4)
jmp 0x12e2dd
leaq 0x23e278(%rip), %rax    # 0x36c524
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e2db
leaq 0x16f4af(%rip), %rax    # 0x29d76c
cmpl $0x0, (%rax)
je 0x12e2db
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0xd, (%rax,%rcx,4)
jmp 0x12e2dd
leaq 0x23e254(%rip), %rax    # 0x36c538
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e307
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0xe, (%rax,%rcx,4)
leaq 0x23e23a(%rip), %rax    # 0x36c548
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e331
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0xf, (%rax,%rcx,4)
leaq 0x23e220(%rip), %rax    # 0x36c558
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e35b
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x10, (%rax,%rcx,4)
leaq 0x23e206(%rip), %rax    # 0x36c568
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e385
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x11, (%rax,%rcx,4)
leaq 0x23e1ec(%rip), %rax    # 0x36c578
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e3af
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x12, (%rax,%rcx,4)
leaq 0x23e1d2(%rip), %rax    # 0x36c588
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e3d9
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x13, (%rax,%rcx,4)
leaq 0x23e144(%rip), %rax    # 0x36c524
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
jne 0x12e3fb
leaq 0x23e143(%rip), %rax    # 0x36c534
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e414
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x14, (%rax,%rcx,4)
leaq 0x23e129(%rip), %rax    # 0x36c544
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e43e
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x15, (%rax,%rcx,4)
leaq 0x23e10f(%rip), %rax    # 0x36c554
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e468
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x16, (%rax,%rcx,4)
leaq 0x23e0f5(%rip), %rax    # 0x36c564
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e492
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x17, (%rax,%rcx,4)
leaq 0x23e0db(%rip), %rax    # 0x36c574
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e4bc
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x18, (%rax,%rcx,4)
leaq 0x23e0c1(%rip), %rax    # 0x36c584
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e4e6
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x19, (%rax,%rcx,4)
leaq 0x1495c3(%rip), %rax    # 0x277ab0
cmpq $0x20, (%rax)
jne 0x12e4f8
jmp 0x12e61e
leaq 0x1495b1(%rip), %rax    # 0x277ab0
cmpq $0x80, (%rax)
jne 0x12e50d
jmp 0x12e61c
leaq 0x23e00c(%rip), %rax    # 0x36c520
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
jne 0x12e52f
leaq 0x23e00b(%rip), %rax    # 0x36c530
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e548
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x7, (%rax,%rcx,4)
leaq 0x23dff1(%rip), %rax    # 0x36c540
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e572
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x8, (%rax,%rcx,4)
leaq 0x23dfd7(%rip), %rax    # 0x36c550
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e59c
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x9, (%rax,%rcx,4)
leaq 0x23dfbd(%rip), %rax    # 0x36c560
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e5c6
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0xa, (%rax,%rcx,4)
leaq 0x23dfa3(%rip), %rax    # 0x36c570
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e5f0
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0xb, (%rax,%rcx,4)
leaq 0x23df89(%rip), %rax    # 0x36c580
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e61a
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0xc, (%rax,%rcx,4)
jmp 0x12e61c
jmp 0x12e61e
leaq 0x23df07(%rip), %rax    # 0x36c52c
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e64a
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x1, (%rax,%rcx,4)
jmp 0x12e676
leaq 0x23deeb(%rip), %rax    # 0x36c53c
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e674
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x1, (%rax,%rcx,4)
jmp 0x12e676
leaq 0x23decf(%rip), %rax    # 0x36c54c
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e6a0
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x2, (%rax,%rcx,4)
leaq 0x23deb5(%rip), %rax    # 0x36c55c
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e6ca
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x3, (%rax,%rcx,4)
leaq 0x23de9b(%rip), %rax    # 0x36c56c
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e6f4
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x4, (%rax,%rcx,4)
leaq 0x23de81(%rip), %rax    # 0x36c57c
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e71e
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x5, (%rax,%rcx,4)
leaq 0x23de67(%rip), %rax    # 0x36c58c
movl (%rax), %eax
andl -0x1c(%rbp), %eax
cmpl $0x0, %eax
je 0x12e748
movq -0x28(%rbp), %rax
movl -0x48(%rbp), %ecx
movl %ecx, %edx
addl $0x1, %edx
movl %edx, -0x48(%rbp)
movslq %ecx, %rcx
movl $0x6, (%rax,%rcx,4)
jmp 0x12e74a
leaq 0x16f00f(%rip), %rax    # 0x29d760
movsd (%rax), %xmm0
movsd 0x40a83(%rip), %xmm1    # 0x16f1e0
ucomisd %xmm1, %xmm0
jb 0x12ed5d
movl -0x1c(%rbp), %eax
andl $0x1, %eax
cmpl $0x0, %eax
je 0x12e77f
leaq 0x5ae94(%rip), %rax     # 0x18960d
movq %rax, -0x40(%rbp)
jmp 0x12e7f4
movl -0x1c(%rbp), %eax
andl $0x8000, %eax           # imm = 0x8000
cmpl $0x0, %eax
je 0x12e799
leaq 0x56f22(%rip), %rax     # 0x1856b5
movq %rax, -0x40(%rbp)
jmp 0x12e7f2
movl -0x1c(%rbp), %eax
andl $0x2, %eax
cmpl $0x0, %eax
je 0x12e7b1
leaq 0x4ac8e(%rip), %rax     # 0x179439
movq %rax, -0x40(%rbp)
jmp 0x12e7f0
movl -0x1c(%rbp), %eax
andl $0x4, %eax
cmpl $0x0, %eax
je 0x12e7c9
leaq 0x5bf37(%rip), %rax     # 0x18a6fa
movq %rax, -0x40(%rbp)
jmp 0x12e7ee
movl -0x1c(%rbp), %eax
andl $0x8, %eax
cmpl $0x0, %eax
je 0x12e7e1
leaq 0x6343a(%rip), %rax     # 0x191c15
movq %rax, -0x40(%rbp)
jmp 0x12e7ec
leaq 0x585c4(%rip), %rax     # 0x186dac
movq %rax, -0x40(%rbp)
jmp 0x12e7ee
jmp 0x12e7f0
jmp 0x12e7f2
jmp 0x12e7f4
movq -0x40(%rbp), %rdx
movl -0x48(%rbp), %ecx
leaq 0x26cbfe(%rip), %rdi    # 0x39b400
leaq 0x6779c(%rip), %rsi     # 0x195fa5
movb $0x0, %al
callq 0x9060
movl $0xd, -0x4c(%rbp)
leaq 0x6778d(%rip), %rax     # 0x195fab
movq %rax, -0x40(%rbp)
movl $0x0, -0x30(%rbp)
movl $0x0, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
cmpl -0x48(%rbp), %eax
jge 0x12ed3e
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x1, (%rax,%rcx,4)
jne 0x12e86b
leaq 0x26cbaf(%rip), %rdi    # 0x39b400
leaq 0x67767(%rip), %rsi     # 0x195fbf
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecf8
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x2, (%rax,%rcx,4)
jne 0x12e89a
leaq 0x26cb80(%rip), %rdi    # 0x39b400
leaq 0x6773d(%rip), %rsi     # 0x195fc4
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecf6
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x3, (%rax,%rcx,4)
jne 0x12e8c9
leaq 0x26cb51(%rip), %rdi    # 0x39b400
leaq 0x67713(%rip), %rsi     # 0x195fc9
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecf4
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x4, (%rax,%rcx,4)
jne 0x12e8f8
leaq 0x26cb22(%rip), %rdi    # 0x39b400
leaq 0x676e9(%rip), %rsi     # 0x195fce
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecf2
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x5, (%rax,%rcx,4)
jne 0x12e927
leaq 0x26caf3(%rip), %rdi    # 0x39b400
leaq 0x676bf(%rip), %rsi     # 0x195fd3
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecf0
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x6, (%rax,%rcx,4)
jne 0x12e956
leaq 0x26cac4(%rip), %rdi    # 0x39b400
leaq 0x67695(%rip), %rsi     # 0x195fd8
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecee
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x7, (%rax,%rcx,4)
jne 0x12e985
leaq 0x26ca95(%rip), %rdi    # 0x39b400
leaq 0x6766b(%rip), %rsi     # 0x195fdd
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecec
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x8, (%rax,%rcx,4)
jne 0x12e9b4
leaq 0x26ca66(%rip), %rdi    # 0x39b400
leaq 0x67641(%rip), %rsi     # 0x195fe2
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecea
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x9, (%rax,%rcx,4)
jne 0x12e9e3
leaq 0x26ca37(%rip), %rdi    # 0x39b400
leaq 0x67617(%rip), %rsi     # 0x195fe7
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ece8
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xa, (%rax,%rcx,4)
jne 0x12ea12
leaq 0x26ca08(%rip), %rdi    # 0x39b400
leaq 0x675ed(%rip), %rsi     # 0x195fec
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ece6
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xb, (%rax,%rcx,4)
jne 0x12ea41
leaq 0x26c9d9(%rip), %rdi    # 0x39b400
leaq 0x675c3(%rip), %rsi     # 0x195ff1
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ece4
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xc, (%rax,%rcx,4)
jne 0x12ea70
leaq 0x26c9aa(%rip), %rdi    # 0x39b400
leaq 0x67599(%rip), %rsi     # 0x195ff6
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ece2
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xd, (%rax,%rcx,4)
jne 0x12ea9f
leaq 0x26c97b(%rip), %rdi    # 0x39b400
leaq 0x6756f(%rip), %rsi     # 0x195ffb
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ece0
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xe, (%rax,%rcx,4)
jne 0x12eace
leaq 0x26c94c(%rip), %rdi    # 0x39b400
leaq 0x67545(%rip), %rsi     # 0x196000
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecde
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xf, (%rax,%rcx,4)
jne 0x12eafd
leaq 0x26c91d(%rip), %rdi    # 0x39b400
leaq 0x6751b(%rip), %rsi     # 0x196005
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecdc
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x10, (%rax,%rcx,4)
jne 0x12eb2c
leaq 0x26c8ee(%rip), %rdi    # 0x39b400
leaq 0x674f1(%rip), %rsi     # 0x19600a
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecda
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x11, (%rax,%rcx,4)
jne 0x12eb5b
leaq 0x26c8bf(%rip), %rdi    # 0x39b400
leaq 0x674c7(%rip), %rsi     # 0x19600f
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecd8
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x12, (%rax,%rcx,4)
jne 0x12eb8a
leaq 0x26c890(%rip), %rdi    # 0x39b400
leaq 0x6749d(%rip), %rsi     # 0x196014
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecd6
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x13, (%rax,%rcx,4)
jne 0x12ebb9
leaq 0x26c861(%rip), %rdi    # 0x39b400
leaq 0x67473(%rip), %rsi     # 0x196019
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecd4
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x14, (%rax,%rcx,4)
jne 0x12ebe8
leaq 0x26c832(%rip), %rdi    # 0x39b400
leaq 0x67449(%rip), %rsi     # 0x19601e
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecd2
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x15, (%rax,%rcx,4)
jne 0x12ec17
leaq 0x26c803(%rip), %rdi    # 0x39b400
leaq 0x6741f(%rip), %rsi     # 0x196023
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecd0
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x16, (%rax,%rcx,4)
jne 0x12ec46
leaq 0x26c7d4(%rip), %rdi    # 0x39b400
leaq 0x673f5(%rip), %rsi     # 0x196028
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecce
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x17, (%rax,%rcx,4)
jne 0x12ec72
leaq 0x26c7a5(%rip), %rdi    # 0x39b400
leaq 0x673cb(%rip), %rsi     # 0x19602d
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12eccc
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x18, (%rax,%rcx,4)
jne 0x12ec9e
leaq 0x26c779(%rip), %rdi    # 0x39b400
leaq 0x673a4(%rip), %rsi     # 0x196032
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecca
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x19, (%rax,%rcx,4)
jne 0x12ecc8
leaq 0x26c74d(%rip), %rdi    # 0x39b400
leaq 0x6737d(%rip), %rsi     # 0x196037
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12ecca
jmp 0x12eccc
jmp 0x12ecce
jmp 0x12ecd0
jmp 0x12ecd2
jmp 0x12ecd4
jmp 0x12ecd6
jmp 0x12ecd8
jmp 0x12ecda
jmp 0x12ecdc
jmp 0x12ecde
jmp 0x12ece0
jmp 0x12ece2
jmp 0x12ece4
jmp 0x12ece6
jmp 0x12ece8
jmp 0x12ecea
jmp 0x12ecec
jmp 0x12ecee
jmp 0x12ecf0
jmp 0x12ecf2
jmp 0x12ecf4
jmp 0x12ecf6
jmp 0x12ecf8
movl -0x30(%rbp), %eax
cmpl -0x4c(%rbp), %eax
jl 0x12ed2e
movq -0x10(%rbp), %rdi
movq -0x40(%rbp), %rdx
leaq 0x26c6f1(%rip), %rsi    # 0x39b400
callq 0x10d750
leaq 0x26c6e5(%rip), %rdi    # 0x39b400
leaq 0x570bd(%rip), %rsi     # 0x185ddf
callq 0x9350
movl $0x0, -0x30(%rbp)
jmp 0x12ed30
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x12e830
cmpl $0x0, -0x30(%rbp)
je 0x12ed58
movq -0x10(%rbp), %rdi
movq -0x40(%rbp), %rdx
leaq 0x26c6ad(%rip), %rsi    # 0x39b400
callq 0x10d750
jmp 0x12f2bf
movl -0x48(%rbp), %edx
leaq 0x26c699(%rip), %rdi    # 0x39b400
leaq 0x5c47a(%rip), %rsi     # 0x18b1e8
movb $0x0, %al
callq 0x9060
movl $0x9, -0x4c(%rbp)
leaq 0x672b9(%rip), %rax     # 0x19603c
movq %rax, -0x40(%rbp)
movl $0x0, -0x30(%rbp)
movl $0x0, -0x2c(%rbp)
movl -0x2c(%rbp), %eax
cmpl -0x48(%rbp), %eax
jge 0x12f2a3
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x1, (%rax,%rcx,4)
jne 0x12edd0
leaq 0x26c64a(%rip), %rdi    # 0x39b400
leaq 0x67293(%rip), %rsi     # 0x196050
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f25d
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x2, (%rax,%rcx,4)
jne 0x12edff
leaq 0x26c61b(%rip), %rdi    # 0x39b400
leaq 0x6726b(%rip), %rsi     # 0x196057
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f25b
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x3, (%rax,%rcx,4)
jne 0x12ee2e
leaq 0x26c5ec(%rip), %rdi    # 0x39b400
leaq 0x67243(%rip), %rsi     # 0x19605e
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f259
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x4, (%rax,%rcx,4)
jne 0x12ee5d
leaq 0x26c5bd(%rip), %rdi    # 0x39b400
leaq 0x6721b(%rip), %rsi     # 0x196065
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f257
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x5, (%rax,%rcx,4)
jne 0x12ee8c
leaq 0x26c58e(%rip), %rdi    # 0x39b400
leaq 0x671f3(%rip), %rsi     # 0x19606c
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f255
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x6, (%rax,%rcx,4)
jne 0x12eebb
leaq 0x26c55f(%rip), %rdi    # 0x39b400
leaq 0x671cb(%rip), %rsi     # 0x196073
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f253
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x7, (%rax,%rcx,4)
jne 0x12eeea
leaq 0x26c530(%rip), %rdi    # 0x39b400
leaq 0x671a3(%rip), %rsi     # 0x19607a
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f251
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x8, (%rax,%rcx,4)
jne 0x12ef19
leaq 0x26c501(%rip), %rdi    # 0x39b400
leaq 0x6717b(%rip), %rsi     # 0x196081
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f24f
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x9, (%rax,%rcx,4)
jne 0x12ef48
leaq 0x26c4d2(%rip), %rdi    # 0x39b400
leaq 0x67153(%rip), %rsi     # 0x196088
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f24d
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xa, (%rax,%rcx,4)
jne 0x12ef77
leaq 0x26c4a3(%rip), %rdi    # 0x39b400
leaq 0x6712b(%rip), %rsi     # 0x19608f
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f24b
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xb, (%rax,%rcx,4)
jne 0x12efa6
leaq 0x26c474(%rip), %rdi    # 0x39b400
leaq 0x67103(%rip), %rsi     # 0x196096
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f249
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xc, (%rax,%rcx,4)
jne 0x12efd5
leaq 0x26c445(%rip), %rdi    # 0x39b400
leaq 0x670db(%rip), %rsi     # 0x19609d
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f247
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xd, (%rax,%rcx,4)
jne 0x12f004
leaq 0x26c416(%rip), %rdi    # 0x39b400
leaq 0x670b3(%rip), %rsi     # 0x1960a4
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f245
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xe, (%rax,%rcx,4)
jne 0x12f033
leaq 0x26c3e7(%rip), %rdi    # 0x39b400
leaq 0x6708b(%rip), %rsi     # 0x1960ab
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f243
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0xf, (%rax,%rcx,4)
jne 0x12f062
leaq 0x26c3b8(%rip), %rdi    # 0x39b400
leaq 0x67063(%rip), %rsi     # 0x1960b2
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f241
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x10, (%rax,%rcx,4)
jne 0x12f091
leaq 0x26c389(%rip), %rdi    # 0x39b400
leaq 0x6703b(%rip), %rsi     # 0x1960b9
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f23f
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x11, (%rax,%rcx,4)
jne 0x12f0c0
leaq 0x26c35a(%rip), %rdi    # 0x39b400
leaq 0x67013(%rip), %rsi     # 0x1960c0
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f23d
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x12, (%rax,%rcx,4)
jne 0x12f0ef
leaq 0x26c32b(%rip), %rdi    # 0x39b400
leaq 0x66feb(%rip), %rsi     # 0x1960c7
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f23b
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x13, (%rax,%rcx,4)
jne 0x12f11e
leaq 0x26c2fc(%rip), %rdi    # 0x39b400
leaq 0x66fc3(%rip), %rsi     # 0x1960ce
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f239
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x14, (%rax,%rcx,4)
jne 0x12f14d
leaq 0x26c2cd(%rip), %rdi    # 0x39b400
leaq 0x66f9b(%rip), %rsi     # 0x1960d5
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f237
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x15, (%rax,%rcx,4)
jne 0x12f17c
leaq 0x26c29e(%rip), %rdi    # 0x39b400
leaq 0x66f73(%rip), %rsi     # 0x1960dc
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f235
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x16, (%rax,%rcx,4)
jne 0x12f1ab
leaq 0x26c26f(%rip), %rdi    # 0x39b400
leaq 0x66f4b(%rip), %rsi     # 0x1960e3
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f233
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x17, (%rax,%rcx,4)
jne 0x12f1d7
leaq 0x26c240(%rip), %rdi    # 0x39b400
leaq 0x66f23(%rip), %rsi     # 0x1960ea
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f231
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x18, (%rax,%rcx,4)
jne 0x12f203
leaq 0x26c214(%rip), %rdi    # 0x39b400
leaq 0x66efe(%rip), %rsi     # 0x1960f1
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f22f
movq -0x28(%rbp), %rax
movslq -0x2c(%rbp), %rcx
cmpl $0x19, (%rax,%rcx,4)
jne 0x12f22d
leaq 0x26c1e8(%rip), %rdi    # 0x39b400
leaq 0x66ed9(%rip), %rsi     # 0x1960f8
callq 0x96a0
movl -0x30(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x30(%rbp)
jmp 0x12f22f
jmp 0x12f231
jmp 0x12f233
jmp 0x12f235
jmp 0x12f237
jmp 0x12f239
jmp 0x12f23b
jmp 0x12f23d
jmp 0x12f23f
jmp 0x12f241
jmp 0x12f243
jmp 0x12f245
jmp 0x12f247
jmp 0x12f249
jmp 0x12f24b
jmp 0x12f24d
jmp 0x12f24f
jmp 0x12f251
jmp 0x12f253
jmp 0x12f255
jmp 0x12f257
jmp 0x12f259
jmp 0x12f25b
jmp 0x12f25d
movl -0x30(%rbp), %eax
cmpl -0x4c(%rbp), %eax
jl 0x12f293
movq -0x10(%rbp), %rdi
movq -0x40(%rbp), %rdx
leaq 0x26c18c(%rip), %rsi    # 0x39b400
callq 0x10d750
leaq 0x26c180(%rip), %rdi    # 0x39b400
leaq 0x56b58(%rip), %rsi     # 0x185ddf
callq 0x9350
movl $0x0, -0x30(%rbp)
jmp 0x12f295
movl -0x2c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x2c(%rbp)
jmp 0x12ed95
cmpl $0x0, -0x30(%rbp)
je 0x12f2bd
movq -0x10(%rbp), %rdi
movq -0x40(%rbp), %rdx
leaq 0x26c148(%rip), %rsi    # 0x39b400
callq 0x10d750
jmp 0x12f2bf
movl -0x48(%rbp), %eax
movl %eax, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x50, %rsp
popq %rbp
retq
nop