// File: /workspace/github_cpp_makefile_star2_O3/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 0x8df85(%rip), %xmm0    # 0x99358
ucomisd 0xcea65(%rip), %xmm0    # 0xd9e40
jbe 0xb573
leaq -0x1e8(%rbp), %rbx
movq %rbx, %rdi
callq 0x8a90
leaq 0x8e002(%rip), %rsi     # 0x993f9
movl $0x6, %edx
movq %rbx, %rdi
callq 0x8980
movq 0xcea2d(%rip), %rdi     # 0xd9e38
callq 0xdd2a
movl %eax, %esi
leaq -0x1e8(%rbp), %rdi
callq 0x8570
leaq -0x1e0(%rbp), %rsi
leaq -0x70(%rbp), %rdi
callq 0x8d10
leaq -0x70(%rbp), %rdi
movss 0x8dede(%rip), %xmm1    # 0x99318
movss 0x8deda(%rip), %xmm2    # 0x9931c
movss 0x8deaa(%rip), %xmm0    # 0x992f4
movapd %xmm0, %xmm3
movl $0xfff5f5f5, %esi       # imm = 0xFFF5F5F5
callq 0x1055a
leaq -0x60(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0xb471
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x8880
leaq -0x20(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x8dfb0(%rip), %rsi     # 0x99430
leaq 0x8dfb3(%rip), %rdx     # 0x9943a
leaq -0x30(%rbp), %rdi
callq 0xa75c
leaq -0x30(%rbp), %rdi
movss 0x8de58(%rip), %xmm0    # 0x992f4
movss 0x8de70(%rip), %xmm2    # 0x99314
xorpd %xmm3, %xmm3
movapd %xmm0, %xmm1
movl $0xffff7ac8, %esi       # imm = 0xFFFF7AC8
callq 0x1055a
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0xb4cb
movq -0x20(%rbp), %rsi
incq %rsi
callq 0x8880
callq 0xb688
leaq 0xcc359(%rip), %rbx     # 0xd7830
movsd (%rbx), %xmm0
movss 0x8(%rbx), %xmm1
movsd 0xce958(%rip), %xmm2    # 0xd9e40
mulsd 0x8de70(%rip), %xmm2    # 0x99360
cvtsd2ss %xmm2, %xmm4
movsd 0x8dde4(%rip), %xmm2    # 0x992e0
movss 0x8de1c(%rip), %xmm3    # 0x99320
callq 0x9db1
movlpd %xmm0, (%rbx)
movss %xmm1, 0x8(%rbx)
movsd 0xc(%rbx), %xmm0
movss 0x14(%rbx), %xmm1
movsd 0xce91c(%rip), %xmm2    # 0xd9e40
mulsd 0x8de34(%rip), %xmm2    # 0x99360
xorps %xmm4, %xmm4
cvtsd2ss %xmm2, %xmm4
movss 0x8dde9(%rip), %xmm2    # 0x99324
movss 0x8dde5(%rip), %xmm3    # 0x99328
callq 0x9db1
movlpd %xmm0, 0xc(%rbx)
movss %xmm1, 0x14(%rbx)
movq 0xcba6f(%rip), %rsi     # 0xd6fc8
leaq -0x1e8(%rbp), %rdi
callq 0x8440
leaq -0x178(%rbp), %rdi
callq 0x8280
jmp 0xb5d5
leaq -0x40(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x8dde6(%rip), %rsi     # 0x99368
leaq 0x8ddf4(%rip), %rdx     # 0x9937d
leaq -0x50(%rbp), %rbx
movq %rbx, %rdi
callq 0xa75c
movq %rbx, %rdi
callq 0xbb46
movq -0x50(%rbp), %rdi
cmpq %r14, %rdi
je 0xb5b2
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x8880
callq 0xb6e4
movq $0x0, 0xce87e(%rip) # 0xd9e40
callq 0xac2f
leaq -0x90d(%rip), %rax      # 0xacc1
movq %rax, 0xce883(%rip)     # 0xd9e58
addq $0x1e0, %rsp            # imm = 0x1E0
popq %rbx
popq %r14
popq %rbp
retq
jmp 0xb631
jmp 0xb631
movq %rax, %rbx
movq -0x30(%rbp), %rdi
cmpq %r14, %rdi
je 0xb634
movq -0x20(%rbp), %rsi
jmp 0xb60d
jmp 0xb631
movq %rax, %rbx
leaq -0x60(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0xb634
movq -0x60(%rbp), %rsi
incq %rsi
callq 0x8880
jmp 0xb634
movq %rax, %rbx
movq -0x50(%rbp), %rdi
cmpq %r14, %rdi
je 0xb653
movq -0x40(%rbp), %rsi
incq %rsi
callq 0x8880
jmp 0xb653
movq %rax, %rbx
movq 0xcb98d(%rip), %rsi     # 0xd6fc8
leaq -0x1e8(%rbp), %rdi
callq 0x8440
leaq -0x178(%rbp), %rdi
callq 0x8280
movq %rbx, %rdi
callq 0x8ea0