// File: jkingan[P]ladyheather/heathgps.cpp
// Function: decode_uccm_msg(int)
void decode_uccm_msg(int why)
{
char c;
int i, j;

   start_msg_decode(0);

   nmea_msg[0] = 0;
   j = 0;
   for(i=0; i<tsip_wptr; i++) {  // copy message from tsip buffer to nmea buffer
      c = tsip_byte();
      nmea_msg[j++] = c;
      nmea_msg[j] = 0;
      if(i >= ((int)sizeof(nmea_msg)-12)) break;
   }

   tsip_wptr = tsip_rptr = 0;
   tsip_sync = 0;

   // get the response from the receiver and pass it to (HOPEFULLY) the routine
   // that expects it...

   strupr(nmea_msg);

if(debug_file) fprintf(debug_file, "Decode uccm msg %d:%s\n", uccm_msg_id, nmea_msg);

   if(strstr(nmea_msg, "UCCM-L")) {  // samsung ID message (-LPK, -L8)
   }
   else if(strstr(nmea_msg, "UCCM-P")) {  // UCCM error response?
      if(user_set_scpi_type == 0) scpi_type = UCCMP_TYPE; // samsung
      uccm_msg_id = 0;
      return;
   }
   else if(strstr(nmea_msg, "UCCM")) {  // UCCM error response?
      uccm_msg_id = 0;
      return;
   }
   else if(strstr(nmea_msg, "COMMAND COMPLETE")) {
      if(uccm_msg_id == SCPI_IGNORE_MSG) {  // null response to ignore message - no sats exclued
         sats_enabled = 0xFFFFFFFF;
         update_disable_list(sats_enabled);
      }
      uccm_msg_id = 0;
      return;
   }
   else if(strstr(nmea_msg, "COMMAND ERROR")) {
      uccm_msg_id = 0;
      return;
   }
   else if(strstr(nmea_msg, "UNDEFINED HEADER")) {
      uccm_msg_id = 0;
      return;
   }
   else if(strstr(nmea_msg, "INVALID PARAMETER")) {
      uccm_msg_id = 0;
      return;
   }
   else if(strstr(nmea_msg, "DATA OUT OF RANGE")) {  // samsung
      uccm_msg_id = 0;
      return;
   }
   else if(strstr(nmea_msg, "CORRUPT")) {  // "Data corrupt or stale" uccmp
      uccm_msg_id = 0;
      return;
   }
   else if((nmea_msg[0] == 'C') && (nmea_msg[1] == '5')) {  // time string 132 bytes (44 values) long
      parse_uccm_time(123);

      uccm_time:
if(1 || have_uccm_loop) {
   send_polled_cmd("SYNC:TINT?", SCPI_TINT_MSG);
   poll_next_uccm();
}

if(1 || (scpi_type != UCCMP_TYPE)) {  //kkkkkkkkkkkkk
   poll_next_uccm();
   poll_next_uccm();
   poll_next_uccm();
//poll_next_uccm();
//poll_next_uccm();
//poll_next_uccm();
}
      return;
   }
   else if(uccm_msg_id == 0) {
if(debug_file) fprintf(debug_file, "response to:%s (status msg:%d) is next\n", nmea_msg, scpi_status);
      if     (strstr(nmea_msg, "GPS:POS?"))                uccm_msg_id = SCPI_POSN_MSG;
      else if(strstr(nmea_msg, "SYNC:TINT?"))              uccm_msg_id = SCPI_TINT_MSG;
      else if(strstr(nmea_msg, "ALARM:HARD?"))             uccm_msg_id = UCCM_GET_HW_ALARM;
      else if(strstr(nmea_msg, "ALARM:OPER?"))             uccm_msg_id = UCCM_GET_OPER_ALARM;
      else if(strstr(nmea_msg, "DIAG:ROSC:EFC:REL?"))      uccm_msg_id = SCPI_EFC_MSG;
      else if(strstr(nmea_msg, "LED:GPSL?"))               uccm_msg_id = UCCM_LED_MSG;
      else if(strstr(nmea_msg, ":GPS:POS:SURV:STAT?"))     uccm_msg_id = SCPI_SURVEY_MSG;
      else if(strstr(nmea_msg, ":GPS:POS:SURV:PROG?"))     uccm_msg_id = SCPI_PROGRESS_MSG;
      else if(strstr(nmea_msg, ":GPS:POS:SURV:STAT ONCE")) uccm_msg_id = SCPI_SURVEY_MSG;
      else if(strstr(nmea_msg, "ROSC:HOLD:DUR?"))          uccm_msg_id = SCPI_HOLDOVER_MSG;
      else if(strstr(nmea_msg, "SYNC:IMM"))                uccm_msg_id = SCPI_JAMSYNC_MSG;
      else if(strstr(nmea_msg, "DIAG:ROSC:EFC:DATA?"))     uccm_msg_id = UCCM_EFC_MSG;
      else if(strstr(nmea_msg, "GPS:SAT:TRAC:EMAN?"))      uccm_msg_id = SCPI_ELEV_MSG;
      else if(strstr(nmea_msg, "GPS:SAT:TRAC:IGN?"))       uccm_msg_id = SCPI_IGNORE_MSG;
      else if(strstr(nmea_msg, "GPS:REF:ADEL?"))           uccm_msg_id = SCPI_GET_CABLE_MSG;
      else if(strstr(nmea_msg, "GPS:REF:ADEL "))           uccm_msg_id = SCPI_SET_CABLE_MSG;
      else if(strstr(nmea_msg, "PULLINRANGE?"))            uccm_msg_id = UCCM_GET_PULLIN_MSG;
      else if(strstr(nmea_msg, "PULLINRANGE"))             uccm_msg_id = UCCM_SET_PULLIN_MSG;
      else if(strstr(nmea_msg, "OUTP:TP:SEL?"))            uccm_msg_id = UCCM_RATE_MSG;
      else if(strstr(nmea_msg, "OUTP:STAT?"))              uccm_msg_id = UCCM_STATE_MSG;
      else if(strstr(nmea_msg, "*IDN?"))                   uccm_msg_id = SCPI_ID_MSG;
      else if(strstr(nmea_msg, "*TST?"))                   uccm_msg_id = SCPI_TEST_MSG;
      else if(strstr(nmea_msg, "SYST:STAT?")) {
         uccm_msg_id = UCCM_STATUS_MSG;
         parse_scpi_status();
      }
      else if(strstr(nmea_msg, "DIAG:LOOP?")) {
         uccm_msg_id = SCPI_EFC_MSG;
         parse_uccm_loop();
      }
      else if(strstr(nmea_msg, "C5")) {  //kkkkkkkkk
         uccm_msg_id = 0;
         parse_uccm_time(144);
         goto uccm_time;
      }
      return;
   }

if(debug_file) fprintf(debug_file, "uccm %d response:%s\n", uccm_msg_id, nmea_msg);
   if     (uccm_msg_id == SCPI_POSN_MSG)       parse_scpi_posn();
   else if(uccm_msg_id == SCPI_TINT_MSG)       parse_scpi_tint();
   else if(uccm_msg_id == SCPI_EFC_MSG)        parse_scpi_efc();
   else if(uccm_msg_id == UCCM_LED_MSG)        parse_uccm_led();
   else if(uccm_msg_id == UCCM_EFC_MSG)        parse_uccm_efc();
   else if(uccm_msg_id == SCPI_TEST_MSG)       parse_scpi_test();
   else if(uccm_msg_id == SCPI_ELEV_MSG)       parse_scpi_elev();
   else if(uccm_msg_id == SCPI_IGNORE_MSG)     parse_scpi_ignore();
   else if(uccm_msg_id == SCPI_GET_CABLE_MSG)  parse_scpi_cable();
   else if(uccm_msg_id == SCPI_SET_CABLE_MSG)  parse_scpi_cable();
   else if(uccm_msg_id == SCPI_ID_MSG)         parse_scpi_id();
   else if(uccm_msg_id == SCPI_SURVEY_MSG)     parse_scpi_survey();
   else if(uccm_msg_id == SCPI_PROGRESS_MSG)   parse_scpi_progress();
   else if(uccm_msg_id == SCPI_JAMSYNC_MSG)    parse_scpi_jamsync();
   else if(uccm_msg_id == SCPI_HOLDOVER_MSG)   parse_scpi_holdover();
   else if(uccm_msg_id == UCCM_RATE_MSG)       parse_uccm_rate();
   else if(uccm_msg_id == UCCM_STATE_MSG)      parse_uccm_state();
   else if(uccm_msg_id == UCCM_GET_PULLIN_MSG) parse_uccm_pullin();
   else if(uccm_msg_id == UCCM_GET_HW_ALARM)   parse_uccm_hw_alarm();
   else if(uccm_msg_id == UCCM_GET_OPER_ALARM) parse_uccm_oper_alarm();
   else if(uccm_msg_id == UCCM_STATUS_MSG) {
      if(strstr(nmea_msg, "TEMP = ")) {  // samsung temperature value
         parse_uccm_temp();
      }
   }
   uccm_msg_id = 0;

   if(sim_file && sim_delay) {  // throttle sim file messages
      Sleep(sim_delay);
   }
   saw_rcvr_msg = 1;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movl %edi, -0x4(%rbp)
xorl %edi, %edi
callq 0xae4a0
leaq 0x2c0ab7(%rip), %rax    # 0x39aa10
movb $0x0, (%rax)
movl $0x0, -0x10(%rbp)
movl $0x0, -0xc(%rbp)
movl -0xc(%rbp), %eax
leaq 0x2bd4be(%rip), %rcx    # 0x397432
movzwl (%rcx), %ecx
cmpl %ecx, %eax
jge 0xd9fc5
callq 0x7a510
movb %al, -0x5(%rbp)
movb -0x5(%rbp), %dl
movl -0x10(%rbp), %eax
movl %eax, %ecx
addl $0x1, %ecx
movl %ecx, -0x10(%rbp)
movslq %eax, %rcx
leaq 0x2c0a75(%rip), %rax    # 0x39aa10
movb %dl, (%rax,%rcx)
movslq -0x10(%rbp), %rcx
leaq 0x2c0a67(%rip), %rax    # 0x39aa10
movb $0x0, (%rax,%rcx)
cmpl $0x1f5, -0xc(%rbp)      # imm = 0x1F5
jl 0xd9fb8
jmp 0xd9fc5
jmp 0xd9fba
movl -0xc(%rbp), %eax
addl $0x1, %eax
movl %eax, -0xc(%rbp)
jmp 0xd9f6a
leaq 0x2bd468(%rip), %rax    # 0x397434
movw $0x0, (%rax)
leaq 0x2bd45a(%rip), %rax    # 0x397432
movw $0x0, (%rax)
leaq 0x2bd452(%rip), %rax    # 0x397436
movw $0x0, (%rax)
leaq 0x2c0a20(%rip), %rdi    # 0x39aa10
callq 0x9890
leaq 0x1c3574(%rip), %rax    # 0x29d570
cmpq $0x0, (%rax)
je 0xda027
leaq 0x1c3567(%rip), %rax    # 0x29d570
movq (%rax), %rdi
movl 0x2f70c2(%rip), %edx    # 0x3d10d4
leaq 0xae91e(%rip), %rsi     # 0x188937
leaq 0x2c09f0(%rip), %rcx    # 0x39aa10
movb $0x0, %al
callq 0x9550
leaq 0x2c09e2(%rip), %rdi    # 0x39aa10
leaq 0xae301(%rip), %rsi     # 0x188336
callq 0x9090
cmpq $0x0, %rax
je 0xda045
jmp 0xda693
leaq 0x2c09c4(%rip), %rdi    # 0x39aa10
leaq 0xae8fb(%rip), %rsi     # 0x18894e
callq 0x9090
cmpq $0x0, %rax
je 0xda086
leaq 0x19da67(%rip), %rax    # 0x277acc
cmpl $0x0, (%rax)
jne 0xda077
leaq 0x1a014f(%rip), %rax    # 0x27a1c0
movl $0x50, (%rax)
movl $0x0, 0x2f7053(%rip)    # 0x3d10d4
jmp 0xda8c5
leaq 0x2c0983(%rip), %rdi    # 0x39aa10
leaq 0xae8c1(%rip), %rsi     # 0x188955
callq 0x9090
cmpq $0x0, %rax
je 0xda0ae
movl $0x0, 0x2f702b(%rip)    # 0x3d10d4
jmp 0xda8c5
leaq 0x2c095b(%rip), %rdi    # 0x39aa10
leaq 0xae89e(%rip), %rsi     # 0x18895a
callq 0x9090
cmpq $0x0, %rax
je 0xda0fa
cmpl $0x1e, 0x2f7006(%rip)   # 0x3d10d4
jne 0xda0eb
leaq 0x2921ed(%rip), %rax    # 0x36c2c4
movl $0xffffffff, (%rax)     # imm = 0xFFFFFFFF
leaq 0x2921e0(%rip), %rax    # 0x36c2c4
movl (%rax), %edi
callq 0x81cb0
movl $0x0, 0x2f6fdf(%rip)    # 0x3d10d4
jmp 0xda8c5
leaq 0x2c090f(%rip), %rdi    # 0x39aa10
leaq 0xae863(%rip), %rsi     # 0x18896b
callq 0x9090
cmpq $0x0, %rax
je 0xda122
movl $0x0, 0x2f6fb7(%rip)    # 0x3d10d4
jmp 0xda8c5
leaq 0x2c08e7(%rip), %rdi    # 0x39aa10
leaq 0xae849(%rip), %rsi     # 0x188979
callq 0x9090
cmpq $0x0, %rax
je 0xda14a
movl $0x0, 0x2f6f8f(%rip)    # 0x3d10d4
jmp 0xda8c5
leaq 0x2c08bf(%rip), %rdi    # 0x39aa10
leaq 0xae832(%rip), %rsi     # 0x18898a
callq 0x9090
cmpq $0x0, %rax
je 0xda172
movl $0x0, 0x2f6f67(%rip)    # 0x3d10d4
jmp 0xda8c5
leaq 0x2c0897(%rip), %rdi    # 0x39aa10
leaq 0xae81c(%rip), %rsi     # 0x18899c
callq 0x9090
cmpq $0x0, %rax
je 0xda19a
movl $0x0, 0x2f6f3f(%rip)    # 0x3d10d4
jmp 0xda8c5
leaq 0x2c086f(%rip), %rdi    # 0x39aa10
leaq 0xb1c34(%rip), %rsi     # 0x18bddc
callq 0x9090
cmpq $0x0, %rax
je 0xda1c2
movl $0x0, 0x2f6f17(%rip)    # 0x3d10d4
jmp 0xda8c5
leaq 0x2c0847(%rip), %rax    # 0x39aa10
movsbl (%rax), %eax
cmpl $0x43, %eax
jne 0xda215
leaq 0x2c0838(%rip), %rax    # 0x39aa10
movsbl 0x1(%rax), %eax
cmpl $0x35, %eax
jne 0xda215
movl $0x7b, %edi
callq 0xd9aa0
leaq 0xae7bc(%rip), %rdi     # 0x1889ae
movl $0x10, %esi
callq 0x96370
callq 0x98dd0
callq 0x98dd0
callq 0x98dd0
callq 0x98dd0
jmp 0xda8c5
cmpl $0x0, 0x2f6eb8(%rip)    # 0x3d10d4
jne 0xda67f
leaq 0x1c3347(%rip), %rax    # 0x29d570
cmpq $0x0, (%rax)
je 0xda254
leaq 0x1c333a(%rip), %rax    # 0x29d570
movq (%rax), %rdi
movl 0x2f4f75(%rip), %ecx    # 0x3cf1b4
leaq 0xae773(%rip), %rsi     # 0x1889b9
leaq 0x2c07c3(%rip), %rdx    # 0x39aa10
movb $0x0, %al
callq 0x9550
leaq 0x2c07b5(%rip), %rdi    # 0x39aa10
leaq 0xae47b(%rip), %rsi     # 0x1886dd
callq 0x9090
cmpq $0x0, %rax
je 0xda27c
movl $0x15, 0x2f6e5d(%rip)   # 0x3d10d4
jmp 0xda67a
leaq 0x2c078d(%rip), %rdi    # 0x39aa10
leaq 0xae724(%rip), %rsi     # 0x1889ae
callq 0x9090
cmpq $0x0, %rax
je 0xda2a4
movl $0x10, 0x2f6e35(%rip)   # 0x3d10d4
jmp 0xda678
leaq 0x2c0765(%rip), %rdi    # 0x39aa10
leaq 0xae629(%rip), %rsi     # 0x1888db
callq 0x9090
cmpq $0x0, %rax
je 0xda2cc
movl $0x6e, 0x2f6e0d(%rip)   # 0x3d10d4
jmp 0xda676
leaq 0x2c073d(%rip), %rdi    # 0x39aa10
leaq 0xae60d(%rip), %rsi     # 0x1888e7
callq 0x9090
cmpq $0x0, %rax
je 0xda2f4
movl $0x6f, 0x2f6de5(%rip)   # 0x3d10d4
jmp 0xda674
leaq 0x2c0715(%rip), %rdi    # 0x39aa10
leaq 0xae5c6(%rip), %rsi     # 0x1888c8
callq 0x9090
cmpq $0x0, %rax
je 0xda31c
movl $0xb, 0x2f6dbd(%rip)    # 0x3d10d4
jmp 0xda672
leaq 0x2c06ed(%rip), %rdi    # 0x39aa10
leaq 0xaa791(%rip), %rsi     # 0x184abb
callq 0x9090
cmpq $0x0, %rax
je 0xda344
movl $0x69, 0x2f6d95(%rip)   # 0x3d10d4
jmp 0xda670
leaq 0x2c06c5(%rip), %rdi    # 0x39aa10
leaq 0xaa663(%rip), %rsi     # 0x1849b5
callq 0x9090
cmpq $0x0, %rax
je 0xda36c
movl $0x13, 0x2f6d6d(%rip)   # 0x3d10d4
jmp 0xda66e
leaq 0x2c069d(%rip), %rdi    # 0x39aa10
leaq 0xae3e2(%rip), %rsi     # 0x18875c
callq 0x9090
cmpq $0x0, %rax
je 0xda394
movl $0x12, 0x2f6d45(%rip)   # 0x3d10d4
jmp 0xda66c
leaq 0x2c0675(%rip), %rdi    # 0x39aa10
leaq 0xaa8ad(%rip), %rsi     # 0x184c4f
callq 0x9090
cmpq $0x0, %rax
je 0xda3bc
movl $0x13, 0x2f6d1d(%rip)   # 0x3d10d4
jmp 0xda66a
leaq 0x2c064d(%rip), %rdi    # 0x39aa10
leaq 0xaa3b4(%rip), %rsi     # 0x18477e
callq 0x9090
cmpq $0x0, %rax
je 0xda3e4
movl $0x16, 0x2f6cf5(%rip)   # 0x3d10d4
jmp 0xda668
leaq 0x2c0625(%rip), %rdi    # 0x39aa10
leaq 0xaa382(%rip), %rsi     # 0x184774
callq 0x9090
cmpq $0x0, %rax
je 0xda40c
movl $0x21, 0x2f6ccd(%rip)   # 0x3d10d4
jmp 0xda666
leaq 0x2c05fd(%rip), %rdi    # 0x39aa10
leaq 0xaa1f2(%rip), %rsi     # 0x18460c
callq 0x9090
cmpq $0x0, %rax
je 0xda434
movl $0x67, 0x2f6ca5(%rip)   # 0x3d10d4
jmp 0xda664
leaq 0x2c05d5(%rip), %rdi    # 0x39aa10
leaq 0xa9db4(%rip), %rsi     # 0x1841f6
callq 0x9090
cmpq $0x0, %rax
je 0xda45c
movl $0xa, 0x2f6c7d(%rip)    # 0x3d10d4
jmp 0xda662
leaq 0x2c05ad(%rip), %rdi    # 0x39aa10
leaq 0xa9a98(%rip), %rsi     # 0x183f02
callq 0x9090
cmpq $0x0, %rax
je 0xda484
movl $0x1e, 0x2f6c55(%rip)   # 0x3d10d4
jmp 0xda660
leaq 0x2c0585(%rip), %rdi    # 0x39aa10
leaq 0xa9f58(%rip), %rsi     # 0x1843ea
callq 0x9090
cmpq $0x0, %rax
je 0xda4ac
movl $0xe, 0x2f6c2d(%rip)    # 0x3d10d4
jmp 0xda65e
leaq 0x2c055d(%rip), %rdi    # 0x39aa10
leaq 0xae527(%rip), %rsi     # 0x1889e1
callq 0x9090
cmpq $0x0, %rax
je 0xda4d4
movl $0x26, 0x2f6c05(%rip)   # 0x3d10d4
jmp 0xda65c
leaq 0x2c0535(%rip), %rdi    # 0x39aa10
leaq 0xa9bbd(%rip), %rsi     # 0x18409f
callq 0x9090
cmpq $0x0, %rax
je 0xda4fc
movl $0x6d, 0x2f6bdd(%rip)   # 0x3d10d4
jmp 0xda65a
leaq 0x2c050d(%rip), %rdi    # 0x39aa10
leaq 0xae4e5(%rip), %rsi     # 0x1889ef
callq 0x9090
cmpq $0x0, %rax
je 0xda524
movl $0x6c, 0x2f6bb5(%rip)   # 0x3d10d4
jmp 0xda658
leaq 0x2c04e5(%rip), %rdi    # 0x39aa10
leaq 0xaa01a(%rip), %rsi     # 0x18454c
callq 0x9090
cmpq $0x0, %rax
je 0xda54c
movl $0x64, 0x2f6b8d(%rip)   # 0x3d10d4
jmp 0xda656
leaq 0x2c04bd(%rip), %rdi    # 0x39aa10
leaq 0xa9b3a(%rip), %rsi     # 0x184094
callq 0x9090
cmpq $0x0, %rax
je 0xda574
movl $0x6b, 0x2f6b65(%rip)   # 0x3d10d4
jmp 0xda654
leaq 0x2c0495(%rip), %rdi    # 0x39aa10
leaq 0xaa3d5(%rip), %rsi     # 0x184957
callq 0x9090
cmpq $0x0, %rax
je 0xda59c
movl $0x1c, 0x2f6b3d(%rip)   # 0x3d10d4
jmp 0xda652
leaq 0x2c046d(%rip), %rdi    # 0x39aa10
leaq 0xa941e(%rip), %rsi     # 0x1839c8
callq 0x9090
cmpq $0x0, %rax
je 0xda5c4
movl $0x19, 0x2f6b15(%rip)   # 0x3d10d4
jmp 0xda650
leaq 0x2c0445(%rip), %rdi    # 0x39aa10
leaq 0xacea9(%rip), %rsi     # 0x18747b
callq 0x9090
cmpq $0x0, %rax
je 0xda5ee
movl $0x65, 0x2f6aed(%rip)   # 0x3d10d4
callq 0xd89c0
jmp 0xda64e
leaq 0x2c041b(%rip), %rdi    # 0x39aa10
leaq 0xae2c1(%rip), %rsi     # 0x1888bd
callq 0x9090
cmpq $0x0, %rax
je 0xda618
movl $0xb, 0x2f6ac3(%rip)    # 0x3d10d4
callq 0xd9a60
jmp 0xda64c
leaq 0x2c03f1(%rip), %rdi    # 0x39aa10
leaq 0xae3d5(%rip), %rsi     # 0x1889fb
callq 0x9090
cmpq $0x0, %rax
je 0xda64a
movl $0x0, 0x2f6a99(%rip)    # 0x3d10d4
movl $0x90, %edi
callq 0xd9aa0
jmp 0xda1eb
jmp 0xda64c
jmp 0xda64e
jmp 0xda650
jmp 0xda652
jmp 0xda654
jmp 0xda656
jmp 0xda658
jmp 0xda65a
jmp 0xda65c
jmp 0xda65e
jmp 0xda660
jmp 0xda662
jmp 0xda664
jmp 0xda666
jmp 0xda668
jmp 0xda66a
jmp 0xda66c
jmp 0xda66e
jmp 0xda670
jmp 0xda672
jmp 0xda674
jmp 0xda676
jmp 0xda678
jmp 0xda67a
jmp 0xda8c5
jmp 0xda681
jmp 0xda683
jmp 0xda685
jmp 0xda687
jmp 0xda689
jmp 0xda68b
jmp 0xda68d
jmp 0xda68f
jmp 0xda691
jmp 0xda693
leaq 0x1c2ed6(%rip), %rax    # 0x29d570
cmpq $0x0, (%rax)
je 0xda6c5
leaq 0x1c2ec9(%rip), %rax    # 0x29d570
movq (%rax), %rdi
movl 0x2f6a24(%rip), %edx    # 0x3d10d4
leaq 0xae347(%rip), %rsi     # 0x1889fe
leaq 0x2c0352(%rip), %rcx    # 0x39aa10
movb $0x0, %al
callq 0x9550
cmpl $0x15, 0x2f6a08(%rip)   # 0x3d10d4
jne 0xda6d8
callq 0xd8340
jmp 0xda883
cmpl $0x10, 0x2f69f5(%rip)   # 0x3d10d4
jne 0xda6eb
callq 0xd75e0
jmp 0xda881
cmpl $0xb, 0x2f69e2(%rip)    # 0x3d10d4
jne 0xda6fe
callq 0xd6650
jmp 0xda87f
cmpl $0x69, 0x2f69cf(%rip)   # 0x3d10d4
jne 0xda711
callq 0xd67a0
jmp 0xda87d
cmpl $0x67, 0x2f69bc(%rip)   # 0x3d10d4
jne 0xda724
callq 0xd66e0
jmp 0xda87b
cmpl $0x19, 0x2f69a9(%rip)   # 0x3d10d4
jne 0xda737
callq 0xd7ba0
jmp 0xda879
cmpl $0xa, 0x2f6996(%rip)    # 0x3d10d4
jne 0xda74a
callq 0xd6940
jmp 0xda877
cmpl $0x1e, 0x2f6983(%rip)   # 0x3d10d4
jne 0xda75d
callq 0xd80d0
jmp 0xda875
cmpl $0xe, 0x2f6970(%rip)    # 0x3d10d4
jne 0xda770
callq 0xd6890
jmp 0xda873
cmpl $0x26, 0x2f695d(%rip)   # 0x3d10d4
jne 0xda783
callq 0xd6890
jmp 0xda871
cmpl $0x1c, 0x2f694a(%rip)   # 0x3d10d4
jne 0xda796
callq 0xd7090
jmp 0xda86f
cmpl $0x13, 0x2f6937(%rip)   # 0x3d10d4
jne 0xda7a9
callq 0xd7730
jmp 0xda86d
cmpl $0x12, 0x2f6924(%rip)   # 0x3d10d4
jne 0xda7bc
callq 0xd7690
jmp 0xda86b
cmpl $0x21, 0x2f6911(%rip)   # 0x3d10d4
jne 0xda7cf
callq 0xd7940
jmp 0xda869
cmpl $0x16, 0x2f68fe(%rip)   # 0x3d10d4
jne 0xda7e2
callq 0xd77f0
jmp 0xda867
cmpl $0x64, 0x2f68eb(%rip)   # 0x3d10d4
jne 0xda7f2
callq 0xd8740
jmp 0xda865
cmpl $0x6b, 0x2f68db(%rip)   # 0x3d10d4
jne 0xda802
callq 0xd87d0
jmp 0xda863
cmpl $0x6d, 0x2f68cb(%rip)   # 0x3d10d4
jne 0xda812
callq 0xd8860
jmp 0xda861
cmpl $0x6e, 0x2f68bb(%rip)   # 0x3d10d4
jne 0xda822
callq 0xd8910
jmp 0xda85f
cmpl $0x6f, 0x2f68ab(%rip)   # 0x3d10d4
jne 0xda832
callq 0xd8990
jmp 0xda85d
cmpl $0x65, 0x2f689b(%rip)   # 0x3d10d4
jne 0xda85b
leaq 0x2c01ce(%rip), %rdi    # 0x39aa10
leaq 0xae0e6(%rip), %rsi     # 0x18892f
callq 0x9090
cmpq $0x0, %rax
je 0xda859
callq 0xd9e40
jmp 0xda85b
jmp 0xda85d
jmp 0xda85f
jmp 0xda861
jmp 0xda863
jmp 0xda865
jmp 0xda867
jmp 0xda869
jmp 0xda86b
jmp 0xda86d
jmp 0xda86f
jmp 0xda871
jmp 0xda873
jmp 0xda875
jmp 0xda877
jmp 0xda879
jmp 0xda87b
jmp 0xda87d
jmp 0xda87f
jmp 0xda881
jmp 0xda883
movl $0x0, 0x2f6847(%rip)    # 0x3d10d4
leaq 0x1c2d0c(%rip), %rax    # 0x29d5a0
cmpq $0x0, (%rax)
je 0xda8b8
leaq 0x1a7f3f(%rip), %rax    # 0x2827e0
cmpq $0x0, (%rax)
je 0xda8b8
leaq 0x1a7f32(%rip), %rax    # 0x2827e0
movq (%rax), %rax
movl %eax, %edi
callq 0xb8b0
leaq 0x1c38c1(%rip), %rax    # 0x29e180
movl $0x1, (%rax)
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax,%rax)