// File: sus304[P]ForRocket/src/rocket/rocket.cpp
// Function: forrocket::Rocket::Rocket()
forrocket::Rocket::Rocket() {
    length_thrust = 0.0;
    diameter = 0.0;
    area = 0.0;
    length = 0.0;
    inertia_tensor << 0.0, 0.0, 0.0,
                        0.0, 0.0, 0.0,
                        0.0, 0.0, 0.0;

    cant_angle_fin = 0.0;

    dynamic_pressure = 0.0;

    quaternion_dot << 0.0, 0.0, 0.0, 0.0;
    angular_velocity << 0.0, 0.0, 0.0;
    angular_acceleration << 0.0, 0.0, 0.0;
    angle_of_attack = 0.0;
    sideslip_angle = 0.0;

}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x220, %rsp            # imm = 0x220
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0x138(%rbp)
callq 0x34530
movq -0x138(%rbp), %rdi
addq $0x48, %rdi
movq %rdi, -0x140(%rbp)
callq 0x52860
movq -0x138(%rbp), %rdi
movq $0x0, 0x1e0(%rdi)
movq $0x0, 0x1e8(%rdi)
movq $0x0, 0x1f0(%rdi)
movq $0x0, 0x1f8(%rdi)
movq $0x0, 0x200(%rdi)
movq $0x0, 0x208(%rdi)
addq $0x220, %rdi            # imm = 0x220
callq 0x2fbd0
jmp 0x5119d
movq -0x138(%rbp), %rdi
movq $0x0, 0x268(%rdi)
movq $0x0, 0x270(%rdi)
movq $0x0, 0x278(%rdi)
movq $0x0, 0x280(%rdi)
movq $0x0, 0x288(%rdi)
movq $0x0, 0x290(%rdi)
movq $0x0, 0x298(%rdi)
addq $0x2a0, %rdi            # imm = 0x2A0
callq 0x3e2f0
jmp 0x511ff
movq -0x138(%rbp), %rdi
addq $0x2e8, %rdi            # imm = 0x2E8
callq 0x41370
jmp 0x51214
movq -0x138(%rbp), %rdi
movq $0x0, 0x350(%rdi)
addq $0x358, %rdi            # imm = 0x358
callq 0x37500
jmp 0x51234
movq -0x138(%rbp), %rdi
addq $0x388, %rdi            # imm = 0x388
callq 0x3a830
jmp 0x51249
movq -0x138(%rbp), %rdi
addq $0x3d0, %rdi            # imm = 0x3D0
callq 0x37650
jmp 0x5125e
movq -0x138(%rbp), %rdi
addq $0x410, %rdi            # imm = 0x410
callq 0x2f790
jmp 0x51273
movq -0x138(%rbp), %rdi
addq $0x430, %rdi            # imm = 0x430
callq 0x2f9d0
jmp 0x51288
movq -0x138(%rbp), %rdi
addq $0x448, %rdi            # imm = 0x448
callq 0x2f9d0
jmp 0x5129d
movq -0x138(%rbp), %rdi
movq $0x0, 0x460(%rdi)
movq $0x0, 0x468(%rdi)
addq $0x470, %rdi            # imm = 0x470
callq 0x3cde0
jmp 0x512c8
movq -0x138(%rbp), %rdi
movq $0x0, 0x4e8(%rdi)
addq $0x4f0, %rdi            # imm = 0x4F0
movq %rdi, -0x148(%rbp)
callq 0x3bb50
jmp 0x512ef
movq -0x138(%rbp), %rdi
addq $0x590, %rdi            # imm = 0x590
movq %rdi, -0x150(%rbp)
callq 0x3bb50
jmp 0x5130b
movq -0x138(%rbp), %rdi
addq $0x630, %rdi            # imm = 0x630
movq %rdi, -0x158(%rbp)
callq 0x3bb50
jmp 0x51327
movq -0x138(%rbp), %rdi
addq $0x6d0, %rdi            # imm = 0x6D0
movq %rdi, -0x160(%rbp)
callq 0x3bb50
jmp 0x51343
movq -0x138(%rbp), %rdi
addq $0x770, %rdi            # imm = 0x770
movq %rdi, -0x168(%rbp)
callq 0x3bb50
jmp 0x5135f
movq -0x138(%rbp), %rdi
addq $0x810, %rdi            # imm = 0x810
movq %rdi, -0x170(%rbp)
callq 0x3bb50
jmp 0x5137b
movq -0x138(%rbp), %rdi
addq $0x8b0, %rdi            # imm = 0x8B0
movq %rdi, -0x178(%rbp)
callq 0x3bb50
jmp 0x51397
movq -0x138(%rbp), %rdi
addq $0x950, %rdi            # imm = 0x950
movq %rdi, -0x180(%rbp)
callq 0x3bb50
jmp 0x513b3
movq -0x138(%rbp), %rdi
addq $0x9f0, %rdi            # imm = 0x9F0
movq %rdi, -0x188(%rbp)
callq 0x3bb50
jmp 0x513cf
movq -0x138(%rbp), %rdi
addq $0xa90, %rdi            # imm = 0xA90
movq %rdi, -0x190(%rbp)
callq 0x3bb50
jmp 0x513eb
movq -0x138(%rbp), %rdi
addq $0xb30, %rdi            # imm = 0xB30
movq %rdi, -0x198(%rbp)
callq 0x3bb50
jmp 0x51407
movq -0x138(%rbp), %rdi
addq $0xbd0, %rdi            # imm = 0xBD0
movq %rdi, -0x1a0(%rbp)
callq 0x3bb50
jmp 0x51423
movq -0x138(%rbp), %rdi
addq $0xc70, %rdi            # imm = 0xC70
movq %rdi, -0x1a8(%rbp)
callq 0x3bb50
jmp 0x5143f
movq -0x138(%rbp), %rdi
addq $0xd10, %rdi            # imm = 0xD10
movq %rdi, -0x1b0(%rbp)
callq 0x3bb50
jmp 0x5145b
movq -0x138(%rbp), %rdi
addq $0xdb0, %rdi            # imm = 0xDB0
movq %rdi, -0x1b8(%rbp)
callq 0x3bb50
jmp 0x51477
movq -0x138(%rbp), %rdi
movl $0x0, 0xe50(%rdi)
addq $0xe58, %rdi            # imm = 0xE58
movq %rdi, -0x1c0(%rbp)
callq 0x76d0
movq -0x138(%rbp), %rsi
movq $0x0, 0x1e0(%rsi)
movq $0x0, 0x1e8(%rsi)
movq $0x0, 0x1f0(%rsi)
movq $0x0, 0x1f8(%rsi)
addq $0x220, %rsi            # imm = 0x220
movq $0x0, -0x40(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x40(%rbp), %rdx
callq 0x2f2e0
jmp 0x514ec
movq $0x0, -0x48(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x2f320
movq %rax, -0x1c8(%rbp)
jmp 0x5150a
movq -0x1c8(%rbp), %rdi
movq $0x0, -0x50(%rbp)
leaq -0x50(%rbp), %rsi
callq 0x2f320
movq %rax, -0x1d0(%rbp)
jmp 0x5152b
movq -0x1d0(%rbp), %rdi
movq $0x0, -0x58(%rbp)
leaq -0x58(%rbp), %rsi
callq 0x2f320
movq %rax, -0x1d8(%rbp)
jmp 0x5154c
movq -0x1d8(%rbp), %rdi
movq $0x0, -0x60(%rbp)
leaq -0x60(%rbp), %rsi
callq 0x2f320
movq %rax, -0x1e0(%rbp)
jmp 0x5156d
movq -0x1e0(%rbp), %rdi
movq $0x0, -0x68(%rbp)
leaq -0x68(%rbp), %rsi
callq 0x2f320
movq %rax, -0x1e8(%rbp)
jmp 0x5158e
movq -0x1e8(%rbp), %rdi
movq $0x0, -0x70(%rbp)
leaq -0x70(%rbp), %rsi
callq 0x2f320
movq %rax, -0x1f0(%rbp)
jmp 0x515af
movq -0x1f0(%rbp), %rdi
movq $0x0, -0x78(%rbp)
leaq -0x78(%rbp), %rsi
callq 0x2f320
movq %rax, -0x1f8(%rbp)
jmp 0x515d0
movq -0x1f8(%rbp), %rdi
movq $0x0, -0x80(%rbp)
leaq -0x80(%rbp), %rsi
callq 0x2f320
jmp 0x515ea
leaq -0x38(%rbp), %rdi
callq 0x2f490
movq -0x138(%rbp), %rsi
movq $0x0, 0x298(%rsi)
movq $0x0, 0x350(%rsi)
addq $0x410, %rsi            # imm = 0x410
movq $0x0, -0xa8(%rbp)
leaq -0xa0(%rbp), %rdi
leaq -0xa8(%rbp), %rdx
callq 0x378b0
jmp 0x51637
movq $0x0, -0xb0(%rbp)
leaq -0xa0(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x378f0
movq %rax, -0x200(%rbp)
jmp 0x5165e
movq -0x200(%rbp), %rdi
movq $0x0, -0xb8(%rbp)
leaq -0xb8(%rbp), %rsi
callq 0x378f0
movq %rax, -0x208(%rbp)
jmp 0x51685
movq -0x208(%rbp), %rdi
movq $0x0, -0xc0(%rbp)
leaq -0xc0(%rbp), %rsi
callq 0x378f0
jmp 0x516a5
leaq -0xa0(%rbp), %rdi
callq 0x37a60
movq -0x138(%rbp), %rsi
addq $0x430, %rsi            # imm = 0x430
movq $0x0, -0xe8(%rbp)
leaq -0xe0(%rbp), %rdi
leaq -0xe8(%rbp), %rdx
callq 0x2f9f0
jmp 0x516df
movq $0x0, -0xf0(%rbp)
leaq -0xe0(%rbp), %rdi
leaq -0xf0(%rbp), %rsi
callq 0x2fa30
movq %rax, -0x210(%rbp)
jmp 0x51706
movq -0x210(%rbp), %rdi
movq $0x0, -0xf8(%rbp)
leaq -0xf8(%rbp), %rsi
callq 0x2fa30
jmp 0x51726
leaq -0xe0(%rbp), %rdi
callq 0x2fba0
movq -0x138(%rbp), %rsi
addq $0x448, %rsi            # imm = 0x448
movq $0x0, -0x120(%rbp)
leaq -0x118(%rbp), %rdi
leaq -0x120(%rbp), %rdx
callq 0x2f9f0
jmp 0x51760
movq $0x0, -0x128(%rbp)
leaq -0x118(%rbp), %rdi
leaq -0x128(%rbp), %rsi
callq 0x2fa30
movq %rax, -0x218(%rbp)
jmp 0x51787
movq -0x218(%rbp), %rdi
movq $0x0, -0x130(%rbp)
leaq -0x130(%rbp), %rsi
callq 0x2fa30
jmp 0x517a7
leaq -0x118(%rbp), %rdi
callq 0x2fba0
movq -0x138(%rbp), %rax
xorps %xmm0, %xmm0
movsd %xmm0, 0x460(%rax)
xorps %xmm0, %xmm0
movsd %xmm0, 0x468(%rax)
addq $0x220, %rsp            # imm = 0x220
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x51a09
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x519fd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x519f1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x519e5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x519d9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x519cd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x519c1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x519b5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x519a9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x5199d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x51991
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x51985
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x51979
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x5196d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x51961
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
jmp 0x51949
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
leaq -0x38(%rbp), %rdi
callq 0x2f490
jmp 0x51949
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
leaq -0xa0(%rbp), %rdi
callq 0x37a60
jmp 0x51949
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
leaq -0xe0(%rbp), %rdi
callq 0x2fba0
jmp 0x51949
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x10(%rbp)
movl %eax, -0x14(%rbp)
leaq -0x118(%rbp), %rdi
callq 0x2fba0
movq -0x1c0(%rbp), %rdi
callq 0x7760
movq -0x1b8(%rbp), %rdi
callq 0x365b0
movq -0x1b0(%rbp), %rdi
callq 0x365b0
movq -0x1a8(%rbp), %rdi
callq 0x365b0
movq -0x1a0(%rbp), %rdi
callq 0x365b0
movq -0x198(%rbp), %rdi
callq 0x365b0
movq -0x190(%rbp), %rdi
callq 0x365b0
movq -0x188(%rbp), %rdi
callq 0x365b0
movq -0x180(%rbp), %rdi
callq 0x365b0
movq -0x178(%rbp), %rdi
callq 0x365b0
movq -0x170(%rbp), %rdi
callq 0x365b0
movq -0x168(%rbp), %rdi
callq 0x365b0
movq -0x160(%rbp), %rdi
callq 0x365b0
movq -0x158(%rbp), %rdi
callq 0x365b0
movq -0x150(%rbp), %rdi
callq 0x365b0
movq -0x148(%rbp), %rdi
callq 0x365b0
movq -0x140(%rbp), %rdi
callq 0x52910
movq -0x10(%rbp), %rdi
callq 0x6760
nop