// File: /workspace/github_cpp_makefile_star2_O3/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
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
xorl %edi, %edi
callq 0x7f2b8
leaq 0x29b046(%rip), %r14    # 0x33b830
movb $0x0, (%r14)
leaq 0x297a5d(%rip), %rbx    # 0x338252
cmpw $0x0, (%rbx)
je 0xa083b
movl $0x1, %r12d
leaq 0x19e768(%rip), %r15    # 0x23ef70
callq 0x587be
cmpl $0x100, %eax            # imm = 0x100
jb 0xa0818
orb $0x8, (%r15)
movb %al, -0x1(%r14,%r12)
movb $0x0, (%r14,%r12)
cmpq $0x1f6, %r12            # imm = 0x1F6
je 0xa083b
leaq 0x1(%r12), %rax
movzwl (%rbx), %ecx
cmpl %ecx, %r12d
movq %rax, %r12
jb 0xa0808
leaq 0x297a12(%rip), %rax    # 0x338254
xorl %ecx, %ecx
movw %cx, (%rax)
movw %cx, (%rbx)
leaq 0x297a05(%rip), %rax    # 0x338256
movw %cx, (%rax)
leaq 0x29afd5(%rip), %rdi    # 0x33b830
callq 0x9899
leaq 0x19db29(%rip), %r14    # 0x23e390
movq (%r14), %rdi
testq %rdi, %rdi
je 0xa088a
movl 0x2d1667(%rip), %edx    # 0x371edc
leaq 0x84dc7(%rip), %rsi     # 0x125643
leaq 0x29afad(%rip), %rcx    # 0x33b830
xorl %eax, %eax
callq 0x9560
leaq 0x29af9f(%rip), %rdi    # 0x33b830
leaq 0x847aa(%rip), %rsi     # 0x125042
callq 0x9090
testq %rax, %rax
je 0xa08ed
movq (%r14), %rdi
movl 0x2d1631(%rip), %edx    # 0x371edc
testq %rdi, %rdi
je 0xa08cb
leaq 0x84e53(%rip), %rsi     # 0x12570a
leaq 0x29af72(%rip), %rcx    # 0x33b830
xorl %eax, %eax
callq 0x9560
movl 0x2d1611(%rip), %edx    # 0x371edc
leal -0xa(%rdx), %eax
cmpl $0x1c, %eax
ja 0xa0920
leaq 0x7f10e(%rip), %rcx     # 0x11f9e8
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
callq 0x9dfde
jmp 0xa0a85
leaq 0x29af3c(%rip), %rdi    # 0x33b830
leaq 0x84d5f(%rip), %rsi     # 0x12565a
callq 0x9090
testq %rax, %rax
je 0xa0946
leaq 0x177fe0(%rip), %rax    # 0x2188ec
cmpl $0x0, (%rax)
jne 0xa095e
leaq 0x17a6c8(%rip), %rax    # 0x21afe0
movl $0x50, (%rax)
jmp 0xa095e
addl $-0x64, %edx
cmpl $0xb, %edx
ja 0xa0a85
leaq 0x7f129(%rip), %rax     # 0x11fa5c
movslq (%rax,%rdx,4), %rcx
addq %rax, %rcx
jmpq *%rcx
callq 0x9f57e
jmp 0xa0a85
leaq 0x29aee3(%rip), %rdi    # 0x33b830
leaq 0x84d0d(%rip), %rsi     # 0x125661
callq 0x9090
testq %rax, %rax
je 0xa096d
movl $0x0, 0x2d1574(%rip)    # 0x371edc
jmp 0xa0ac6
leaq 0x29aebc(%rip), %rdi    # 0x33b830
leaq 0x84ceb(%rip), %rsi     # 0x125666
callq 0x9090
testq %rax, %rax
je 0xa0acf
cmpl $0x1e, 0x2d154c(%rip)   # 0x371edc
jne 0xa095e
leaq 0x26c74b(%rip), %rax    # 0x30d0e4
movl $0xffffffff, (%rax)     # imm = 0xFFFFFFFF
movl $0x349, %eax            # imm = 0x349
leaq 0x19e605(%rip), %rcx    # 0x23efb0
movb $0x0, (%rcx,%rax)
addq $0x348, %rax            # imm = 0x348
cmpq $0x6c49, %rax           # imm = 0x6C49
jne 0xa09ab
jmp 0xa095e
callq 0x9f042
jmp 0xa0a85
callq 0x9eaa6
jmp 0xa0a85
callq 0x9e5de
jmp 0xa0a85
callq 0x9e9a4
jmp 0xa0a85
callq 0x9e052
jmp 0xa0a85
callq 0x9e929
jmp 0xa0a85
leaq 0x846c1(%rip), %rdi     # 0x1250c3
callq 0x58dc2
jmp 0xa0a85
callq 0x9ea19
jmp 0xa0a85
callq 0x9ed76
jmp 0xa0a85
callq 0x9de10
jmp 0xa0a85
callq 0x9f27d
jmp 0xa0a85
callq 0x9f5f0
jmp 0xa0a85
callq 0x9f645
jmp 0xa0a85
callq 0x9de80
jmp 0xa0a85
callq 0x9df1a
jmp 0xa0a85
leaq 0x29ade8(%rip), %rdi    # 0x33b830
leaq 0x84bec(%rip), %rsi     # 0x12563b
callq 0x9090
testq %rax, %rax
je 0xa0a85
callq 0xa070e
jmp 0xa0a85
callq 0x9f6c3
jmp 0xa0a85
leaq 0x847ed(%rip), %rdi     # 0x12525b
callq 0x58dc2
leaq 0x29b1ca(%rip), %rax    # 0x33bc44
movl $0x0, (%rax)
callq 0x810b1
leaq 0x19d934(%rip), %rax    # 0x23e3c0
cmpq $0x0, (%rax)
movl $0x0, 0x2d1442(%rip)    # 0x371edc
setne %al
leaq 0x182b5c(%rip), %rcx    # 0x223600
movq (%rcx), %rdi
testq %rdi, %rdi
setne %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0xa0ab9
callq 0xafe8
leaq 0x19e4e0(%rip), %rax    # 0x23efa0
movl $0x1, (%rax)
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
leaq 0x29ad5a(%rip), %rdi    # 0x33b830
leaq 0x84b9a(%rip), %rsi     # 0x125677
callq 0x9090
testq %rax, %rax
jne 0xa095e
leaq 0x29ad3e(%rip), %rdi    # 0x33b830
leaq 0x84b8c(%rip), %rsi     # 0x125685
callq 0x9090
testq %rax, %rax
jne 0xa095e
leaq 0x29ad22(%rip), %rdi    # 0x33b830
leaq 0x84b81(%rip), %rsi     # 0x125696
callq 0x9090
testq %rax, %rax
jne 0xa095e
leaq 0x29ad06(%rip), %rdi    # 0x33b830
leaq 0x84b77(%rip), %rsi     # 0x1256a8
callq 0x9090
testq %rax, %rax
jne 0xa095e
leaq 0x29acea(%rip), %rbx    # 0x33b830
leaq 0x87ea3(%rip), %rsi     # 0x1289f0
movq %rbx, %rdi
callq 0x9090
testq %rax, %rax
jne 0xa095e
cmpb $0x43, (%rbx)
jne 0xa0ba0
movl $0x7b, %edi
cmpb $0x35, 0x1(%rbx)
jne 0xa0ba0
callq 0xa0427
leaq 0x84b40(%rip), %rdi     # 0x1256ba
movl $0x10, %esi
callq 0x6e2d1
callq 0x6fe3d
callq 0x6fe3d
callq 0x6fe3d
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
jmp 0x6fe3d
movl 0x2d1336(%rip), %edx    # 0x371edc
movq (%r14), %rdi
testl %edx, %edx
jne 0xa08ab
testq %rdi, %rdi
je 0xa0bd1
movl 0x2cf428(%rip), %ecx    # 0x36ffe4
leaq 0x84b02(%rip), %rsi     # 0x1256c5
leaq 0x29ac66(%rip), %rdx    # 0x33b830
xorl %eax, %eax
callq 0x9560
leaq 0x29ac58(%rip), %rdi    # 0x33b830
leaq 0x8480a(%rip), %rsi     # 0x1253e9
callq 0x9090
testq %rax, %rax
je 0xa0bf8
movl $0x15, 0x2d12e9(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29ac31(%rip), %rdi    # 0x33b830
leaq 0x84ab4(%rip), %rsi     # 0x1256ba
callq 0x9090
testq %rax, %rax
je 0xa0c1f
movl $0x10, 0x2d12c2(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29ac0a(%rip), %rdi    # 0x33b830
leaq 0x849ba(%rip), %rsi     # 0x1255e7
callq 0x9090
testq %rax, %rax
je 0xa0c46
movl $0x6e, 0x2d129b(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29abe3(%rip), %rdi    # 0x33b830
leaq 0x8499f(%rip), %rsi     # 0x1255f3
callq 0x9090
testq %rax, %rax
je 0xa0c6d
movl $0x6f, 0x2d1274(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29abbc(%rip), %rdi    # 0x33b830
leaq 0x84959(%rip), %rsi     # 0x1255d4
callq 0x9090
testq %rax, %rax
je 0xa0c94
movl $0xb, 0x2d124d(%rip)    # 0x371edc
jmp 0xa0ac6
leaq 0x29ab95(%rip), %rdi    # 0x33b830
leaq 0x80b89(%rip), %rsi     # 0x12182b
callq 0x9090
testq %rax, %rax
je 0xa0cbb
movl $0x69, 0x2d1226(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29ab6e(%rip), %rdi    # 0x33b830
leaq 0x80a5c(%rip), %rsi     # 0x121725
callq 0x9090
testq %rax, %rax
je 0xa0ce2
movl $0x13, 0x2d11ff(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29ab47(%rip), %rdi    # 0x33b830
leaq 0x84778(%rip), %rsi     # 0x125468
callq 0x9090
testq %rax, %rax
je 0xa0d09
movl $0x12, 0x2d11d8(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29ab20(%rip), %rdi    # 0x33b830
leaq 0x80ca8(%rip), %rsi     # 0x1219bf
callq 0x9090
testq %rax, %rax
jne 0xa0cd3
leaq 0x29ab08(%rip), %rdi    # 0x33b830
leaq 0x807bf(%rip), %rsi     # 0x1214ee
callq 0x9090
testq %rax, %rax
je 0xa0d48
movl $0x16, 0x2d1199(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29aae1(%rip), %rdi    # 0x33b830
leaq 0x8078e(%rip), %rsi     # 0x1214e4
callq 0x9090
testq %rax, %rax
je 0xa0d6f
movl $0x21, 0x2d1172(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29aaba(%rip), %rdi    # 0x33b830
leaq 0x805ff(%rip), %rsi     # 0x12137c
callq 0x9090
testq %rax, %rax
je 0xa0d96
movl $0x67, 0x2d114b(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29aa93(%rip), %rdi    # 0x33b830
leaq 0x801d2(%rip), %rsi     # 0x120f76
callq 0x9090
testq %rax, %rax
je 0xa0dbd
movl $0xa, 0x2d1124(%rip)    # 0x371edc
jmp 0xa0ac6
leaq 0x29aa6c(%rip), %rdi    # 0x33b830
leaq 0x7feb7(%rip), %rsi     # 0x120c82
callq 0x9090
testq %rax, %rax
je 0xa0de4
movl $0x1e, 0x2d10fd(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29aa45(%rip), %rdi    # 0x33b830
leaq 0x80368(%rip), %rsi     # 0x12115a
callq 0x9090
testq %rax, %rax
je 0xa0e0b
movl $0xe, 0x2d10d6(%rip)    # 0x371edc
jmp 0xa0ac6
leaq 0x29aa1e(%rip), %rdi    # 0x33b830
leaq 0x848d4(%rip), %rsi     # 0x1256ed
callq 0x9090
testq %rax, %rax
je 0xa0e32
movl $0x26, 0x2d10af(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29a9f7(%rip), %rdi    # 0x33b830
leaq 0x7ffdf(%rip), %rsi     # 0x120e1f
callq 0x9090
testq %rax, %rax
je 0xa0e59
movl $0x6d, 0x2d1088(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29a9d0(%rip), %rdi    # 0x33b830
leaq 0x84894(%rip), %rsi     # 0x1256fb
callq 0x9090
testq %rax, %rax
je 0xa0e80
movl $0x6c, 0x2d1061(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29a9a9(%rip), %rdi    # 0x33b830
leaq 0x8042e(%rip), %rsi     # 0x1212bc
callq 0x9090
testq %rax, %rax
je 0xa0ea7
movl $0x64, 0x2d103a(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29a982(%rip), %rdi    # 0x33b830
leaq 0x7ff5f(%rip), %rsi     # 0x120e14
callq 0x9090
testq %rax, %rax
je 0xa0ece
movl $0x6b, 0x2d1013(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29a95b(%rip), %rdi    # 0x33b830
leaq 0x807eb(%rip), %rsi     # 0x1216c7
callq 0x9090
testq %rax, %rax
je 0xa0ef5
movl $0x1c, 0x2d0fec(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29a934(%rip), %rdi    # 0x33b830
leaq 0x7f845(%rip), %rsi     # 0x120748
callq 0x9090
testq %rax, %rax
je 0xa0f1c
movl $0x19, 0x2d0fc5(%rip)   # 0x371edc
jmp 0xa0ac6
leaq 0x29a90d(%rip), %rdi    # 0x33b830
leaq 0x83264(%rip), %rsi     # 0x12418e
callq 0x9090
testq %rax, %rax
je 0xa0f83
movl $0x65, 0x2d0f9e(%rip)   # 0x371edc
leaq 0x84326(%rip), %rdi     # 0x12526b
callq 0x58dc2
movl $0x1, 0x2cf090(%rip)    # 0x36ffe4
leaq 0x17a0bd(%rip), %rax    # 0x21b018
xorl %ecx, %ecx
movl %ecx, (%rax)
movl %ecx, 0x2d0f6f(%rip)    # 0x371ed4
movl %ecx, 0x2d0f65(%rip)    # 0x371ed0
movl %ecx, 0x2cbc53(%rip)    # 0x36cbc4
movb $0x0, 0x2cbbc8(%rip)    # 0x36cb40
movl %ecx, 0x2cf06a(%rip)    # 0x36ffe8
jmp 0xa0ac6
leaq 0x29a8a6(%rip), %rdi    # 0x33b830
leaq 0x84638(%rip), %rsi     # 0x1255c9
callq 0x9090
testq %rax, %rax
je 0xa0fd5
movl $0xb, 0x2d0f37(%rip)    # 0x371edc
leaq 0x84613(%rip), %rdi     # 0x1255bf
callq 0x58dc2
movl $0x1, 0x2cf031(%rip)    # 0x36ffec
xorl %eax, %eax
movl %eax, 0x2cf02d(%rip)    # 0x36fff0
movl %eax, 0x2cbbfb(%rip)    # 0x36cbc4
movb $0x0, 0x2cbb70(%rip)    # 0x36cb40
jmp 0xa0ac6
leaq 0x29a854(%rip), %rdi    # 0x33b830
leaq 0x84724(%rip), %rsi     # 0x125707
callq 0x9090
testq %rax, %rax
je 0xa0ac6
movl $0x0, 0x2d0ee1(%rip)    # 0x371edc
movl $0x90, %edi
jmp 0xa0b6e