// File: /workspace/github_c_makefile_star2_O1/FredTheDino[P]Fog/src/engine/unix_main.cpp
// Function: Fog::setup_debug_keybinds()
void setup_debug_keybinds() {
    using namespace Input;
    CHECK(add(K(F10), QUIT),
          "Failed to create mapping");

    CHECK(add(K(LSHIFT), TWEAK_SMOOTH),
          "Failed to create mapping");

    CHECK(add(K(LCTRL), TWEAK_STEP),
          "Failed to create mapping");

    CHECK(add(K(F1), DEBUG_PERF),
          "Failed to create mapping");

    CHECK(add(K(F2), DEBUG_VIEW),
          "Failed to create mapping");

    CHECK(add(K(F3), DEBUG_VALUES),
          "Failed to create mapping");

    const auto debug_callback = [](f32, f32, f32, void*) {
        if (pressed(DEBUG_PERF))
            show_perf = !show_perf;
        if (pressed(DEBUG_VIEW))
            debug_view = !debug_view;
        if (pressed(DEBUG_VALUES))
            show_debug_values = !show_debug_values;
    };
    Logic::add_callback(Logic::At::PRE_UPDATE, debug_callback, Logic::now(),
                        Logic::FOREVER);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
leaq 0x3d0c2(%rip), %rax     # 0x64978
movl (%rax), %esi
movss 0x8744(%rip), %xmm0     # 0x30004
movl $0x861, %edi            # imm = 0x861
movl $0x1, %edx
callq 0xa17f
testb %al, %al
jne 0x27905
movq 0x276f6(%rip), %rax     # 0x4efd0
movq (%rax), %rsi
leaq 0x928f(%rip), %rdi      # 0x30b73
leaq 0xa4df(%rip), %rdx      # 0x31dca
leaq 0x9289(%rip), %r8       # 0x30b7b
leaq 0xa4ea(%rip), %r9       # 0x31de3
movl $0x81, %ecx
xorl %eax, %eax
callq 0x711f
leaq 0x3d070(%rip), %rax     # 0x6497c
movl (%rax), %esi
movss 0x86ee(%rip), %xmm0     # 0x30004
movl $0x1c21, %edi           # imm = 0x1C21
movl $0x1, %edx
callq 0xa17f
testb %al, %al
jne 0x2795b
movq 0x276a0(%rip), %rax     # 0x4efd0
movq (%rax), %rsi
leaq 0x9239(%rip), %rdi      # 0x30b73
leaq 0xa489(%rip), %rdx      # 0x31dca
leaq 0x9233(%rip), %r8       # 0x30b7b
leaq 0xa4c2(%rip), %r9       # 0x31e11
movl $0x84, %ecx
xorl %eax, %eax
callq 0x711f
leaq 0x3d01e(%rip), %rax     # 0x64980
movl (%rax), %esi
movss 0x8698(%rip), %xmm0     # 0x30004
movl $0x1c01, %edi           # imm = 0x1C01
movl $0x1, %edx
callq 0xa17f
testb %al, %al
jne 0x279b1
movq 0x2764a(%rip), %rax     # 0x4efd0
movq (%rax), %rsi
leaq 0x91e3(%rip), %rdi      # 0x30b73
leaq 0xa433(%rip), %rdx      # 0x31dca
leaq 0x91dd(%rip), %r8       # 0x30b7b
leaq 0xa4a5(%rip), %r9       # 0x31e4a
movl $0x87, %ecx
xorl %eax, %eax
callq 0x711f
leaq 0x3cfcc(%rip), %rax     # 0x64984
movl (%rax), %esi
movss 0x8642(%rip), %xmm0     # 0x30004
movl $0x741, %edi            # imm = 0x741
movl $0x1, %edx
callq 0xa17f
testb %al, %al
jne 0x27a07
movq 0x275f4(%rip), %rax     # 0x4efd0
movq (%rax), %rsi
leaq 0x918d(%rip), %rdi      # 0x30b73
leaq 0xa3dd(%rip), %rdx      # 0x31dca
leaq 0x9187(%rip), %r8       # 0x30b7b
leaq 0xa485(%rip), %r9       # 0x31e80
movl $0x8a, %ecx
xorl %eax, %eax
callq 0x711f
leaq 0x3cf7a(%rip), %rax     # 0x64988
movl (%rax), %esi
movss 0x85ec(%rip), %xmm0     # 0x30004
movl $0x761, %edi            # imm = 0x761
movl $0x1, %edx
callq 0xa17f
testb %al, %al
jne 0x27a5d
movq 0x2759e(%rip), %rax     # 0x4efd0
movq (%rax), %rsi
leaq 0x9137(%rip), %rdi      # 0x30b73
leaq 0xa387(%rip), %rdx      # 0x31dca
leaq 0x9131(%rip), %r8       # 0x30b7b
leaq 0xa462(%rip), %r9       # 0x31eb3
movl $0x8d, %ecx
xorl %eax, %eax
callq 0x711f
leaq 0x3cf28(%rip), %rax     # 0x6498c
movl (%rax), %esi
movss 0x8596(%rip), %xmm0     # 0x30004
movl $0x781, %edi            # imm = 0x781
movl $0x1, %edx
callq 0xa17f
testb %al, %al
jne 0x27ab3
movq 0x27548(%rip), %rax     # 0x4efd0
movq (%rax), %rsi
leaq 0x90e1(%rip), %rdi      # 0x30b73
leaq 0xa331(%rip), %rdx      # 0x31dca
leaq 0x90db(%rip), %r8       # 0x30b7b
leaq 0xa43f(%rip), %r9       # 0x31ee6
movl $0x90, %ecx
xorl %eax, %eax
callq 0x711f
leaq 0x28e66(%rip), %rax     # 0x50920
movss 0x14028(%rax), %xmm0
leaq 0x61b7(%rip), %rsi      # 0x2dc80
movss 0x8757(%rip), %xmm1     # 0x30228
xorps %xmm2, %xmm2
xorl %edi, %edi
xorl %edx, %edx
popq %rbp
jmp 0x24677