// File: /workspace/github_cpp_makefile_star2_O2/sus304[P]ForRocket/src/factory/rocket_stage_factory.cpp
// Function: forrocket::RocketStageFactory::Create(int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
forrocket::RocketStage forrocket::RocketStageFactory::Create(const int stage_number,
                                                                std::string rocket_config_json_file, 
                                                                std::string engine_config_json_file,
                                                                std::string sequence_of_event_json_file) {
    
    RocketFactory rocket_factory;
    RocketStage rocket_stage(stage_number, rocket_factory.Create(rocket_config_json_file, engine_config_json_file));

    JsonControl jc(sequence_of_event_json_file);

    rocket_stage.time_start = jc.getDouble("Flight Start Time [s]");
    rocket_stage.time_ignittion = jc.getDouble("Engine Ignittion Time [s]");

    rocket_stage.enable_launcher = jc.getBool("Enable Rail-Launcher Launch");
    if (rocket_stage.enable_launcher) {
        rocket_stage.length_launcher_rail = jc.getSubItem("Rail Launcher").getDouble("Length [m]");
    }
    
    rocket_stage.enable_cutoff = jc.getBool("Enable Engine Cutoff");
    if (rocket_stage.enable_cutoff) {
        rocket_stage.time_cutoff = jc.getSubItem("Cutoff").getDouble("Cutoff Time [s]");
        rocket_stage.rocket.engine.burn_duration = rocket_stage.time_cutoff;
    }
    
    rocket_stage.enable_program_attitude = jc.getBool("Enable Program Attitude");
    if (rocket_stage.enable_program_attitude) {
        auto jc_attitude_control = jc.getSubItem("Attitude Control");
        rocket_stage.time_start_attitude_controll = jc_attitude_control.getDouble("Start Time [s]");
        rocket_stage.time_end_attitude_controll = jc_attitude_control.getDouble("End Time [s]");
    }

    rocket_stage.enable_sepation = jc.getBool("Enable Stage Separation");
    if (rocket_stage.enable_sepation) {
        auto jc_separation = jc.getSubItem("Upper Stage");
        rocket_stage.time_separation = jc_separation.getDouble("Stage Separation Time [s]");
        rocket_stage.mass_upper_stage = jc_separation.getDouble("Upper Stage Mass [kg]");
    }

    rocket_stage.enable_despin = jc.getBool("Enable Despin Control");
    if (rocket_stage.enable_despin) {
        rocket_stage.time_despin = jc.getSubItem("Despin").getDouble("Time [s]");
    }

    rocket_stage.enable_fairing_jettson = jc.getBool("Enable Fairing Jettson");
    if (rocket_stage.enable_fairing_jettson) {
        auto jc_fairing_jettson = jc.getSubItem("Fairing");
        rocket_stage.time_jettson_fairing = jc_fairing_jettson.getDouble("Jettson Time [s]");
        rocket_stage.mass_fairing = jc_fairing_jettson.getDouble("Mass [s]");
    }

    rocket_stage.enable_parachute_open = jc.getBool("Enable Parachute Open");
    if (rocket_stage.enable_parachute_open) {
        auto jc_parachute = jc.getSubItem("Parachute");
        rocket_stage.enable_apogee_parachute_open = jc_parachute.getDouble("Enable Forced Apogee Open");
        rocket_stage.time_open_parachute = jc_parachute.getDouble("Open Time [s]");
    }

    rocket_stage.exist_second_parachute = jc.getBool("Enable Secondary Parachute Open");
    if (rocket_stage.exist_second_parachute) {
        auto jc_secondary_parachute = jc.getSubItem("Secondary Parachute");
        rocket_stage.time_open_second_parachute = jc_secondary_parachute.getDouble("Open Time [s]");
    }
    
    if (jc.getBool("Enable Auto Terminate SubOrbital Flight")) {
        double safety_factor = 1.4;
        rocket_stage.time_end = safety_factor * std::abs(60.0 * std::log(rocket_stage.rocket.engine.total_impulse) - 410.0);        
    } else {
        rocket_stage.time_end = jc.getDouble("Flight End Time [s]");
    }
    // rocket_stage.time_step = std::pow(10.0, std::floor((int)std::log10((int)rocket_stage.time_end)+1) - 5);
    rocket_stage.time_step = jc.getDouble("Time Step [s]");
    
    return rocket_stage;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x1338, %rsp           # imm = 0x1338
movq %r9, %r14
movq %r8, %r15
movl %edx, %ebp
movq %rdi, %rbx
leaq 0x4a0(%rsp), %rdi
movq %rcx, %rsi
callq 0x5460
leaq 0x480(%rsp), %rdi
movq %r15, %rsi
callq 0x5460
leaq 0x4c0(%rsp), %rdi
leaq 0x3f(%rsp), %rsi
leaq 0x4a0(%rsp), %rdx
leaq 0x480(%rsp), %rcx
callq 0x22494
leaq 0x4c0(%rsp), %rdx
movq %rbx, %rdi
movl %ebp, %esi
callq 0x263f4
leaq 0x4c0(%rsp), %rdi
callq 0x25374
leaq 0x480(%rsp), %rdi
callq 0x5688
leaq 0x4a0(%rsp), %rdi
callq 0x5688
leaq 0x460(%rsp), %rdi
movq %r14, %rsi
callq 0x5460
leaq 0x28(%rsp), %rdi
leaq 0x460(%rsp), %rsi
callq 0x660c
leaq 0x460(%rsp), %rdi
callq 0x5688
leaq 0x100ef(%rip), %rsi     # 0x35600
leaq 0x440(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x440(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x1150(%rbx)
leaq 0x440(%rsp), %rdi
callq 0x5688
leaq 0x100c5(%rip), %rsi     # 0x35616
leaq 0x420(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x420(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x1158(%rbx)
leaq 0x420(%rsp), %rdi
callq 0x5688
leaq 0x1009f(%rip), %rsi     # 0x35630
leaq 0x400(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x400(%rsp), %rsi
callq 0x6748
movb %al, 0x1160(%rbx)
leaq 0x400(%rsp), %rdi
callq 0x5688
cmpb $0x1, 0x1160(%rbx)
jne 0x2565c
leaq 0x10070(%rip), %rsi     # 0x3564c
leaq 0x3e0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x28(%rsp), %rsi
leaq 0x3e0(%rsp), %rdx
callq 0x6758
leaq 0x1004e(%rip), %rsi     # 0x3565a
leaq 0x3c0(%rsp), %rdi
leaq 0x27(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x3c0(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x1168(%rbx)
leaq 0x3c0(%rsp), %rdi
callq 0x5688
leaq 0x10(%rsp), %rdi
callq 0x68a0
leaq 0x3e0(%rsp), %rdi
callq 0x5688
leaq 0x10002(%rip), %rsi     # 0x35665
leaq 0x3a0(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x3a0(%rsp), %rsi
callq 0x6748
movb %al, 0x1170(%rbx)
leaq 0x3a0(%rsp), %rdi
callq 0x5688
cmpb $0x1, 0x1170(%rbx)
jne 0x2573b
leaq 0xffc5(%rip), %rsi      # 0x35673
leaq 0x380(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x28(%rsp), %rsi
leaq 0x380(%rsp), %rdx
callq 0x6758
leaq 0xff9c(%rip), %rsi      # 0x3567a
leaq 0x360(%rsp), %rdi
leaq 0x27(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x360(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x1178(%rbx)
leaq 0x360(%rsp), %rdi
callq 0x5688
leaq 0x10(%rsp), %rdi
callq 0x68a0
leaq 0x380(%rsp), %rdi
callq 0x5688
movsd 0x1178(%rbx), %xmm0
movsd %xmm0, 0x60(%rbx)
leaq 0xfb85(%rip), %rsi      # 0x352c7
leaq 0x340(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x340(%rsp), %rsi
callq 0x6748
movb %al, 0x1180(%rbx)
leaq 0x340(%rsp), %rdi
callq 0x5688
cmpb $0x1, 0x1180(%rbx)
jne 0x2584d
leaq 0xfefd(%rip), %rsi      # 0x3568a
leaq 0x320(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x28(%rsp), %rsi
leaq 0x320(%rsp), %rdx
callq 0x6758
leaq 0x320(%rsp), %rdi
callq 0x5688
leaq 0xfe3d(%rip), %rsi      # 0x35607
leaq 0x300(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x300(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x1188(%rbx)
leaq 0x300(%rsp), %rdi
callq 0x5688
leaq 0xffdc(%rip), %rsi      # 0x357e6
leaq 0x2e0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x2e0(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x1190(%rbx)
leaq 0x2e0(%rsp), %rdi
callq 0x5688
leaq 0x10(%rsp), %rdi
callq 0x68a0
leaq 0xfe47(%rip), %rsi      # 0x3569b
leaq 0x2c0(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x2c0(%rsp), %rsi
callq 0x6748
movb %al, 0x1198(%rbx)
leaq 0x2c0(%rsp), %rdi
callq 0x5688
cmpb $0x1, 0x1198(%rbx)
jne 0x2595f
leaq 0xfe14(%rip), %rsi      # 0x356b3
leaq 0x2a0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x28(%rsp), %rsi
leaq 0x2a0(%rsp), %rdx
callq 0x6758
leaq 0x2a0(%rsp), %rdi
callq 0x5688
leaq 0xfde3(%rip), %rsi      # 0x356bf
leaq 0x280(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x280(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x11a0(%rbx)
leaq 0x280(%rsp), %rdi
callq 0x5688
leaq 0xfdbd(%rip), %rsi      # 0x356d9
leaq 0x260(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x260(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x11a8(%rbx)
leaq 0x260(%rsp), %rdi
callq 0x5688
leaq 0x10(%rsp), %rdi
callq 0x68a0
leaq 0xfd89(%rip), %rsi      # 0x356ef
leaq 0x240(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x240(%rsp), %rsi
callq 0x6748
movb %al, 0x11b0(%rbx)
leaq 0x240(%rsp), %rdi
callq 0x5688
cmpb $0x1, 0x11b0(%rbx)
jne 0x25a31
leaq 0xfd54(%rip), %rsi      # 0x35705
leaq 0x220(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x28(%rsp), %rsi
leaq 0x220(%rsp), %rdx
callq 0x6758
leaq 0xfe09(%rip), %rsi      # 0x357ea
leaq 0x200(%rsp), %rdi
leaq 0x27(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x200(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x11b8(%rbx)
leaq 0x200(%rsp), %rdi
callq 0x5688
leaq 0x10(%rsp), %rdi
callq 0x68a0
leaq 0x220(%rsp), %rdi
callq 0x5688
leaq 0xfcd4(%rip), %rsi      # 0x3570c
leaq 0x1e0(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x1e0(%rsp), %rsi
callq 0x6748
movb %al, 0x11c0(%rbx)
leaq 0x1e0(%rsp), %rdi
callq 0x5688
cmpb $0x1, 0x11c0(%rbx)
jne 0x25b43
leaq 0xfca0(%rip), %rsi      # 0x35723
leaq 0x1c0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x28(%rsp), %rsi
leaq 0x1c0(%rsp), %rdx
callq 0x6758
leaq 0x1c0(%rsp), %rdi
callq 0x5688
leaq 0xfc6b(%rip), %rsi      # 0x3572b
leaq 0x1a0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x1a0(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x11c8(%rbx)
leaq 0x1a0(%rsp), %rdi
callq 0x5688
leaq 0xfc3c(%rip), %rsi      # 0x3573c
leaq 0x180(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x180(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x11d0(%rbx)
leaq 0x180(%rsp), %rdi
callq 0x5688
leaq 0x10(%rsp), %rdi
callq 0x68a0
leaq 0xfbfb(%rip), %rsi      # 0x35745
leaq 0x160(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x160(%rsp), %rsi
callq 0x6748
movb %al, 0x11d8(%rbx)
leaq 0x160(%rsp), %rdi
callq 0x5688
cmpb $0x1, 0x11d8(%rbx)
jne 0x25c63
leaq 0xfc18(%rip), %rsi      # 0x357ad
leaq 0x140(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x28(%rsp), %rsi
leaq 0x140(%rsp), %rdx
callq 0x6758
leaq 0x140(%rsp), %rdi
callq 0x5688
leaq 0xfb89(%rip), %rsi      # 0x3575b
leaq 0x120(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x120(%rsp), %rsi
callq 0x6738
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
setp %al
setne %cl
orb %al, %cl
movb %cl, 0x11d9(%rbx)
leaq 0x120(%rsp), %rdi
callq 0x5688
leaq 0xfb55(%rip), %rsi      # 0x35775
leaq 0x100(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x100(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x11e0(%rbx)
leaq 0x100(%rsp), %rdi
callq 0x5688
leaq 0x10(%rsp), %rdi
callq 0x68a0
leaq 0xfb19(%rip), %rsi      # 0x35783
leaq 0xe0(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0xe0(%rsp), %rsi
callq 0x6748
movb %al, 0x11e8(%rbx)
leaq 0xe0(%rsp), %rdi
callq 0x5688
cmpb $0x1, 0x11e8(%rbx)
jne 0x25d35
leaq 0xfaee(%rip), %rsi      # 0x357a3
leaq 0xc0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0x28(%rsp), %rsi
leaq 0xc0(%rsp), %rdx
callq 0x6758
leaq 0xc0(%rsp), %rdi
callq 0x5688
leaq 0xfa83(%rip), %rsi      # 0x35775
leaq 0xa0(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x72de
leaq 0x10(%rsp), %rdi
leaq 0xa0(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x11f0(%rbx)
leaq 0xa0(%rsp), %rdi
callq 0x5688
leaq 0x10(%rsp), %rdi
callq 0x68a0
leaq 0xfa7b(%rip), %rsi      # 0x357b7
leaq 0x80(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x80(%rsp), %rsi
callq 0x6748
movl %eax, %ebp
leaq 0x80(%rsp), %rdi
callq 0x5688
testb %bpl, %bpl
je 0x25da8
movsd 0x78(%rbx), %xmm0
callq 0x52b0
mulsd 0xc4f2(%rip), %xmm0     # 0x32278
addsd 0xf862(%rip), %xmm0     # 0x355f0
andpd 0xcb6a(%rip), %xmm0     # 0x32900
mulsd 0xf85a(%rip), %xmm0     # 0x355f8
movsd %xmm0, 0x11f8(%rbx)
jmp 0x25ddf
leaq 0xfa30(%rip), %rsi      # 0x357df
leaq 0x60(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x60(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x11f8(%rbx)
leaq 0x60(%rsp), %rdi
callq 0x5688
leaq 0xfa0d(%rip), %rsi      # 0x357f3
leaq 0x40(%rsp), %rdi
leaq 0x10(%rsp), %rdx
callq 0x72de
leaq 0x28(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0x6738
movsd %xmm0, 0x1200(%rbx)
leaq 0x40(%rsp), %rdi
callq 0x5688
leaq 0x28(%rsp), %rdi
callq 0x68a0
movq %rbx, %rax
addq $0x1338, %rsp           # imm = 0x1338
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %r14
leaq 0x60(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0xa0(%rsp), %rdi
jmp 0x25f6e
jmp 0x25f75
movq %rax, %r14
leaq 0xc0(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x100(%rsp), %rdi
jmp 0x25f6e
jmp 0x25f75
movq %rax, %r14
leaq 0x120(%rsp), %rdi
jmp 0x25f6e
jmp 0x25f75
movq %rax, %r14
leaq 0x140(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x180(%rsp), %rdi
jmp 0x25f6e
jmp 0x25f75
movq %rax, %r14
leaq 0x1a0(%rsp), %rdi
jmp 0x25f6e
jmp 0x25f75
movq %rax, %r14
leaq 0x1c0(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x200(%rsp), %rdi
callq 0x5688
jmp 0x25f00
movq %rax, %r14
leaq 0x10(%rsp), %rdi
callq 0x68a0
jmp 0x25f0f
movq %rax, %r14
leaq 0x220(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x260(%rsp), %rdi
jmp 0x25f6e
jmp 0x25f75
movq %rax, %r14
leaq 0x280(%rsp), %rdi
jmp 0x25f6e
jmp 0x25f75
movq %rax, %r14
leaq 0x2a0(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x2e0(%rsp), %rdi
jmp 0x25f6e
jmp 0x25f75
movq %rax, %r14
leaq 0x300(%rsp), %rdi
callq 0x5688
jmp 0x25f78
movq %rax, %r14
leaq 0x10(%rsp), %rdi
callq 0x68a0
jmp 0x260d1
movq %rax, %r14
leaq 0x320(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x360(%rsp), %rdi
callq 0x5688
jmp 0x25fb1
movq %rax, %r14
leaq 0x10(%rsp), %rdi
callq 0x68a0
jmp 0x25fc0
movq %rax, %r14
leaq 0x380(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x3c0(%rsp), %rdi
callq 0x5688
jmp 0x25fe7
movq %rax, %r14
leaq 0x10(%rsp), %rdi
callq 0x68a0
jmp 0x25ff6
movq %rax, %r14
leaq 0x3e0(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x40(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x80(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0xe0(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x160(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x1e0(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x240(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x2c0(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x340(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x3a0(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x400(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x420(%rsp), %rdi
jmp 0x260c7
jmp 0x260ce
movq %rax, %r14
leaq 0x440(%rsp), %rdi
callq 0x5688
jmp 0x260d1
movq %rax, %r14
leaq 0x28(%rsp), %rdi
callq 0x68a0
movq %rbx, %rdi
callq 0x26138
movq %r14, %rdi
callq 0x55b0
movq %rax, %r14
leaq 0x460(%rsp), %rdi
callq 0x5688
jmp 0x260db
movq %rax, %r14
jmp 0x260db
movq %rax, %r14
leaq 0x4c0(%rsp), %rdi
callq 0x25374
jmp 0x26117
movq %rax, %r14
leaq 0x480(%rsp), %rdi
callq 0x5688
jmp 0x26129
movq %rax, %r14
leaq 0x4a0(%rsp), %rdi
callq 0x5688
jmp 0x260e3