// File: /workspace/github_cpp_makefile_star2_O1/KellerMartins[P]PDS2-Pacman/source/game/game.cpp
// Function: Game::GameOverStateUpdate()
void GameOverStateUpdate(){
        if(stateTimer < 4){
            std::ostringstream scoreString;
            scoreString << "Score:" << pacman->GetPontuacao();
            UI::DrawTextCentered(scoreString.str(), 0.5, 0.65, 8, 0.5, RAYWHITE);
            UI::DrawTextCentered("Game Over!", 0.5, 0.5, 15, 0.0, PURPLE);
            GameEvents::TriggerMenuUpdate();

            RenderManager::camera.position = Lerp(RenderManager::camera.position, 
                                                  {LARGURA/2, 32.0f, ALTURA/1.9}, 
                                                  stateTimer/32);
            RenderManager::camera.target = Lerp(RenderManager::camera.target,
                                                {LARGURA/2, 0.0f, ALTURA/2}, 
                                                stateTimer/32);
        }else{
            Mapa::CarregaArquivo("assets/maps/mapa1.txt");
            GameEvents::TriggerRestart();
            SetState(Menu);
        }
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r14
pushq %rbx
subq $0x1e0, %rsp            # imm = 0x1E0
movsd 0x8df59(%rip), %xmm0    # 0x99358
ucomisd 0xcea39(%rip), %xmm0    # 0xd9e40
jbe 0xb59f
leaq -0x1e8(%rbp), %rbx
movq %rbx, %rdi
callq 0x8a90
leaq 0x8dfd6(%rip), %rsi     # 0x993f9
movl $0x6, %edx
movq %rbx, %rdi
callq 0x8980
movq 0xcea01(%rip), %rdi     # 0xd9e38
callq 0xdc7e
movl %eax, %esi
leaq -0x1e8(%rbp), %rdi
callq 0x8570
leaq -0x1e0(%rbp), %rsi
leaq -0x70(%rbp), %rdi
callq 0x8d10
leaq -0x70(%rbp), %rdi
movss 0x8deb2(%rip), %xmm1    # 0x99318
movss 0x8deae(%rip), %xmm2    # 0x9931c
movss 0x8de7e(%rip), %xmm0    # 0x992f4
movapd %xmm0, %xmm3
movl $0xfff5f5f5, %esi       # imm = 0xFFF5F5F5
callq 0x104b2
leaq -0x60(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0xb49d
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x8880
leaq -0x20(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x8df84(%rip), %rsi     # 0x99430
leaq 0x8df87(%rip), %rdx     # 0x9943a
leaq -0x30(%rbp), %rdi
callq 0xa78c
leaq -0x30(%rbp), %rdi
movss 0x8de2c(%rip), %xmm0    # 0x992f4
movss 0x8de44(%rip), %xmm2    # 0x99314
xorpd %xmm3, %xmm3
movapd %xmm0, %xmm1
movl $0xffff7ac8, %esi       # imm = 0xFFFF7AC8
callq 0x104b2
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0xb4f7
movq -0x20(%rbp), %rsi
incq %rsi
callq 0x8880
callq 0xb6b4
leaq 0xcc32d(%rip), %rbx     # 0xd7830
movsd (%rbx), %xmm0
movss 0x8(%rbx), %xmm1
movsd 0xce92c(%rip), %xmm2    # 0xd9e40
mulsd 0x8de44(%rip), %xmm2    # 0x99360
cvtsd2ss %xmm2, %xmm4
movsd 0x8ddb8(%rip), %xmm2    # 0x992e0
movss 0x8ddf0(%rip), %xmm3    # 0x99320
callq 0x9db5
movlpd %xmm0, (%rbx)
movss %xmm1, 0x8(%rbx)
movsd 0xc(%rbx), %xmm0
movss 0x14(%rbx), %xmm1
movsd 0xce8f0(%rip), %xmm2    # 0xd9e40
mulsd 0x8de08(%rip), %xmm2    # 0x99360
xorps %xmm4, %xmm4
cvtsd2ss %xmm2, %xmm4
movss 0x8ddbd(%rip), %xmm2    # 0x99324
movss 0x8ddb9(%rip), %xmm3    # 0x99328
callq 0x9db5
movlpd %xmm0, 0xc(%rbx)
movss %xmm1, 0x14(%rbx)
movq 0xcba43(%rip), %rsi     # 0xd6fc8
leaq -0x1e8(%rbp), %rdi
callq 0x8440
leaq -0x178(%rbp), %rdi
callq 0x8280
jmp 0xb601
leaq -0x40(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x8ddba(%rip), %rsi     # 0x99368
leaq 0x8ddc8(%rip), %rdx     # 0x9937d
leaq -0x50(%rbp), %rbx
movq %rbx, %rdi
callq 0xa78c
movq %rbx, %rdi
callq 0xbb6e
movq -0x50(%rbp), %rdi
cmpq %r14, %rdi
je 0xb5de
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x8880
callq 0xb710
movq $0x0, 0xce852(%rip) # 0xd9e40
callq 0xac5b
leaq -0x90d(%rip), %rax      # 0xaced
movq %rax, 0xce857(%rip)     # 0xd9e58
addq $0x1e0, %rsp            # imm = 0x1E0
popq %rbx
popq %r14
popq %rbp
retq
jmp 0xb65d
jmp 0xb65d
movq %rax, %rbx
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0xb660
movq -0x20(%rbp), %rsi
jmp 0xb639
jmp 0xb65d
movq %rax, %rbx
leaq -0x60(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0xb660
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x8880
jmp 0xb660
movq %rax, %rbx
movq -0x50(%rbp), %rdi
cmpq %r14, %rdi
je 0xb67f
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x8880
jmp 0xb67f
movq %rax, %rbx
movq 0xcb961(%rip), %rsi     # 0xd6fc8
leaq -0x1e8(%rbp), %rdi
callq 0x8440
leaq -0x178(%rbp), %rdi
callq 0x8280
movq %rbx, %rdi
callq 0x8ea0