// File: /workspace/github_cpp_makefile_star2_O2/pollow[P]MIPSClide/./simulator.h
// Function: Simulator::Simulator(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&)
Simulator( string &_content ) : Assembler(_content) {
        func_table["add"]   = &Simulator::_add ;
        func_table["sub"]   = &Simulator::_sub ;
        func_table["and"]   = &Simulator::_and ;
        func_table["or"]    = &Simulator::_or  ;
        func_table["xor"]   = &Simulator::_xor ;
        func_table["nor"]   = &Simulator::_nor ;
        func_table["slt"]   = &Simulator::_slt ;
        func_table["srl"]   = &Simulator::_srl ;
        func_table["sll"]   = &Simulator::_sll ;
        func_table["jr"]    = &Simulator::_jr  ;
        func_table["jalr"]  = &Simulator::_jalr;
        func_table["addi"]  = &Simulator::_addi;
        func_table["andi"]  = &Simulator::_andi;
        func_table["ori"]   = &Simulator::_ori ;
        func_table["xori"]  = &Simulator::_xori;
        func_table["lui"]   = &Simulator::_lui ;
        func_table["lw"]    = &Simulator::_lw  ;
        func_table["sw"]    = &Simulator::_sw  ;
        func_table["beq"]   = &Simulator::_beq ;
        func_table["bne"]   = &Simulator::_bne ;
        func_table["slti"]  = &Simulator::_slti;
        func_table["j"]     = &Simulator::_j   ;
        func_table["jal"]   = &Simulator::_jal ;
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x30, %rsp
movq %rdi, %rbx
callq 0x93f8
xorps %xmm0, %xmm0
movups %xmm0, 0xa0(%rbx)
andq $0x0, 0xb0(%rbx)
leaq 0x140(%rbx), %r14
leaq 0x148(%rbx), %rax
andl $0x0, 0x148(%rbx)
andq $0x0, 0x150(%rbx)
movq %rax, 0x158(%rbx)
movq %rax, 0x160(%rbx)
andq $0x0, 0x168(%rbx)
leaq 0x17658(%rip), %rsi     # 0x203eb
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1ad9(%rip), %rcx      # 0xa88c
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x1762b(%rip), %rsi     # 0x203f6
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1ac5(%rip), %rcx      # 0xa8b0
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x17694(%rip), %rsi     # 0x20497
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1ab1(%rip), %rcx      # 0xa8d4
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x16262(%rip), %rsi     # 0x1f09d
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1a9d(%rip), %rcx      # 0xa8f8
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x16225(%rip), %rsi     # 0x1f098
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1a89(%rip), %rcx      # 0xa91c
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x161f1(%rip), %rsi     # 0x1f09c
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1a75(%rip), %rcx      # 0xa940
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x161bd(%rip), %rsi     # 0x1f0a0
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1a63(%rip), %rcx      # 0xa966
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x16189(%rip), %rsi     # 0x1f0a4
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1a55(%rip), %rcx      # 0xa990
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x16155(%rip), %rsi     # 0x1f0a8
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1a39(%rip), %rcx      # 0xa9ac
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x16121(%rip), %rsi     # 0x1f0ac
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1a1d(%rip), %rcx      # 0xa9c8
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x160ec(%rip), %rsi     # 0x1f0af
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x19fd(%rip), %rcx      # 0xa9e0
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x160b9(%rip), %rsi     # 0x1f0b4
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x19ef(%rip), %rcx      # 0xaa0a
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x16086(%rip), %rsi     # 0x1f0b9
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x19d1(%rip), %rcx      # 0xaa24
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x16054(%rip), %rsi     # 0x1f0bf
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x19b7(%rip), %rcx      # 0xaa42
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x1601b(%rip), %rsi     # 0x1f0be
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x199d(%rip), %rcx      # 0xaa60
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x15fe8(%rip), %rsi     # 0x1f0c3
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1983(%rip), %rcx      # 0xaa7e
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x15fb4(%rip), %rsi     # 0x1f0c7
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x195f(%rip), %rcx      # 0xaa92
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x15f7f(%rip), %rsi     # 0x1f0ca
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1957(%rip), %rcx      # 0xaac2
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x15f4a(%rip), %rsi     # 0x1f0cd
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x194f(%rip), %rcx      # 0xaaf2
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x15f16(%rip), %rsi     # 0x1f0d1
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x193f(%rip), %rcx      # 0xab1a
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x15ee2(%rip), %rsi     # 0x1f0d5
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x192f(%rip), %rcx      # 0xab42
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x15eaf(%rip), %rsi     # 0x1f0da
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x1919(%rip), %rcx      # 0xab64
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
leaq 0x15e79(%rip), %rsi     # 0x1f0dc
leaq -0x48(%rbp), %rdi
leaq -0x21(%rbp), %rdx
callq 0x5120
leaq -0x48(%rbp), %rsi
movq %r14, %rdi
callq 0x9448
leaq 0x18f1(%rip), %rcx      # 0xab74
movq %rcx, (%rax)
andq $0x0, 0x8(%rax)
leaq -0x48(%rbp), %rdi
callq 0x5170
addq $0x30, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
jmp 0x92f9
jmp 0x9307
movq %rax, %r15
leaq -0x48(%rbp), %rdi
callq 0x5170
jmp 0x930a
movq %rax, %r15
leaq 0xa0(%rbx), %r12
movq %r14, %rdi
callq 0x9940
movq %r12, %rdi
callq 0x94b2
movq %rbx, %rdi
callq 0x94de
movq %r15, %rdi
callq 0x5580