// File: /workspace/github_cpp_makefile_star2_O2/jkingan[P]ladyheather/heathgps.cpp
// Function: parse_cry()
void parse_cry()
{
int i;

   get_msg_field();  // eat the TPS3

   if(get_msg_field()) {  // pos mode
      i = atoi(msg_field);
      minor_alarms &= (~MINOR_SURVEY);
      if(i == 0) {
         rcvr_mode = RCVR_MODE_3D;
      }
      else if((i == 1) || (i == 2)) {
         rcvr_mode = RCVR_MODE_SURVEY;
         minor_alarms |= MINOR_SURVEY;
      }
      else if(i == 3) {
         rcvr_mode = RCVR_MODE_HOLD;
      }
      else {
         rcvr_mode = RCVR_MODE_UNKNOWN;
      }
      have_rcvr_mode = 87;
   }

   if(get_msg_field()) {  // sigma
      i = atoi(msg_field);
   }

   if(get_msg_field()) {  // sigma thresh
      i = atoi(msg_field);
   }

   i = 0;
   if(get_msg_field()) {  // survey samples taken so far
      i = atoi(msg_field);
   }

   if(get_msg_field()) {  // survey time in minutes
      survey_secs = atoi(msg_field) - i;
      if(survey_secs < 0) survey_secs = 0;
   }

   if(get_msg_field()) {  // traim solution
      traim_alarm = atoi(msg_field);
traim_mode = 1;
      have_traim = 87;
   }

   if(get_msg_field()) {  // traim status
      traim_status = atoi(msg_field);
   }

   if(get_msg_field()) {  // removed sat count
      traim_deleted = atoi(msg_field);
   }

   if(get_msg_field()) {  // reserved
      i = atohex(msg_field);
   }

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %rbx
pushq %rax
callq 0x75767
callq 0x75767
testl %eax, %eax
je 0x78427
leaq 0x2ad679(%rip), %rdi    # 0x325a40
callq 0x95e0
leaq 0x27ee05(%rip), %rcx    # 0x2f71d8
movl (%rcx), %edx
movl %edx, %esi
andl $-0x21, %esi
movl %esi, (%rcx)
testl %eax, %eax
je 0x783f6
cmpl $0x2, %eax
ja 0x78402
leaq 0x27ece4(%rip), %rax    # 0x2f70d0
movb $0xb, (%rax)
orl $0x20, %edx
movl %edx, (%rcx)
jmp 0x7841d
leaq 0x27ecd3(%rip), %rax    # 0x2f70d0
movb $0x4, (%rax)
jmp 0x7841d
cmpl $0x3, %eax
jne 0x78413
leaq 0x27ecc2(%rip), %rax    # 0x2f70d0
movb $0x7, (%rax)
jmp 0x7841d
leaq 0x27ecb6(%rip), %rax    # 0x2f70d0
movb $0x63, (%rax)
leaq 0x27efe9(%rip), %rax    # 0x2f740d
movb $0x57, (%rax)
callq 0x75767
callq 0x75767
callq 0x75767
testl %eax, %eax
je 0x7844a
leaq 0x2ad5ff(%rip), %rdi    # 0x325a40
callq 0x95e0
movl %eax, %ebx
jmp 0x7844c
xorl %ebx, %ebx
callq 0x75767
testl %eax, %eax
je 0x78473
leaq 0x2ad5e4(%rip), %rdi    # 0x325a40
callq 0x95e0
subl %ebx, %eax
xorl %ecx, %ecx
testl %eax, %eax
cmovgl %eax, %ecx
leaq 0x27fa23(%rip), %rax    # 0x2f7e94
movl %ecx, (%rax)
callq 0x75767
testl %eax, %eax
je 0x784ab
leaq 0x2ad5bd(%rip), %rdi    # 0x325a40
callq 0x95e0
leaq 0x2aee1d(%rip), %rcx    # 0x3272ac
movl %eax, (%rcx)
leaq 0x18cc28(%rip), %rax    # 0x2050c0
movl $0x1, (%rax)
leaq 0x27ef23(%rip), %rax    # 0x2f73c8
movl $0x57, (%rax)
callq 0x75767
testl %eax, %eax
je 0x784c9
leaq 0x2ad585(%rip), %rdi    # 0x325a40
callq 0x95e0
leaq 0x18cc01(%rip), %rcx    # 0x2050c8
movl %eax, (%rcx)
callq 0x75767
testl %eax, %eax
je 0x784e7
leaq 0x2ad567(%rip), %rdi    # 0x325a40
callq 0x95e0
leaq 0x2aedc3(%rip), %rcx    # 0x3272a8
movl %eax, (%rcx)
callq 0x75767
testl %eax, %eax
je 0x78502
leaq 0x2ad549(%rip), %rdi    # 0x325a40
addq $0x8, %rsp
popq %rbx
popq %rbp
jmp 0x98b2
addq $0x8, %rsp
popq %rbx
popq %rbp
retq