// File: /workspace/github_cpp_makefile_star2_O3/Marm0t[P]dji-phantom3-parser/packet.cpp
// Function: GPSPacket::toString[abi:cxx11]()
string GPSPacket::toString()
{
    stringstream ss;
    ss << "GPS Packet details: " << endl;
    ss << "Longitude: " << dec << fixed << _lon << endl;
    ss << "Latitude : " << dec << fixed << _lat << endl;
    ss << "Altitude : " << dec << fixed << _alt << " meters" << endl;
    ss << endl;
    ss << "_bytes30_33_f: " << dec<<fixed<<_bytes30_33_f
       << " time? - " << datetimeFromBytePos(30) <<endl; 
    ss << "_bytes34_37_f: " << dec<<fixed<<_bytes34_37_f 
       << " time? - " << datetimeFromBytePos(34) <<endl; 
    ss << "_bytes38_41_f: " << dec<<fixed<<_bytes38_41_f
       << " time? - " << datetimeFromBytePos(38) <<endl; 
    ss << "_bytes42_45_f: " << dec<<fixed<<_bytes42_45_f
       << " time? - " << datetimeFromBytePos(42) <<endl; 
    ss << endl;
    ss << "_bytes46_49_f: " << dec<<fixed<<_bytes46_49_f
        << " time? - " << datetimeFromBytePos(46) <<endl; 
    ss << "_bytes50_53_f: " << dec<<fixed<<_bytes50_53_f
        << " time? - " << datetimeFromBytePos(50) <<endl; 
    ss << "_bytes54_57_f: " << dec<<fixed<<_bytes54_57_f
        << " time? - " << datetimeFromBytePos(54) <<endl; 
    ss << "_bytes58_61_f: " << dec<<fixed<<_bytes58_61_f
        << " time? - " << datetimeFromBytePos(58) <<endl; 

    // Debug purpose:
    ss << "Packet details:"<<  endl << Packet::toString();
    ss << endl;
    return ss.str();
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x1b8, %rsp            # imm = 0x1B8
movq %rsi, %r15
movq %rdi, %rbx
leaq -0x1d8(%rbp), %rdi
callq 0x20e0
leaq -0x1c8(%rbp), %r14
leaq 0x1d03(%rip), %rsi      # 0x51ed
movl $0x14, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x1cd9(%rip), %rsi      # 0x5202
movl $0xb, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rcx
movl -0x1b0(%rbp,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, -0x1b0(%rbp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl -0x1b0(%rbp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, -0x1b0(%rbp,%rax)
movsd 0x48(%r15), %xmm0
movq %r14, %rdi
callq 0x21c0
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x1c60(%rip), %rsi      # 0x520e
movl $0xb, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rcx
movl -0x1b0(%rbp,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, -0x1b0(%rbp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl -0x1b0(%rbp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, -0x1b0(%rbp,%rax)
movsd 0x50(%r15), %xmm0
movq %r14, %rdi
callq 0x21c0
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x1be7(%rip), %rsi      # 0x521a
movl $0xb, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rcx
movl -0x1b0(%rbp,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, -0x1b0(%rbp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl -0x1b0(%rbp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, -0x1b0(%rbp,%rax)
xorps %xmm0, %xmm0
cvtss2sd 0x58(%r15), %xmm0
movq %r14, %rdi
callq 0x21c0
movq %rax, %r12
leaq 0x1b92(%rip), %rsi      # 0x5226
movl $0x7, %edx
movq %rax, %rdi
callq 0x2170
movq (%r12), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x1b33(%rip), %rsi      # 0x522e
movl $0xf, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rcx
movl -0x1b0(%rbp,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, -0x1b0(%rbp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl -0x1b0(%rbp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, -0x1b0(%rbp,%rax)
xorps %xmm0, %xmm0
cvtss2sd 0x60(%r15), %xmm0
movq %r14, %rdi
callq 0x21c0
movq %rax, %r12
leaq 0x1ae2(%rip), %rsi      # 0x523e
movl $0x9, %edx
movq %rax, %rdi
callq 0x2170
movq 0x8(%r15), %rax
movl 0x1e(%rax), %eax
leaq -0x2c(%rbp), %rsi
movl %eax, (%rsi)
leaq -0x50(%rbp), %rdi
callq 0x2d26
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq -0x40(%rbp), %r13
movq -0x10(%r13), %rdi
cmpq %r13, %rdi
je 0x37d2
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2160
leaq 0x1a6f(%rip), %rsi      # 0x5248
movl $0xf, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rcx
movl -0x1b0(%rbp,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, -0x1b0(%rbp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl -0x1b0(%rbp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, -0x1b0(%rbp,%rax)
cvtss2sd 0x64(%r15), %xmm0
movq %r14, %rdi
callq 0x21c0
movq %rax, %r12
leaq 0x1a07(%rip), %rsi      # 0x523e
movl $0x9, %edx
movq %rax, %rdi
callq 0x2170
movq 0x8(%r15), %rax
movl 0x22(%rax), %eax
leaq -0x2c(%rbp), %rsi
movl %eax, (%rsi)
leaq -0x50(%rbp), %rdi
callq 0x2d26
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x38a9
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2160
leaq 0x19a8(%rip), %rsi      # 0x5258
movl $0xf, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rcx
movl -0x1b0(%rbp,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, -0x1b0(%rbp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl -0x1b0(%rbp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, -0x1b0(%rbp,%rax)
xorps %xmm0, %xmm0
cvtss2sd 0x68(%r15), %xmm0
movq %r14, %rdi
callq 0x21c0
movq %rax, %r12
leaq 0x192d(%rip), %rsi      # 0x523e
movl $0x9, %edx
movq %rax, %rdi
callq 0x2170
movq 0x8(%r15), %rax
movl 0x26(%rax), %eax
leaq -0x2c(%rbp), %rsi
movl %eax, (%rsi)
leaq -0x50(%rbp), %rdi
callq 0x2d26
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x3983
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2160
leaq 0x18de(%rip), %rsi      # 0x5268
movl $0xf, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rcx
movl -0x1b0(%rbp,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, -0x1b0(%rbp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl -0x1b0(%rbp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, -0x1b0(%rbp,%rax)
xorps %xmm0, %xmm0
cvtss2sd 0x6c(%r15), %xmm0
movq %r14, %rdi
callq 0x21c0
movq %rax, %r12
leaq 0x1853(%rip), %rsi      # 0x523e
movl $0x9, %edx
movq %rax, %rdi
callq 0x2170
movq 0x8(%r15), %rax
movl 0x2a(%rax), %eax
leaq -0x2c(%rbp), %rsi
movl %eax, (%rsi)
leaq -0x50(%rbp), %rdi
callq 0x2d26
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x3a5d
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2160
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq 0x17e9(%rip), %rsi      # 0x5278
movl $0xf, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rcx
movl -0x1b0(%rbp,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, -0x1b0(%rbp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl -0x1b0(%rbp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, -0x1b0(%rbp,%rax)
cvtss2sd 0x70(%r15), %xmm0
movq %r14, %rdi
callq 0x21c0
movq %rax, %r12
leaq 0x1751(%rip), %rsi      # 0x523e
movl $0x9, %edx
movq %rax, %rdi
callq 0x2170
movq 0x8(%r15), %rax
movl 0x2e(%rax), %eax
leaq -0x2c(%rbp), %rsi
movl %eax, (%rsi)
leaq -0x50(%rbp), %rdi
callq 0x2d26
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x3b5f
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2160
leaq 0x1722(%rip), %rsi      # 0x5288
movl $0xf, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rcx
movl -0x1b0(%rbp,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, -0x1b0(%rbp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl -0x1b0(%rbp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, -0x1b0(%rbp,%rax)
xorps %xmm0, %xmm0
cvtss2sd 0x74(%r15), %xmm0
movq %r14, %rdi
callq 0x21c0
movq %rax, %r12
leaq 0x1677(%rip), %rsi      # 0x523e
movl $0x9, %edx
movq %rax, %rdi
callq 0x2170
movq 0x8(%r15), %rax
movl 0x32(%rax), %eax
leaq -0x2c(%rbp), %rsi
movl %eax, (%rsi)
leaq -0x50(%rbp), %rdi
callq 0x2d26
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x3c39
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2160
leaq 0x1658(%rip), %rsi      # 0x5298
movl $0xf, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rcx
movl -0x1b0(%rbp,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, -0x1b0(%rbp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl -0x1b0(%rbp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, -0x1b0(%rbp,%rax)
xorps %xmm0, %xmm0
cvtss2sd 0x78(%r15), %xmm0
movq %r14, %rdi
callq 0x21c0
movq %rax, %r12
leaq 0x159d(%rip), %rsi      # 0x523e
movl $0x9, %edx
movq %rax, %rdi
callq 0x2170
movq 0x8(%r15), %rax
movl 0x36(%rax), %eax
leaq -0x2c(%rbp), %rsi
movl %eax, (%rsi)
leaq -0x50(%rbp), %rdi
callq 0x2d26
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x3d13
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2160
leaq 0x158e(%rip), %rsi      # 0x52a8
movl $0xf, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rcx
movl -0x1b0(%rbp,%rcx), %edx
andl $-0x4b, %edx
orl $0x2, %edx
movl %edx, -0x1b0(%rbp,%rcx)
movq -0x18(%rax), %rax
movl $0xfffffefb, %ecx       # imm = 0xFFFFFEFB
andl -0x1b0(%rbp,%rax), %ecx
orl $0x4, %ecx
movl %ecx, -0x1b0(%rbp,%rax)
xorps %xmm0, %xmm0
cvtss2sd 0x7c(%r15), %xmm0
movq %r14, %rdi
callq 0x21c0
movq %rax, %r12
leaq 0x14c3(%rip), %rsi      # 0x523e
movl $0x9, %edx
movq %rax, %rdi
callq 0x2170
movq 0x8(%r15), %rax
movl 0x3a(%rax), %eax
leaq -0x2c(%rbp), %rsi
movl %eax, (%rsi)
leaq -0x50(%rbp), %rdi
callq 0x2d26
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r12, %rdi
callq 0x2170
movq %rax, %r12
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %r12, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r12, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x3ded
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2160
leaq 0x14c4(%rip), %rsi      # 0x52b8
movl $0xf, %edx
movq %r14, %rdi
callq 0x2170
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
movq %rax, %r12
leaq -0x50(%rbp), %rdi
movq %r15, %rsi
callq 0x2f44
movq -0x50(%rbp), %rsi
movq -0x48(%rbp), %rdx
movq %r12, %rdi
callq 0x2170
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x3e60
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2160
movq -0x1c8(%rbp), %rax
movq -0x18(%rax), %rdi
addq %r14, %rdi
movl $0xa, %esi
callq 0x2140
movsbl %al, %esi
movq %r14, %rdi
callq 0x2030
movq %rax, %rdi
callq 0x20d0
leaq -0x1c0(%rbp), %rsi
movq %rbx, %rdi
callq 0x21b0
movq 0x3117(%rip), %rsi      # 0x6fb8
leaq -0x1d8(%rbp), %rdi
callq 0x2100
leaq -0x158(%rbp), %rdi
callq 0x2070
movq %rbx, %rax
addq $0x1b8, %rsp            # imm = 0x1B8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x3eee
jmp 0x3f1a
jmp 0x3f1a
jmp 0x3f1a
jmp 0x3f1a
jmp 0x3f1a
jmp 0x3f1a
jmp 0x3f1a
jmp 0x3f1a
jmp 0x3f1a
jmp 0x3eee
jmp 0x3eee
jmp 0x3eee
jmp 0x3eee
jmp 0x3eee
jmp 0x3eee
movq %rax, %rbx
movq -0x50(%rbp), %rdi
cmpq %r13, %rdi
je 0x3f1d
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x2160
jmp 0x3f1d
movq %rax, %rbx
leaq -0x40(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
jne 0x3efa
jmp 0x3f1d
movq %rax, %rbx
movq 0x3094(%rip), %rsi      # 0x6fb8
leaq -0x1d8(%rbp), %rdi
callq 0x2100
leaq -0x158(%rbp), %rdi
callq 0x2070
movq %rbx, %rdi
callq 0x2200