// File: /workspace/github_cpp_makefile_star2_O1/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 0x811da
callq 0x811da
testl %eax, %eax
je 0x84111
leaq 0x2b798f(%rip), %rdi    # 0x33ba40
callq 0x95e0
leaq 0x28911b(%rip), %rcx    # 0x30d1d8
movl (%rcx), %edx
movl %edx, %esi
andl $-0x21, %esi
movl %esi, (%rcx)
testl %eax, %eax
je 0x840e0
cmpl $0x2, %eax
ja 0x840ec
leaq 0x288ffa(%rip), %rax    # 0x30d0d0
movb $0xb, (%rax)
orl $0x20, %edx
movl %edx, (%rcx)
jmp 0x84107
leaq 0x288fe9(%rip), %rax    # 0x30d0d0
movb $0x4, (%rax)
jmp 0x84107
cmpl $0x3, %eax
jne 0x840fd
leaq 0x288fd8(%rip), %rax    # 0x30d0d0
movb $0x7, (%rax)
jmp 0x84107
leaq 0x288fcc(%rip), %rax    # 0x30d0d0
movb $0x63, (%rax)
leaq 0x2892ff(%rip), %rax    # 0x30d40d
movb $0x57, (%rax)
callq 0x811da
callq 0x811da
callq 0x811da
testl %eax, %eax
je 0x84134
leaq 0x2b7915(%rip), %rdi    # 0x33ba40
callq 0x95e0
movl %eax, %ebx
jmp 0x84136
xorl %ebx, %ebx
callq 0x811da
testl %eax, %eax
je 0x8415d
leaq 0x2b78fa(%rip), %rdi    # 0x33ba40
callq 0x95e0
subl %ebx, %eax
xorl %ecx, %ecx
testl %eax, %eax
cmovgl %eax, %ecx
leaq 0x289d39(%rip), %rax    # 0x30de94
movl %ecx, (%rax)
callq 0x811da
testl %eax, %eax
je 0x84195
leaq 0x2b78d3(%rip), %rdi    # 0x33ba40
callq 0x95e0
leaq 0x2b9133(%rip), %rcx    # 0x33d2ac
movl %eax, (%rcx)
leaq 0x196f3e(%rip), %rax    # 0x21b0c0
movl $0x1, (%rax)
leaq 0x289239(%rip), %rax    # 0x30d3c8
movl $0x57, (%rax)
callq 0x811da
testl %eax, %eax
je 0x841b3
leaq 0x2b789b(%rip), %rdi    # 0x33ba40
callq 0x95e0
leaq 0x196f17(%rip), %rcx    # 0x21b0c8
movl %eax, (%rcx)
callq 0x811da
testl %eax, %eax
je 0x841d1
leaq 0x2b787d(%rip), %rdi    # 0x33ba40
callq 0x95e0
leaq 0x2b90d9(%rip), %rcx    # 0x33d2a8
movl %eax, (%rcx)
callq 0x811da
testl %eax, %eax
je 0x841ec
leaq 0x2b785f(%rip), %rdi    # 0x33ba40
addq $0x8, %rsp
popq %rbx
popq %rbp
jmp 0x98c6
addq $0x8, %rsp
popq %rbx
popq %rbp
retq