summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoralex <alex@ASUS>2018-09-24 15:06:29 +0200
committeralex <alex@ASUS>2018-09-24 15:06:29 +0200
commit5585d5123cfd999d078f6530993c54789f265ec9 (patch)
tree5d6675721b19d79edbf3e79b83f29b4bcdb843ee
parenta73f942c11e48b11ed940ce660232e7c431c6bed (diff)
Change win build system MSYS -> MSYS2 (x64 support); Add assembly step in compilation; Rename obj dirs to tmp
-rw-r--r--Makefile32
-rw-r--r--README.txt2
-rw-r--r--bin/Makefile50
-rw-r--r--libalx/Makefile6
-rw-r--r--libalx/tmp/Makefile (renamed from libalx/obj/Makefile)80
-rw-r--r--libalx/tmp/alx_cmp.s49
-rw-r--r--libalx/tmp/alx_file.s97
-rw-r--r--libalx/tmp/alx_input.s545
-rw-r--r--libalx/tmp/alx_mask.s26
-rw-r--r--libalx/tmp/alx_math.s82
-rw-r--r--libalx/tmp/alx_ncur.s1793
-rw-r--r--libalx/tmp/alx_seed.s87
-rw-r--r--modules/Makefile4
-rw-r--r--modules/about/Makefile6
-rw-r--r--modules/about/tmp/Makefile (renamed from modules/about/obj/Makefile)27
-rw-r--r--modules/about/tmp/about.s214
-rw-r--r--modules/ctrl/Makefile6
-rw-r--r--modules/ctrl/tmp/Makefile (renamed from modules/ctrl/obj/Makefile)18
-rw-r--r--modules/ctrl/tmp/start.s151
-rw-r--r--modules/game/Makefile6
-rw-r--r--modules/game/tmp/Makefile (renamed from modules/game/obj/Makefile)46
-rw-r--r--modules/game/tmp/game.s1170
-rw-r--r--modules/game/tmp/game_iface.s1218
-rw-r--r--modules/menu/Makefile6
-rw-r--r--modules/menu/tmp/Makefile (renamed from modules/menu/obj/Makefile)57
-rw-r--r--modules/menu/tmp/menu_clui.s453
-rw-r--r--modules/menu/tmp/menu_gui.s2823
-rw-r--r--modules/menu/tmp/menu_iface.s257
-rw-r--r--modules/menu/tmp/menu_tui.s830
-rw-r--r--modules/menu/tmp/parser.s574
-rw-r--r--modules/player/Makefile6
-rw-r--r--modules/player/obj/Makefile91
-rw-r--r--modules/player/tmp/Makefile103
-rw-r--r--modules/player/tmp/player_clui.s1120
-rw-r--r--modules/player/tmp/player_gui.s2416
-rw-r--r--modules/player/tmp/player_iface.s930
-rw-r--r--modules/player/tmp/player_tui.s3117
-rw-r--r--modules/save/Makefile6
-rw-r--r--modules/save/tmp/Makefile (renamed from modules/save/obj/Makefile)34
-rw-r--r--modules/save/tmp/save.s685
-rw-r--r--modules/save/tmp/score.s740
-rw-r--r--modules/tmp/Makefile47
-rw-r--r--modules/xyzzy/Makefile6
-rw-r--r--modules/xyzzy/tmp/Makefile (renamed from modules/xyzzy/obj/Makefile)15
-rw-r--r--modules/xyzzy/tmp/xyzzy.s234
-rw-r--r--share/README.txt2
-rw-r--r--tmp/Makefile (renamed from obj/Makefile)9
-rw-r--r--tmp/main.s99
48 files changed, 20089 insertions, 286 deletions
diff --git a/Makefile b/Makefile
index 5d119e1..73b3557 100644
--- a/Makefile
+++ b/Makefile
@@ -86,7 +86,7 @@ MAIN_DIR = $(CURDIR)
LIBALX_DIR = $(CURDIR)/libalx/
MODULES_DIR = $(CURDIR)/modules/
-OBJ_DIR = $(CURDIR)/obj/
+TMP_DIR = $(CURDIR)/tmp/
BIN_DIR = $(CURDIR)/bin/
export MAIN_DIR
@@ -128,18 +128,16 @@ export BIN_NAME
################################################################################
# Make variables (CC, etc...)
-ifeq ($(OS), linux)
CC = gcc
+ AS = as
LD = ld
-else ifeq ($(OS), win)
- CC = gcc.exe
- LD = ld.exe
-endif
export CC
+export AS
export LD
################################################################################
+# cflags
CFLAGS = -std=c11
CFLAGS += `pkg-config --cflags gtk+-2.0`
CFLAGS += -D PROG_VERSION=\"$(PROGRAMVERSION)\"
@@ -148,21 +146,27 @@ CFLAGS += -D SHARE_DIR=\"$(SHARE_DIR)\"
CFLAGS += -D 'INSTALL_VAR_DIR="$(INSTALL_VAR_DIR)"'
CFLAGS += -D VAR_DIR=\"$(VAR_DIR)\"
-GTK_LIBS = `pkg-config --libs gtk+-2.0`
ifeq ($(OS), linux)
CFLAGS += -D OS_LINUX
-
- LIBS = -l m -l ncursesw $(GTK_LIBS)
else ifeq ($(OS), win)
CFLAGS += -D OS_WIN
# curses
- CFLAGS += -D _XOPEN_SOURCE=500 -I /mingw/include/ncursesw -I /mingw/include
+ CFLAGS += -D _XOPEN_SOURCE=500 -I /mingw64/include/ncurses
+endif
+
+export CFLAGS
+
+################################################################################
+# libs
+CURSES_LIBS = -l ncurses
+GTK_LIBS = `pkg-config --libs gtk+-2.0`
- CURSES_LIBS = -L /mingw/lib -l ncursesw -l psapi
+ifeq ($(OS), linux)
+ LIBS = -l m $(CURSES_LIBS) $(GTK_LIBS)
+else ifeq ($(OS), win)
LIBS = -static -l m $(CURSES_LIBS) $(GTK_LIBS)
endif
-export CFLAGS
export LIBS
################################################################################
@@ -184,7 +188,7 @@ modules: libalx
PHONY += object
object: modules libalx
- $(Q)cd $(OBJ_DIR) && $(MAKE) && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) && cd ..
PHONY += binary
binary: object
@@ -233,7 +237,7 @@ PHONY += clean
clean:
$(Q)cd $(LIBALX_DIR) && $(MAKE) clean && cd ..
$(Q)cd $(MODULES_DIR) && $(MAKE) clean && cd ..
- $(Q)cd $(OBJ_DIR) && $(MAKE) clean && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) clean && cd ..
PHONY += mrproper
mrproper: clean
diff --git a/README.txt b/README.txt
index ebdf9c3..c399fe2 100644
--- a/README.txt
+++ b/README.txt
@@ -46,7 +46,7 @@ site:
COMPILE:
- linux:
$ make
- - windows (MSYS):
+ - windows (MSYS2):
$ make OS=win
INSTALL:
diff --git a/bin/Makefile b/bin/Makefile
index 6211f13..6107a75 100644
--- a/bin/Makefile
+++ b/bin/Makefile
@@ -2,54 +2,22 @@
# directories
-LIBALX_OBJ_DIR = $(LIBALX_DIR)/obj/
+LIBALX_TMP_DIR = $(LIBALX_DIR)/tmp/
+MODULES_TMP_DIR = $(MODULES_DIR)/tmp/
-ABOUT_DIR = $(MODULES_DIR)/about/
-ABOUT_OBJ_DIR = $(ABOUT_DIR)/obj/
-
-CTRL_DIR = $(MODULES_DIR)/ctrl/
-CTRL_OBJ_DIR = $(CTRL_DIR)/obj/
-
-GAME_DIR = $(MODULES_DIR)/game/
-GAME_OBJ_DIR = $(GAME_DIR)/obj/
-
-MENU_DIR = $(MODULES_DIR)/menu/
-MENU_OBJ_DIR = $(MENU_DIR)/obj/
-
-PLAY_DIR = $(MODULES_DIR)/player/
-PLAY_OBJ_DIR = $(PLAY_DIR)/obj/
-
-SAVE_DIR = $(MODULES_DIR)/save/
-SAVE_OBJ_DIR = $(SAVE_DIR)/obj/
-
-XYZZY_DIR = $(MODULES_DIR)/xyzzy/
-XYZZY_OBJ_DIR = $(XYZZY_DIR)/obj/
-
-OBJ_DIR = $(MAIN_DIR)/obj/
+TMP_DIR = $(MAIN_DIR)/tmp/
# dependencies
_ALL = mine-sweeper mine-sweeper.exe
ALL = $(BIN_NAME)
-MAIN_OBJ_LIBALX = alx_lib.o
-MAIN_OBJ_ABOUT = about_mod.o
-MAIN_OBJ_CTRL = ctrl_mod.o
-MAIN_OBJ_GAME = game_mod.o
-MAIN_OBJ_MENU = menu_mod.o
-MAIN_OBJ_PLAY = player_mod.o
-MAIN_OBJ_SAVE = save_mod.o
-MAIN_OBJ_XYZZY = xyzzy_mod.o
+MAIN_OBJ_LIBALX = alx_lib.o
+MAIN_OBJ_MODULES = modules.o
-MAIN_OBJS = $(OBJ_DIR)/main.o \
- $(patsubst %,$(LIBALX_OBJ_DIR)/%,$(MAIN_OBJ_LIBALX)) \
- $(patsubst %,$(ABOUT_OBJ_DIR)/%,$(MAIN_OBJ_ABOUT)) \
- $(patsubst %,$(CTRL_OBJ_DIR)/%,$(MAIN_OBJ_CTRL)) \
- $(patsubst %,$(GAME_OBJ_DIR)/%,$(MAIN_OBJ_GAME)) \
- $(patsubst %,$(MENU_OBJ_DIR)/%,$(MAIN_OBJ_MENU)) \
- $(patsubst %,$(PLAY_OBJ_DIR)/%,$(MAIN_OBJ_PLAY)) \
- $(patsubst %,$(SAVE_OBJ_DIR)/%,$(MAIN_OBJ_SAVE)) \
- $(patsubst %,$(XYZZY_OBJ_DIR)/%,$(MAIN_OBJ_XYZZY))
+MAIN_OBJS = $(TMP_DIR)/main.o \
+ $(patsubst %,$(LIBALX_TMP_DIR)/%,$(MAIN_OBJ_LIBALX)) \
+ $(patsubst %,$(MODULES_TMP_DIR)/%,$(MAIN_OBJ_MODULES))
# target: dependencies
@@ -60,7 +28,7 @@ all: $(ALL)
$(BIN_NAME): $(MAIN_OBJS)
$(Q)$(CC) $^ -o $@ $(LIBS)
- @echo "\tBIN $@"
+ @echo "\tCC $@"
@echo ""
diff --git a/libalx/Makefile b/libalx/Makefile
index a3e998b..e0096c4 100644
--- a/libalx/Makefile
+++ b/libalx/Makefile
@@ -4,16 +4,16 @@
# directories
-OBJ_DIR = $(LIBALX_DIR)/obj/
+TMP_DIR = $(LIBALX_DIR)/tmp/
# target: dependencies
# action
all:
- $(Q)cd $(OBJ_DIR) && $(MAKE) && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) && cd ..
clean:
- $(Q)cd $(OBJ_DIR) && $(MAKE) clean && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) clean && cd ..
@echo "Clean libalx"
diff --git a/libalx/obj/Makefile b/libalx/tmp/Makefile
index 84eae78..7595cfd 100644
--- a/libalx/obj/Makefile
+++ b/libalx/tmp/Makefile
@@ -5,7 +5,6 @@
# directories
INC_DIR = $(LIBALX_DIR)/inc/
-OBJ_DIR = $(LIBALX_DIR)/obj/
SRC_DIR = $(LIBALX_DIR)/src/
# dependencies
@@ -49,38 +48,59 @@ all: $(ALL)
alx_lib.o: $(_ALL)
$(Q)$(LD) -r $^ -o $@
- @echo "\tLD $@"
+ @echo " LD $@"
@echo ""
-alx_cmp.o: $(CMP_DEPS)
- $(Q)$(CC) $(CFLAGS) $(CMP_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-alx_file.o: $(FILE_DEPS)
- $(Q)$(CC) $(CFLAGS) $(FILE_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-alx_input.o: $(INPUT_DEPS)
- $(Q)$(CC) $(CFLAGS) $(INPUT_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-alx_mask.o: $(MASK_DEPS)
- $(Q)$(CC) $(CFLAGS) $(MASK_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-alx_math.o: $(MATH_DEPS)
- $(Q)$(CC) $(CFLAGS) $(MATH_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-alx_ncur.o: $(NCUR_DEPS)
- $(Q)$(CC) $(CFLAGS) $(NCUR_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-alx_seed.o: $(SEED_DEPS)
- $(Q)$(CC) $(CFLAGS) $(SEED_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
+alx_cmp.s: $(CMP_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(CMP_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+alx_cmp.o: alx_cmp.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+alx_file.s: $(FILE_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(FILE_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+alx_file.o: alx_file.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+alx_input.s: $(INPUT_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(INPUT_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+alx_input.o: alx_input.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+alx_mask.s: $(MASK_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(MASK_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+alx_mask.o: alx_mask.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+alx_math.s: $(MATH_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(MATH_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+alx_math.o: alx_math.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+alx_ncur.s: $(NCUR_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(NCUR_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+alx_ncur.o: alx_ncur.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+alx_seed.s: $(SEED_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(SEED_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+alx_seed.o: alx_seed.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
clean:
- $(Q)rm -f *.o
+ $(Q)rm -f *.o *.s
diff --git a/libalx/tmp/alx_cmp.s b/libalx/tmp/alx_cmp.s
new file mode 100644
index 0000000..ae25378
--- /dev/null
+++ b/libalx/tmp/alx_cmp.s
@@ -0,0 +1,49 @@
+ .file "alx_cmp.c"
+ .text
+ .globl compare_int64
+ .type compare_int64, @function
+compare_int64:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movq -24(%rbp), %rax
+ movq (%rax), %rdx
+ movq -32(%rbp), %rax
+ movq (%rax), %rax
+ cmpq %rax, %rdx
+ jge .L2
+ movl $-1, -4(%rbp)
+ jmp .L3
+.L2:
+ movq -24(%rbp), %rax
+ movq (%rax), %rdx
+ movq -32(%rbp), %rax
+ movq (%rax), %rax
+ cmpq %rax, %rdx
+ jle .L4
+ movl $1, -4(%rbp)
+ jmp .L3
+.L4:
+ movq -24(%rbp), %rax
+ movq (%rax), %rdx
+ movq -32(%rbp), %rax
+ movq (%rax), %rax
+ cmpq %rax, %rdx
+ jne .L3
+ movl $0, -4(%rbp)
+.L3:
+ movl -4(%rbp), %eax
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size compare_int64, .-compare_int64
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/libalx/tmp/alx_file.s b/libalx/tmp/alx_file.s
new file mode 100644
index 0000000..332472e
--- /dev/null
+++ b/libalx/tmp/alx_file.s
@@ -0,0 +1,97 @@
+ .file "alx_file.c"
+ .section .rodata
+.LC0:
+ .string "r"
+.LC1:
+ .string "\302\241 FILE is too big !"
+.LC2:
+ .string "\302\241 FILE error !"
+.LC3:
+ .string " errno = %i;\n"
+.LC4:
+ .string "%s"
+ .text
+ .globl alx_snprint_file
+ .type alx_snprint_file, @function
+alx_snprint_file:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1048624, %rsp
+ movq %rdi, -1048600(%rbp)
+ movl %esi, -1048604(%rbp)
+ movq %rdx, -1048616(%rbp)
+ movq -1048616(%rbp), %rax
+ leaq .LC0(%rip), %rsi
+ movq %rax, %rdi
+ call fopen@PLT
+ movq %rax, -8(%rbp)
+ cmpq $0, -8(%rbp)
+ je .L2
+ movq -8(%rbp), %rax
+ movl $2, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call fseek@PLT
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call ftell@PLT
+ movq %rax, -16(%rbp)
+ movq -8(%rbp), %rax
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call fseek@PLT
+ cmpq $1048575, -16(%rbp)
+ jg .L3
+ movq -16(%rbp), %rdx
+ movq -8(%rbp), %rcx
+ leaq -1048592(%rbp), %rax
+ movl $1, %esi
+ movq %rax, %rdi
+ call fread@PLT
+ leaq -1048592(%rbp), %rdx
+ movq -16(%rbp), %rax
+ addq %rdx, %rax
+ movb $0, (%rax)
+ jmp .L4
+.L3:
+ leaq .LC1(%rip), %rdi
+ call puts@PLT
+.L4:
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call fclose@PLT
+ jmp .L5
+.L2:
+ leaq .LC2(%rip), %rdi
+ call puts@PLT
+ call __errno_location@PLT
+ movl (%rax), %eax
+ movl %eax, %esi
+ leaq .LC3(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+.L5:
+ movl -1048604(%rbp), %eax
+ movslq %eax, %rsi
+ leaq -1048592(%rbp), %rdx
+ movq -1048600(%rbp), %rax
+ movq %rdx, %rcx
+ leaq .LC4(%rip), %rdx
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size alx_snprint_file, .-alx_snprint_file
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/libalx/tmp/alx_input.s b/libalx/tmp/alx_input.s
new file mode 100644
index 0000000..0778f7f
--- /dev/null
+++ b/libalx/tmp/alx_input.s
@@ -0,0 +1,545 @@
+ .file "alx_input.c"
+ .section .rodata
+.LC0:
+ .string " %lf"
+ .text
+ .globl alx_sscan_dbl
+ .type alx_sscan_dbl, @function
+alx_sscan_dbl:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $64, %rsp
+ movq %rdi, -24(%rbp)
+ movsd %xmm0, -32(%rbp)
+ movsd %xmm1, -40(%rbp)
+ movsd %xmm2, -48(%rbp)
+ movq %rsi, -56(%rbp)
+ movq -24(%rbp), %rdx
+ movq -56(%rbp), %rax
+ leaq .LC0(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ cmpl $1, %eax
+ je .L2
+ movl $2, -4(%rbp)
+ jmp .L3
+.L2:
+ movq -24(%rbp), %rax
+ movsd (%rax), %xmm1
+ movsd -32(%rbp), %xmm0
+ ucomisd %xmm1, %xmm0
+ ja .L4
+ movq -24(%rbp), %rax
+ movsd (%rax), %xmm0
+ ucomisd -48(%rbp), %xmm0
+ jbe .L9
+.L4:
+ movl $1, -4(%rbp)
+ jmp .L3
+.L9:
+ movl $0, -4(%rbp)
+.L3:
+ cmpl $0, -4(%rbp)
+ je .L7
+ movq -24(%rbp), %rax
+ movsd -40(%rbp), %xmm0
+ movsd %xmm0, (%rax)
+.L7:
+ movl -4(%rbp), %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size alx_sscan_dbl, .-alx_sscan_dbl
+ .section .rodata
+.LC1:
+ .string " %li"
+ .text
+ .globl alx_sscan_int
+ .type alx_sscan_int, @function
+alx_sscan_int:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $64, %rsp
+ movq %rdi, -24(%rbp)
+ movsd %xmm0, -32(%rbp)
+ movq %rsi, -40(%rbp)
+ movsd %xmm1, -48(%rbp)
+ movq %rdx, -56(%rbp)
+ movq -24(%rbp), %rdx
+ movq -56(%rbp), %rax
+ leaq .LC1(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ cmpl $1, %eax
+ je .L11
+ movl $2, -4(%rbp)
+ jmp .L12
+.L11:
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ pxor %xmm0, %xmm0
+ cvtsi2sdq %rax, %xmm0
+ movsd -32(%rbp), %xmm1
+ ucomisd %xmm0, %xmm1
+ ja .L13
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ pxor %xmm0, %xmm0
+ cvtsi2sdq %rax, %xmm0
+ ucomisd -48(%rbp), %xmm0
+ jbe .L18
+.L13:
+ movl $1, -4(%rbp)
+ jmp .L12
+.L18:
+ movl $0, -4(%rbp)
+.L12:
+ cmpl $0, -4(%rbp)
+ je .L16
+ movq -24(%rbp), %rax
+ movq -40(%rbp), %rdx
+ movq %rdx, (%rax)
+.L16:
+ movl -4(%rbp), %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size alx_sscan_int, .-alx_sscan_int
+ .section .rodata
+.LC2:
+ .string " %s "
+.LC3:
+ .string "%s%s"
+.LC4:
+ .string "r"
+ .text
+ .globl alx_sscan_fname
+ .type alx_sscan_fname, @function
+alx_sscan_fname:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $8240, %rsp
+ movq %rdi, -8216(%rbp)
+ movq %rsi, -8224(%rbp)
+ movl %edx, %eax
+ movq %rcx, -8240(%rbp)
+ movb %al, -8228(%rbp)
+ leaq -4112(%rbp), %rdx
+ movq -8240(%rbp), %rax
+ leaq .LC2(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ cmpl $1, %eax
+ je .L20
+ movl $2, -4(%rbp)
+ jmp .L21
+.L20:
+ leaq -4112(%rbp), %rcx
+ movq -8216(%rbp), %rdx
+ leaq -8208(%rbp), %rax
+ movq %rcx, %r8
+ movq %rdx, %rcx
+ leaq .LC3(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq -8208(%rbp), %rax
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call fopen@PLT
+ movq %rax, -16(%rbp)
+ cmpb $0, -8228(%rbp)
+ je .L22
+ cmpq $0, -16(%rbp)
+ jne .L23
+ movl $3, -4(%rbp)
+ jmp .L21
+.L23:
+ movl $0, -4(%rbp)
+ movq -16(%rbp), %rax
+ movq %rax, %rdi
+ call fclose@PLT
+ jmp .L21
+.L22:
+ cmpq $0, -16(%rbp)
+ jne .L25
+ movl $0, -4(%rbp)
+ jmp .L21
+.L25:
+ movl $3, -4(%rbp)
+ movq -16(%rbp), %rax
+ movq %rax, %rdi
+ call fclose@PLT
+.L21:
+ cmpl $0, -4(%rbp)
+ jne .L26
+ leaq -4112(%rbp), %rdx
+ movq -8224(%rbp), %rax
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+.L26:
+ movl -4(%rbp), %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size alx_sscan_fname, .-alx_sscan_fname
+ .section .rodata
+ .align 8
+.LC5:
+ .string "Introduce a real number [%lf U %lf] (default %lf):...\t"
+ .text
+ .globl alx_getdbl
+ .type alx_getdbl, @function
+alx_getdbl:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $256, %rsp
+ movsd %xmm0, -216(%rbp)
+ movsd %xmm1, -224(%rbp)
+ movsd %xmm2, -232(%rbp)
+ movq %rdi, -240(%rbp)
+ movq %rsi, -248(%rbp)
+ movq %rdx, -160(%rbp)
+ movq %rcx, -152(%rbp)
+ movq %r8, -144(%rbp)
+ movq %r9, -136(%rbp)
+ testb %al, %al
+ je .L34
+ movaps %xmm3, -80(%rbp)
+ movaps %xmm4, -64(%rbp)
+ movaps %xmm5, -48(%rbp)
+ movaps %xmm6, -32(%rbp)
+ movaps %xmm7, -16(%rbp)
+.L34:
+ movl $16, -208(%rbp)
+ movl $96, -204(%rbp)
+ leaq 16(%rbp), %rax
+ movq %rax, -200(%rbp)
+ leaq -176(%rbp), %rax
+ movq %rax, -192(%rbp)
+ cmpq $0, -240(%rbp)
+ je .L30
+ movq -240(%rbp), %rax
+ movq %rax, %rdi
+ call puts@PLT
+.L30:
+ cmpq $0, -248(%rbp)
+ jne .L31
+ movsd -224(%rbp), %xmm1
+ movsd -232(%rbp), %xmm0
+ movq -216(%rbp), %rax
+ movapd %xmm1, %xmm2
+ movapd %xmm0, %xmm1
+ movq %rax, -256(%rbp)
+ movsd -256(%rbp), %xmm0
+ leaq .LC5(%rip), %rdi
+ movl $3, %eax
+ call printf@PLT
+ jmp .L32
+.L31:
+ leaq -208(%rbp), %rdx
+ movq -248(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call vprintf@PLT
+.L32:
+ movsd -232(%rbp), %xmm1
+ movsd -224(%rbp), %xmm0
+ movq -216(%rbp), %rax
+ movapd %xmm1, %xmm2
+ movapd %xmm0, %xmm1
+ movq %rax, -256(%rbp)
+ movsd -256(%rbp), %xmm0
+ call loop_getdbl
+ movq %xmm0, %rax
+ movq %rax, -184(%rbp)
+ movsd -184(%rbp), %xmm0
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size alx_getdbl, .-alx_getdbl
+ .section .rodata
+ .align 8
+.LC6:
+ .string "Introduce an integer number [%lf U %lf] (default %li):...\t"
+ .text
+ .globl alx_getint
+ .type alx_getint, @function
+alx_getint:
+.LFB4:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $256, %rsp
+ movsd %xmm0, -216(%rbp)
+ movq %rdi, -224(%rbp)
+ movsd %xmm1, -232(%rbp)
+ movq %rsi, -240(%rbp)
+ movq %rdx, -248(%rbp)
+ movq %rcx, -152(%rbp)
+ movq %r8, -144(%rbp)
+ movq %r9, -136(%rbp)
+ testb %al, %al
+ je .L41
+ movaps %xmm2, -96(%rbp)
+ movaps %xmm3, -80(%rbp)
+ movaps %xmm4, -64(%rbp)
+ movaps %xmm5, -48(%rbp)
+ movaps %xmm6, -32(%rbp)
+ movaps %xmm7, -16(%rbp)
+.L41:
+ movl $24, -208(%rbp)
+ movl $80, -204(%rbp)
+ leaq 16(%rbp), %rax
+ movq %rax, -200(%rbp)
+ leaq -176(%rbp), %rax
+ movq %rax, -192(%rbp)
+ cmpq $0, -240(%rbp)
+ je .L37
+ movq -240(%rbp), %rax
+ movq %rax, %rdi
+ call puts@PLT
+.L37:
+ cmpq $0, -248(%rbp)
+ jne .L38
+ movq -224(%rbp), %rdx
+ movsd -232(%rbp), %xmm0
+ movq -216(%rbp), %rax
+ movq %rdx, %rsi
+ movapd %xmm0, %xmm1
+ movq %rax, -256(%rbp)
+ movsd -256(%rbp), %xmm0
+ leaq .LC6(%rip), %rdi
+ movl $2, %eax
+ call printf@PLT
+ jmp .L39
+.L38:
+ leaq -208(%rbp), %rdx
+ movq -248(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call vprintf@PLT
+.L39:
+ movsd -232(%rbp), %xmm0
+ movq -224(%rbp), %rdx
+ movq -216(%rbp), %rax
+ movapd %xmm0, %xmm1
+ movq %rdx, %rdi
+ movq %rax, -256(%rbp)
+ movsd -256(%rbp), %xmm0
+ call loop_getint
+ movq %rax, -184(%rbp)
+ movq -184(%rbp), %rax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE4:
+ .size alx_getint, .-alx_getint
+ .type loop_getdbl, @function
+loop_getdbl:
+.LFB5:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1088, %rsp
+ movsd %xmm0, -1064(%rbp)
+ movsd %xmm1, -1072(%rbp)
+ movsd %xmm2, -1080(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L43
+.L49:
+ movq stdin(%rip), %rdx
+ leaq -1040(%rbp), %rax
+ movl $1024, %esi
+ movq %rax, %rdi
+ call fgets@PLT
+ movq %rax, -16(%rbp)
+ cmpq $0, -16(%rbp)
+ jne .L44
+ movl $4, -8(%rbp)
+ jmp .L45
+.L44:
+ leaq -1040(%rbp), %rcx
+ movsd -1080(%rbp), %xmm1
+ movsd -1072(%rbp), %xmm0
+ movq -1064(%rbp), %rdx
+ leaq -1048(%rbp), %rax
+ movq %rcx, %rsi
+ movapd %xmm1, %xmm2
+ movapd %xmm0, %xmm1
+ movq %rdx, -1088(%rbp)
+ movsd -1088(%rbp), %xmm0
+ movq %rax, %rdi
+ call alx_sscan_dbl
+ movl %eax, -8(%rbp)
+.L45:
+ cmpl $0, -8(%rbp)
+ je .L51
+ movl -8(%rbp), %eax
+ movl %eax, %edi
+ call manage_error
+ addl $1, -4(%rbp)
+.L43:
+ cmpl $1, -4(%rbp)
+ jle .L49
+ jmp .L48
+.L51:
+ nop
+.L48:
+ movsd -1048(%rbp), %xmm0
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE5:
+ .size loop_getdbl, .-loop_getdbl
+ .type loop_getint, @function
+loop_getint:
+.LFB6:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1088, %rsp
+ movsd %xmm0, -1064(%rbp)
+ movq %rdi, -1072(%rbp)
+ movsd %xmm1, -1080(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L53
+.L59:
+ movq stdin(%rip), %rdx
+ leaq -1040(%rbp), %rax
+ movl $1024, %esi
+ movq %rax, %rdi
+ call fgets@PLT
+ movq %rax, -16(%rbp)
+ cmpq $0, -16(%rbp)
+ jne .L54
+ movl $4, -8(%rbp)
+ jmp .L55
+.L54:
+ leaq -1040(%rbp), %rdx
+ movsd -1080(%rbp), %xmm0
+ movq -1072(%rbp), %rsi
+ movq -1064(%rbp), %rcx
+ leaq -1048(%rbp), %rax
+ movapd %xmm0, %xmm1
+ movq %rcx, -1088(%rbp)
+ movsd -1088(%rbp), %xmm0
+ movq %rax, %rdi
+ call alx_sscan_int
+ movl %eax, -8(%rbp)
+.L55:
+ cmpl $0, -8(%rbp)
+ je .L61
+ movl -8(%rbp), %eax
+ movl %eax, %edi
+ call manage_error
+ addl $1, -4(%rbp)
+.L53:
+ cmpl $1, -4(%rbp)
+ jle .L59
+ jmp .L58
+.L61:
+ nop
+.L58:
+ movq -1048(%rbp), %rax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE6:
+ .size loop_getint, .-loop_getint
+ .section .rodata
+.LC7:
+ .string "\302\241 Number is out of range !"
+.LC8:
+ .string "\302\241 sscanf() error !"
+.LC9:
+ .string "\302\241 fgets() error !"
+ .text
+ .type manage_error, @function
+manage_error:
+.LFB7:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl %edi, -4(%rbp)
+ movl -4(%rbp), %eax
+ cmpl $2, %eax
+ je .L64
+ cmpl $4, %eax
+ je .L65
+ cmpl $1, %eax
+ je .L66
+ jmp .L67
+.L66:
+ leaq .LC7(%rip), %rdi
+ call puts@PLT
+ jmp .L63
+.L64:
+ leaq .LC8(%rip), %rdi
+ call puts@PLT
+ jmp .L63
+.L65:
+ leaq .LC9(%rip), %rdi
+ call puts@PLT
+ nop
+.L63:
+.L67:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE7:
+ .size manage_error, .-manage_error
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/libalx/tmp/alx_mask.s b/libalx/tmp/alx_mask.s
new file mode 100644
index 0000000..397f81e
--- /dev/null
+++ b/libalx/tmp/alx_mask.s
@@ -0,0 +1,26 @@
+ .file "alx_mask.c"
+ .text
+ .globl alx_maskgen
+ .type alx_maskgen, @function
+alx_maskgen:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq %rdi, -8(%rbp)
+ movq -8(%rbp), %rax
+ movl $1, %edx
+ movl %eax, %ecx
+ salq %cl, %rdx
+ movq %rdx, %rax
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size alx_maskgen, .-alx_maskgen
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/libalx/tmp/alx_math.s b/libalx/tmp/alx_math.s
new file mode 100644
index 0000000..512f5a8
--- /dev/null
+++ b/libalx/tmp/alx_math.s
@@ -0,0 +1,82 @@
+ .file "alx_math.c"
+ .text
+ .globl alx_fact
+ .type alx_fact, @function
+alx_fact:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ cmpq $0, -8(%rbp)
+ jg .L2
+ movsd .LC0(%rip), %xmm0
+ jmp .L3
+.L2:
+ pxor %xmm1, %xmm1
+ cvtsi2sdq -8(%rbp), %xmm1
+ movsd %xmm1, -16(%rbp)
+ movq -8(%rbp), %rax
+ subq $1, %rax
+ movq %rax, %rdi
+ call alx_fact
+ mulsd -16(%rbp), %xmm0
+.L3:
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size alx_fact, .-alx_fact
+ .globl alx_bin_coef
+ .type alx_bin_coef, @function
+alx_bin_coef:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movq $1, -8(%rbp)
+ movsd .LC0(%rip), %xmm0
+ movsd %xmm0, -16(%rbp)
+ jmp .L5
+.L6:
+ movq -24(%rbp), %rax
+ leaq -1(%rax), %rdx
+ movq %rdx, -24(%rbp)
+ pxor %xmm0, %xmm0
+ cvtsi2sdq %rax, %xmm0
+ mulsd -16(%rbp), %xmm0
+ movq -8(%rbp), %rax
+ leaq 1(%rax), %rdx
+ movq %rdx, -8(%rbp)
+ pxor %xmm1, %xmm1
+ cvtsi2sdq %rax, %xmm1
+ divsd %xmm1, %xmm0
+ movsd %xmm0, -16(%rbp)
+.L5:
+ movq -24(%rbp), %rax
+ cmpq -32(%rbp), %rax
+ jg .L6
+ movsd -16(%rbp), %xmm0
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size alx_bin_coef, .-alx_bin_coef
+ .section .rodata
+ .align 8
+.LC0:
+ .long 0
+ .long 1072693248
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/libalx/tmp/alx_ncur.s b/libalx/tmp/alx_ncur.s
new file mode 100644
index 0000000..76c3245
--- /dev/null
+++ b/libalx/tmp/alx_ncur.s
@@ -0,0 +1,1793 @@
+ .file "alx_ncur.c"
+ .text
+ .globl alx_start_curses
+ .type alx_start_curses, @function
+alx_start_curses:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ call initscr@PLT
+ call nonl@PLT
+ call cbreak@PLT
+ call noecho@PLT
+ movq stdscr(%rip), %rax
+ movl $1, %esi
+ movq %rax, %rdi
+ call keypad@PLT
+ call has_colors@PLT
+ testb %al, %al
+ je .L3
+ call start_color@PLT
+ call use_default_colors@PLT
+.L3:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size alx_start_curses, .-alx_start_curses
+ .globl alx_pause_curses
+ .type alx_pause_curses, @function
+alx_pause_curses:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ call def_prog_mode@PLT
+ call endwin@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size alx_pause_curses, .-alx_pause_curses
+ .globl alx_resume_curses
+ .type alx_resume_curses, @function
+alx_resume_curses:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq stdout(%rip), %rax
+ movq %rax, %rdi
+ call fflush@PLT
+ call reset_prog_mode@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size alx_resume_curses, .-alx_resume_curses
+ .globl alx_end_curses
+ .type alx_end_curses, @function
+alx_end_curses:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq stdscr(%rip), %rax
+ movq %rax, %rdi
+ call wclear@PLT
+ movq stdscr(%rip), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ call endwin@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size alx_end_curses, .-alx_end_curses
+ .globl alx_win_del
+ .type alx_win_del, @function
+alx_win_del:
+.LFB4:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq -8(%rbp), %rax
+ movl $0, %esi
+ movq %rax, %rdi
+ call wbkgd@PLT
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call wclear@PLT
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call delwin@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE4:
+ .size alx_win_del, .-alx_win_del
+ .globl alx_menu
+ .type alx_menu, @function
+alx_menu:
+.LFB5:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $64, %rsp
+ movl %edi, -36(%rbp)
+ movl %esi, -40(%rbp)
+ movl %edx, -44(%rbp)
+ movq %rcx, -56(%rbp)
+ movq %r8, -64(%rbp)
+ movl $1, -4(%rbp)
+ movl $80, %eax
+ subl -40(%rbp), %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ movl %eax, -8(%rbp)
+ movl -8(%rbp), %ecx
+ movl -4(%rbp), %edx
+ movl -40(%rbp), %esi
+ movl -36(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -16(%rbp)
+ movq -64(%rbp), %rcx
+ movq -56(%rbp), %rdx
+ movl -44(%rbp), %esi
+ movq -16(%rbp), %rax
+ movq %rax, %rdi
+ call alx_menu_2
+ movl %eax, -20(%rbp)
+ movq -16(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ movl -20(%rbp), %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE5:
+ .size alx_menu, .-alx_menu
+ .globl alx_menu_2
+ .type alx_menu_2, @function
+alx_menu_2:
+.LFB6:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $48, %rsp
+ movq %rdi, -24(%rbp)
+ movl %esi, -28(%rbp)
+ movq %rdx, -40(%rbp)
+ movq %rcx, -48(%rbp)
+ movq -24(%rbp), %rax
+ movl $1, %esi
+ movq %rax, %rdi
+ call keypad@PLT
+ call noecho@PLT
+ movq -24(%rbp), %rax
+ subq $8, %rsp
+ pushq $0
+ pushq $0
+ pushq $0
+ movl $0, %r9d
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wborder@PLT
+ addq $32, %rsp
+ movq -48(%rbp), %rdx
+ movq -24(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call alx_ncur_prn_title
+ movq -40(%rbp), %rdx
+ movl -28(%rbp), %ecx
+ movq -24(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call alx_ncur_prn_menu
+ movq -40(%rbp), %rdx
+ movl -28(%rbp), %ecx
+ movq -24(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call alx_ncur_usr_sel
+ movl %eax, -4(%rbp)
+ movl -4(%rbp), %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE6:
+ .size alx_menu_2, .-alx_menu_2
+ .section .rodata
+ .align 8
+.LC0:
+ .string "Introduce a real number [%lf U %lf] (default %lf)"
+ .text
+ .globl alx_w_getdbl
+ .type alx_w_getdbl, @function
+alx_w_getdbl:
+.LFB7:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $352, %rsp
+ movl %edi, -292(%rbp)
+ movl %esi, -296(%rbp)
+ movq %rdx, -304(%rbp)
+ movsd %xmm0, -312(%rbp)
+ movsd %xmm1, -320(%rbp)
+ movsd %xmm2, -328(%rbp)
+ movq %rcx, -336(%rbp)
+ movq %r8, -144(%rbp)
+ movq %r9, -136(%rbp)
+ testb %al, %al
+ je .L17
+ movaps %xmm3, -80(%rbp)
+ movaps %xmm4, -64(%rbp)
+ movaps %xmm5, -48(%rbp)
+ movaps %xmm6, -32(%rbp)
+ movaps %xmm7, -16(%rbp)
+.L17:
+ movl $32, -280(%rbp)
+ movl $96, -276(%rbp)
+ leaq 16(%rbp), %rax
+ movq %rax, -272(%rbp)
+ leaq -176(%rbp), %rax
+ movq %rax, -264(%rbp)
+ movl $3, -180(%rbp)
+ movl -292(%rbp), %eax
+ movl %eax, -184(%rbp)
+ movl -296(%rbp), %eax
+ movl %eax, -188(%rbp)
+ movl $80, %eax
+ subl -292(%rbp), %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ movl %eax, -192(%rbp)
+ movl $1, -196(%rbp)
+ movl -184(%rbp), %eax
+ subl $4, %eax
+ movl %eax, -200(%rbp)
+ movl -188(%rbp), %eax
+ addl $3, %eax
+ movl %eax, -204(%rbp)
+ movl -192(%rbp), %eax
+ addl $2, %eax
+ movl %eax, -208(%rbp)
+ movl $1, -212(%rbp)
+ movl -184(%rbp), %eax
+ subl $2, %eax
+ movl %eax, -216(%rbp)
+ movl -188(%rbp), %eax
+ addl $1, %eax
+ movl %eax, -220(%rbp)
+ movl -192(%rbp), %eax
+ addl $1, %eax
+ movl %eax, -224(%rbp)
+ movl -192(%rbp), %ecx
+ movl -188(%rbp), %edx
+ movl -184(%rbp), %esi
+ movl -180(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -232(%rbp)
+ movq -232(%rbp), %rax
+ movl $262144, %esi
+ movq %rax, %rdi
+ call wbkgd@PLT
+ movq -232(%rbp), %rax
+ subq $8, %rsp
+ pushq $0
+ pushq $0
+ pushq $0
+ movl $0, %r9d
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wborder@PLT
+ addq $32, %rsp
+ movq -304(%rbp), %rdx
+ movq -232(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call alx_ncur_prn_title
+ movq -232(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movl -208(%rbp), %ecx
+ movl -204(%rbp), %edx
+ movl -200(%rbp), %esi
+ movl -196(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -240(%rbp)
+ cmpq $0, -336(%rbp)
+ jne .L14
+ movsd -320(%rbp), %xmm1
+ movsd -328(%rbp), %xmm0
+ movq -312(%rbp), %rdx
+ movq -240(%rbp), %rax
+ movapd %xmm1, %xmm2
+ movapd %xmm0, %xmm1
+ movq %rdx, -344(%rbp)
+ movsd -344(%rbp), %xmm0
+ leaq .LC0(%rip), %rsi
+ movq %rax, %rdi
+ movl $3, %eax
+ call wprintw@PLT
+ jmp .L15
+.L14:
+ leaq -280(%rbp), %rdx
+ movq -336(%rbp), %rcx
+ movq -240(%rbp), %rax
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call vwprintw@PLT
+.L15:
+ movq -240(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movl -224(%rbp), %ecx
+ movl -220(%rbp), %edx
+ movl -216(%rbp), %esi
+ movl -212(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -248(%rbp)
+ movq -248(%rbp), %rax
+ movl $262144, %esi
+ movq %rax, %rdi
+ call wbkgd@PLT
+ movq -248(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movsd -328(%rbp), %xmm1
+ movsd -320(%rbp), %xmm0
+ movq -312(%rbp), %rdx
+ movq -248(%rbp), %rax
+ movapd %xmm1, %xmm2
+ movapd %xmm0, %xmm1
+ movq %rdx, -344(%rbp)
+ movsd -344(%rbp), %xmm0
+ movq %rax, %rdi
+ call loop_w_getdbl
+ movq %xmm0, %rax
+ movq %rax, -256(%rbp)
+ movq -248(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ movq -240(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ movq -232(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ movsd -256(%rbp), %xmm0
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE7:
+ .size alx_w_getdbl, .-alx_w_getdbl
+ .section .rodata
+ .align 8
+.LC1:
+ .string "Introduce an integer number [%lf U %lf] (default %li)"
+ .text
+ .globl alx_w_getint
+ .type alx_w_getint, @function
+alx_w_getint:
+.LFB8:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $352, %rsp
+ movl %edi, -292(%rbp)
+ movl %esi, -296(%rbp)
+ movq %rdx, -304(%rbp)
+ movsd %xmm0, -312(%rbp)
+ movq %rcx, -320(%rbp)
+ movsd %xmm1, -328(%rbp)
+ movq %r8, -336(%rbp)
+ movq %r9, -136(%rbp)
+ testb %al, %al
+ je .L23
+ movaps %xmm2, -96(%rbp)
+ movaps %xmm3, -80(%rbp)
+ movaps %xmm4, -64(%rbp)
+ movaps %xmm5, -48(%rbp)
+ movaps %xmm6, -32(%rbp)
+ movaps %xmm7, -16(%rbp)
+.L23:
+ movl $40, -280(%rbp)
+ movl $80, -276(%rbp)
+ leaq 16(%rbp), %rax
+ movq %rax, -272(%rbp)
+ leaq -176(%rbp), %rax
+ movq %rax, -264(%rbp)
+ movl $3, -180(%rbp)
+ movl -292(%rbp), %eax
+ movl %eax, -184(%rbp)
+ movl -296(%rbp), %eax
+ movl %eax, -188(%rbp)
+ movl $80, %eax
+ subl -292(%rbp), %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ movl %eax, -192(%rbp)
+ movl $1, -196(%rbp)
+ movl -184(%rbp), %eax
+ subl $4, %eax
+ movl %eax, -200(%rbp)
+ movl -188(%rbp), %eax
+ addl $3, %eax
+ movl %eax, -204(%rbp)
+ movl -192(%rbp), %eax
+ addl $2, %eax
+ movl %eax, -208(%rbp)
+ movl $1, -212(%rbp)
+ movl -184(%rbp), %eax
+ subl $2, %eax
+ movl %eax, -216(%rbp)
+ movl -188(%rbp), %eax
+ addl $1, %eax
+ movl %eax, -220(%rbp)
+ movl -192(%rbp), %eax
+ addl $1, %eax
+ movl %eax, -224(%rbp)
+ movl -192(%rbp), %ecx
+ movl -188(%rbp), %edx
+ movl -184(%rbp), %esi
+ movl -180(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -232(%rbp)
+ movq -232(%rbp), %rax
+ movl $262144, %esi
+ movq %rax, %rdi
+ call wbkgd@PLT
+ movq -232(%rbp), %rax
+ subq $8, %rsp
+ pushq $0
+ pushq $0
+ pushq $0
+ movl $0, %r9d
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wborder@PLT
+ addq $32, %rsp
+ movq -304(%rbp), %rdx
+ movq -232(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call alx_ncur_prn_title
+ movq -232(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movl -208(%rbp), %ecx
+ movl -204(%rbp), %edx
+ movl -200(%rbp), %esi
+ movl -196(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -240(%rbp)
+ cmpq $0, -336(%rbp)
+ jne .L20
+ movq -320(%rbp), %rdx
+ movsd -328(%rbp), %xmm0
+ movq -312(%rbp), %rcx
+ movq -240(%rbp), %rax
+ movapd %xmm0, %xmm1
+ movq %rcx, -344(%rbp)
+ movsd -344(%rbp), %xmm0
+ leaq .LC1(%rip), %rsi
+ movq %rax, %rdi
+ movl $2, %eax
+ call wprintw@PLT
+ jmp .L21
+.L20:
+ leaq -280(%rbp), %rdx
+ movq -336(%rbp), %rcx
+ movq -240(%rbp), %rax
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call vwprintw@PLT
+.L21:
+ movq -240(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movl -224(%rbp), %ecx
+ movl -220(%rbp), %edx
+ movl -216(%rbp), %esi
+ movl -212(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -248(%rbp)
+ movq -248(%rbp), %rax
+ movl $262144, %esi
+ movq %rax, %rdi
+ call wbkgd@PLT
+ movq -248(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movsd -328(%rbp), %xmm0
+ movq -320(%rbp), %rcx
+ movq -312(%rbp), %rdx
+ movq -248(%rbp), %rax
+ movapd %xmm0, %xmm1
+ movq %rcx, %rsi
+ movq %rdx, -344(%rbp)
+ movsd -344(%rbp), %xmm0
+ movq %rax, %rdi
+ call loop_w_getint
+ movl %eax, -252(%rbp)
+ movq -248(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ movq -240(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ movq -232(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ movl -252(%rbp), %eax
+ cltq
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE8:
+ .size alx_w_getint, .-alx_w_getint
+ .section .rodata
+.LC2:
+ .string "Introduce a string"
+ .text
+ .globl alx_w_getstr
+ .type alx_w_getstr, @function
+alx_w_getstr:
+.LFB9:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $320, %rsp
+ movq %rdi, -280(%rbp)
+ movl %esi, -284(%rbp)
+ movl %edx, -288(%rbp)
+ movl %ecx, -292(%rbp)
+ movq %r8, -304(%rbp)
+ movq %r9, -312(%rbp)
+ testb %al, %al
+ je .L28
+ movaps %xmm0, -128(%rbp)
+ movaps %xmm1, -112(%rbp)
+ movaps %xmm2, -96(%rbp)
+ movaps %xmm3, -80(%rbp)
+ movaps %xmm4, -64(%rbp)
+ movaps %xmm5, -48(%rbp)
+ movaps %xmm6, -32(%rbp)
+ movaps %xmm7, -16(%rbp)
+.L28:
+ movl $48, -272(%rbp)
+ movl $48, -268(%rbp)
+ leaq 16(%rbp), %rax
+ movq %rax, -264(%rbp)
+ leaq -176(%rbp), %rax
+ movq %rax, -256(%rbp)
+ movl $3, -180(%rbp)
+ movl -288(%rbp), %eax
+ movl %eax, -184(%rbp)
+ movl -292(%rbp), %eax
+ movl %eax, -188(%rbp)
+ movl $80, %eax
+ subl -288(%rbp), %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ movl %eax, -192(%rbp)
+ movl $1, -196(%rbp)
+ movl -184(%rbp), %eax
+ subl $4, %eax
+ movl %eax, -200(%rbp)
+ movl -188(%rbp), %eax
+ addl $3, %eax
+ movl %eax, -204(%rbp)
+ movl -192(%rbp), %eax
+ addl $2, %eax
+ movl %eax, -208(%rbp)
+ movl $1, -212(%rbp)
+ movl -184(%rbp), %eax
+ subl $2, %eax
+ movl %eax, -216(%rbp)
+ movl -188(%rbp), %eax
+ addl $1, %eax
+ movl %eax, -220(%rbp)
+ movl -192(%rbp), %eax
+ addl $1, %eax
+ movl %eax, -224(%rbp)
+ movl -192(%rbp), %ecx
+ movl -188(%rbp), %edx
+ movl -184(%rbp), %esi
+ movl -180(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -232(%rbp)
+ movq -232(%rbp), %rax
+ movl $262144, %esi
+ movq %rax, %rdi
+ call wbkgd@PLT
+ movq -232(%rbp), %rax
+ subq $8, %rsp
+ pushq $0
+ pushq $0
+ pushq $0
+ movl $0, %r9d
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wborder@PLT
+ addq $32, %rsp
+ movq -304(%rbp), %rdx
+ movq -232(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call alx_ncur_prn_title
+ movq -232(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movl -208(%rbp), %ecx
+ movl -204(%rbp), %edx
+ movl -200(%rbp), %esi
+ movl -196(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -240(%rbp)
+ cmpq $0, -312(%rbp)
+ jne .L26
+ movq -240(%rbp), %rax
+ movl $-1, %edx
+ leaq .LC2(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+ jmp .L27
+.L26:
+ leaq -272(%rbp), %rdx
+ movq -312(%rbp), %rcx
+ movq -240(%rbp), %rax
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call vwprintw@PLT
+.L27:
+ movq -240(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movl -224(%rbp), %ecx
+ movl -220(%rbp), %edx
+ movl -216(%rbp), %esi
+ movl -212(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -248(%rbp)
+ movq -248(%rbp), %rax
+ movl $262144, %esi
+ movq %rax, %rdi
+ call wbkgd@PLT
+ movq -248(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movq -248(%rbp), %rdx
+ movl -284(%rbp), %ecx
+ movq -280(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call loop_w_getstr
+ movq -248(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ movq -240(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ movq -232(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE9:
+ .size alx_w_getstr, .-alx_w_getstr
+ .section .rodata
+.LC3:
+ .string "Introduce a file name"
+ .text
+ .globl alx_w_getfname
+ .type alx_w_getfname, @function
+alx_w_getfname:
+.LFB10:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $320, %rsp
+ movq %rdi, -280(%rbp)
+ movq %rsi, -288(%rbp)
+ movl %ecx, -296(%rbp)
+ movl %r8d, -300(%rbp)
+ movq %r9, -312(%rbp)
+ testb %al, %al
+ je .L30
+ movaps %xmm0, -128(%rbp)
+ movaps %xmm1, -112(%rbp)
+ movaps %xmm2, -96(%rbp)
+ movaps %xmm3, -80(%rbp)
+ movaps %xmm4, -64(%rbp)
+ movaps %xmm5, -48(%rbp)
+ movaps %xmm6, -32(%rbp)
+ movaps %xmm7, -16(%rbp)
+.L30:
+ movb %dl, -292(%rbp)
+ movl $48, -272(%rbp)
+ movl $48, -268(%rbp)
+ leaq 24(%rbp), %rax
+ movq %rax, -264(%rbp)
+ leaq -176(%rbp), %rax
+ movq %rax, -256(%rbp)
+ movl $3, -180(%rbp)
+ movl -296(%rbp), %eax
+ movl %eax, -184(%rbp)
+ movl -300(%rbp), %eax
+ movl %eax, -188(%rbp)
+ movl $80, %eax
+ subl -296(%rbp), %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ movl %eax, -192(%rbp)
+ movl $1, -196(%rbp)
+ movl -184(%rbp), %eax
+ subl $4, %eax
+ movl %eax, -200(%rbp)
+ movl -188(%rbp), %eax
+ addl $3, %eax
+ movl %eax, -204(%rbp)
+ movl -192(%rbp), %eax
+ addl $2, %eax
+ movl %eax, -208(%rbp)
+ movl $1, -212(%rbp)
+ movl -184(%rbp), %eax
+ subl $2, %eax
+ movl %eax, -216(%rbp)
+ movl -188(%rbp), %eax
+ addl $1, %eax
+ movl %eax, -220(%rbp)
+ movl -192(%rbp), %eax
+ addl $1, %eax
+ movl %eax, -224(%rbp)
+ movl -192(%rbp), %ecx
+ movl -188(%rbp), %edx
+ movl -184(%rbp), %esi
+ movl -180(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -232(%rbp)
+ movq -232(%rbp), %rax
+ movl $262144, %esi
+ movq %rax, %rdi
+ call wbkgd@PLT
+ movq -232(%rbp), %rax
+ subq $8, %rsp
+ pushq $0
+ pushq $0
+ pushq $0
+ movl $0, %r9d
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wborder@PLT
+ addq $32, %rsp
+ movq -312(%rbp), %rdx
+ movq -232(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call alx_ncur_prn_title
+ movq -232(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movl -208(%rbp), %ecx
+ movl -204(%rbp), %edx
+ movl -200(%rbp), %esi
+ movl -196(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -240(%rbp)
+ cmpq $0, 16(%rbp)
+ jne .L31
+ movq -240(%rbp), %rax
+ movl $-1, %edx
+ leaq .LC3(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+ jmp .L32
+.L31:
+ leaq -272(%rbp), %rdx
+ movq -240(%rbp), %rax
+ movq 16(%rbp), %rsi
+ movq %rax, %rdi
+ call vwprintw@PLT
+.L32:
+ movq -240(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movl -224(%rbp), %ecx
+ movl -220(%rbp), %edx
+ movl -216(%rbp), %esi
+ movl -212(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -248(%rbp)
+ movq -248(%rbp), %rax
+ movl $262144, %esi
+ movq %rax, %rdi
+ call wbkgd@PLT
+ movq -248(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movzbl -292(%rbp), %edx
+ movq -248(%rbp), %rcx
+ movq -288(%rbp), %rsi
+ movq -280(%rbp), %rax
+ movq %rax, %rdi
+ call loop_w_getfname
+ movq -248(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ movq -240(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ movq -232(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE10:
+ .size alx_w_getfname, .-alx_w_getfname
+ .section .rodata
+.LC4:
+ .string " %s "
+ .text
+ .globl alx_ncur_prn_title
+ .type alx_ncur_prn_title, @function
+alx_ncur_prn_title:
+.LFB11:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ cmpq $0, -24(%rbp)
+ je .L34
+ movq -24(%rbp), %rax
+ movzwl 4(%rax), %eax
+ cwtl
+ addl $1, %eax
+ jmp .L35
+.L34:
+ movl $-1, %eax
+.L35:
+ movl %eax, -4(%rbp)
+ cmpq $0, -24(%rbp)
+ je .L36
+ movq -24(%rbp), %rax
+ movzwl 6(%rax), %eax
+ cwtl
+ addl $1, %eax
+ jmp .L37
+.L36:
+ movl $-1, %eax
+.L37:
+ movl %eax, -8(%rbp)
+ movq -32(%rbp), %rax
+ movq %rax, %rdi
+ call strlen@PLT
+ movl %eax, -12(%rbp)
+ movl -12(%rbp), %eax
+ leal 2(%rax), %edx
+ movl -8(%rbp), %eax
+ subl %edx, %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ leal -1(%rax), %edx
+ movq -24(%rbp), %rax
+ movl $0, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L39
+ movq 936+acs_map(%rip), %rdx
+ movq -24(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L39:
+ movq -32(%rbp), %rdx
+ movq -24(%rbp), %rax
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call wprintw@PLT
+ movq 928+acs_map(%rip), %rdx
+ movq -24(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE11:
+ .size alx_ncur_prn_title, .-alx_ncur_prn_title
+ .globl alx_ncur_prn_subtitle
+ .type alx_ncur_prn_subtitle, @function
+alx_ncur_prn_subtitle:
+.LFB12:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ cmpq $0, -24(%rbp)
+ je .L41
+ movq -24(%rbp), %rax
+ movzwl 4(%rax), %eax
+ cwtl
+ addl $1, %eax
+ jmp .L42
+.L41:
+ movl $-1, %eax
+.L42:
+ movl %eax, -4(%rbp)
+ cmpq $0, -24(%rbp)
+ je .L43
+ movq -24(%rbp), %rax
+ movzwl 6(%rax), %eax
+ cwtl
+ addl $1, %eax
+ jmp .L44
+.L43:
+ movl $-1, %eax
+.L44:
+ movl %eax, -8(%rbp)
+ movq -32(%rbp), %rax
+ movq %rax, %rdi
+ call strlen@PLT
+ movl %eax, -12(%rbp)
+ movl -12(%rbp), %eax
+ leal 2(%rax), %edx
+ movl -8(%rbp), %eax
+ subl %edx, %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ leal -1(%rax), %edx
+ movl -4(%rbp), %eax
+ leal -1(%rax), %ecx
+ movq -24(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L46
+ movq 936+acs_map(%rip), %rdx
+ movq -24(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L46:
+ movq -32(%rbp), %rdx
+ movq -24(%rbp), %rax
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call wprintw@PLT
+ movq 928+acs_map(%rip), %rdx
+ movq -24(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE12:
+ .size alx_ncur_prn_subtitle, .-alx_ncur_prn_subtitle
+ .type alx_ncur_prn_menu, @function
+alx_ncur_prn_menu:
+.LFB13:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $48, %rsp
+ movq %rdi, -24(%rbp)
+ movl %esi, -28(%rbp)
+ movq %rdx, -40(%rbp)
+ cmpq $0, -24(%rbp)
+ je .L48
+ movq -24(%rbp), %rax
+ movzwl 4(%rax), %eax
+ cwtl
+ addl $1, %eax
+ jmp .L49
+.L48:
+ movl $-1, %eax
+.L49:
+ movl %eax, -8(%rbp)
+ cmpq $0, -24(%rbp)
+ je .L50
+ movq -24(%rbp), %rax
+ movzwl 6(%rax), %eax
+ cwtl
+ addl $1, %eax
+ jmp .L51
+.L50:
+ movl $-1, %eax
+.L51:
+ movl %eax, -12(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L52
+.L55:
+ movl -4(%rbp), %eax
+ cltq
+ salq $4, %rax
+ movq %rax, %rdx
+ movq -40(%rbp), %rax
+ addq %rdx, %rax
+ movl 4(%rax), %edx
+ movl -4(%rbp), %eax
+ cltq
+ salq $4, %rax
+ movq %rax, %rcx
+ movq -40(%rbp), %rax
+ addq %rcx, %rax
+ movl (%rax), %ecx
+ movq -24(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L54
+ movl -4(%rbp), %eax
+ cltq
+ salq $4, %rax
+ movq %rax, %rdx
+ movq -40(%rbp), %rax
+ addq %rdx, %rax
+ movq 8(%rax), %rcx
+ movq -24(%rbp), %rax
+ movl $-1, %edx
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L54:
+ addl $1, -4(%rbp)
+.L52:
+ movl -4(%rbp), %eax
+ cmpl -28(%rbp), %eax
+ jl .L55
+ movq -24(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE13:
+ .size alx_ncur_prn_menu, .-alx_ncur_prn_menu
+ .type alx_ncur_usr_sel, @function
+alx_ncur_usr_sel:
+.LFB14:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $48, %rsp
+ movq %rdi, -24(%rbp)
+ movl %esi, -28(%rbp)
+ movq %rdx, -40(%rbp)
+ movl $1, -4(%rbp)
+ movl -4(%rbp), %eax
+ cltq
+ salq $4, %rax
+ movq %rax, %rdx
+ movq -40(%rbp), %rax
+ addq %rdx, %rax
+ movl 4(%rax), %eax
+ leal 1(%rax), %edx
+ movl -4(%rbp), %eax
+ cltq
+ salq $4, %rax
+ movq %rax, %rcx
+ movq -40(%rbp), %rax
+ addq %rcx, %rax
+ movl (%rax), %ecx
+ movq -24(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ movb $1, -5(%rbp)
+ jmp .L57
+.L70:
+ movq -24(%rbp), %rax
+ movq %rax, %rdi
+ call wgetch@PLT
+ movl %eax, -12(%rbp)
+ movl -12(%rbp), %eax
+ cmpl $107, %eax
+ je .L59
+ cmpl $107, %eax
+ jg .L60
+ cmpl $13, %eax
+ je .L61
+ cmpl $13, %eax
+ jg .L62
+ cmpl $10, %eax
+ je .L61
+ jmp .L58
+.L62:
+ cmpl $32, %eax
+ je .L61
+ cmpl $106, %eax
+ je .L63
+ jmp .L58
+.L60:
+ cmpl $119, %eax
+ je .L59
+ cmpl $119, %eax
+ jg .L64
+ cmpl $115, %eax
+ je .L63
+ jmp .L58
+.L64:
+ cmpl $258, %eax
+ je .L63
+ cmpl $259, %eax
+ jne .L58
+.L59:
+ cmpl $0, -4(%rbp)
+ je .L65
+ subl $1, -4(%rbp)
+ jmp .L66
+.L65:
+ movl -28(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -4(%rbp)
+.L66:
+ movl -4(%rbp), %eax
+ cltq
+ salq $4, %rax
+ movq %rax, %rdx
+ movq -40(%rbp), %rax
+ addq %rdx, %rax
+ movl 4(%rax), %eax
+ leal 1(%rax), %edx
+ movl -4(%rbp), %eax
+ cltq
+ salq $4, %rax
+ movq %rax, %rcx
+ movq -40(%rbp), %rax
+ addq %rcx, %rax
+ movl (%rax), %ecx
+ movq -24(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ jmp .L57
+.L63:
+ movl -28(%rbp), %eax
+ subl $1, %eax
+ cmpl -4(%rbp), %eax
+ je .L67
+ addl $1, -4(%rbp)
+ jmp .L68
+.L67:
+ movl $0, -4(%rbp)
+.L68:
+ movl -4(%rbp), %eax
+ cltq
+ salq $4, %rax
+ movq %rax, %rdx
+ movq -40(%rbp), %rax
+ addq %rdx, %rax
+ movl 4(%rax), %eax
+ leal 1(%rax), %edx
+ movl -4(%rbp), %eax
+ cltq
+ salq $4, %rax
+ movq %rax, %rcx
+ movq -40(%rbp), %rax
+ addq %rcx, %rax
+ movl (%rax), %ecx
+ movq -24(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ jmp .L57
+.L61:
+ movb $0, -5(%rbp)
+ jmp .L57
+.L58:
+ cmpl $47, -12(%rbp)
+ jle .L72
+ movl -28(%rbp), %eax
+ addl $48, %eax
+ cmpl -12(%rbp), %eax
+ jle .L72
+ movl -12(%rbp), %eax
+ subl $48, %eax
+ movl %eax, -4(%rbp)
+ movl -4(%rbp), %eax
+ cltq
+ salq $4, %rax
+ movq %rax, %rdx
+ movq -40(%rbp), %rax
+ addq %rdx, %rax
+ movl 4(%rax), %eax
+ leal 1(%rax), %edx
+ movl -4(%rbp), %eax
+ cltq
+ salq $4, %rax
+ movq %rax, %rcx
+ movq -40(%rbp), %rax
+ addq %rcx, %rax
+ movl (%rax), %ecx
+ movq -24(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ movb $0, -5(%rbp)
+.L72:
+ nop
+.L57:
+ cmpb $0, -5(%rbp)
+ jne .L70
+ movl -4(%rbp), %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE14:
+ .size alx_ncur_usr_sel, .-alx_ncur_usr_sel
+ .type loop_w_getdbl, @function
+loop_w_getdbl:
+.LFB15:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1104, %rsp
+ movq %rdi, -1064(%rbp)
+ movsd %xmm0, -1072(%rbp)
+ movsd %xmm1, -1080(%rbp)
+ movsd %xmm2, -1088(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L74
+.L82:
+ call echo@PLT
+ movq -1064(%rbp), %rax
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L75
+ leaq -1040(%rbp), %rcx
+ movq -1064(%rbp), %rax
+ movl $1024, %edx
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call wgetnstr@PLT
+ jmp .L76
+.L75:
+ movl $-1, %eax
+.L76:
+ movl %eax, -12(%rbp)
+ call noecho@PLT
+ movq -1064(%rbp), %rax
+ movq %rax, %rdi
+ call wclear@PLT
+ movq -1064(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ cmpl $-1, -12(%rbp)
+ jne .L77
+ movl $5, -8(%rbp)
+ jmp .L78
+.L77:
+ leaq -1040(%rbp), %rcx
+ movsd -1088(%rbp), %xmm1
+ movsd -1080(%rbp), %xmm0
+ movq -1072(%rbp), %rdx
+ leaq -1048(%rbp), %rax
+ movq %rcx, %rsi
+ movapd %xmm1, %xmm2
+ movapd %xmm0, %xmm1
+ movq %rdx, -1096(%rbp)
+ movsd -1096(%rbp), %xmm0
+ movq %rax, %rdi
+ call alx_sscan_dbl@PLT
+ movl %eax, -8(%rbp)
+.L78:
+ cmpl $0, -8(%rbp)
+ je .L84
+ movl -8(%rbp), %edx
+ movq -1064(%rbp), %rax
+ movl %edx, %esi
+ movq %rax, %rdi
+ call manage_w_error
+ addl $1, -4(%rbp)
+.L74:
+ cmpl $1, -4(%rbp)
+ jle .L82
+ jmp .L81
+.L84:
+ nop
+.L81:
+ movsd -1048(%rbp), %xmm0
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE15:
+ .size loop_w_getdbl, .-loop_w_getdbl
+ .type loop_w_getint, @function
+loop_w_getint:
+.LFB16:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1104, %rsp
+ movq %rdi, -1064(%rbp)
+ movsd %xmm0, -1072(%rbp)
+ movq %rsi, -1080(%rbp)
+ movsd %xmm1, -1088(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L86
+.L94:
+ call echo@PLT
+ movq -1064(%rbp), %rax
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L87
+ leaq -1040(%rbp), %rcx
+ movq -1064(%rbp), %rax
+ movl $1024, %edx
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call wgetnstr@PLT
+ jmp .L88
+.L87:
+ movl $-1, %eax
+.L88:
+ movl %eax, -12(%rbp)
+ call noecho@PLT
+ movq -1064(%rbp), %rax
+ movq %rax, %rdi
+ call wclear@PLT
+ movq -1064(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ cmpl $-1, -12(%rbp)
+ jne .L89
+ movl $5, -8(%rbp)
+ jmp .L90
+.L89:
+ leaq -1040(%rbp), %rdx
+ movsd -1088(%rbp), %xmm0
+ movq -1080(%rbp), %rsi
+ movq -1072(%rbp), %rcx
+ leaq -1048(%rbp), %rax
+ movapd %xmm0, %xmm1
+ movq %rcx, -1096(%rbp)
+ movsd -1096(%rbp), %xmm0
+ movq %rax, %rdi
+ call alx_sscan_int@PLT
+ movl %eax, -8(%rbp)
+.L90:
+ cmpl $0, -8(%rbp)
+ je .L96
+ movl -8(%rbp), %edx
+ movq -1064(%rbp), %rax
+ movl %edx, %esi
+ movq %rax, %rdi
+ call manage_w_error
+ addl $1, -4(%rbp)
+.L86:
+ cmpl $1, -4(%rbp)
+ jle .L94
+ jmp .L93
+.L96:
+ nop
+.L93:
+ movq -1048(%rbp), %rax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE16:
+ .size loop_w_getint, .-loop_w_getint
+ .type loop_w_getstr, @function
+loop_w_getstr:
+.LFB17:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1072, %rsp
+ movq %rdi, -1048(%rbp)
+ movl %esi, -1052(%rbp)
+ movq %rdx, -1064(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L98
+.L106:
+ call echo@PLT
+ movq -1064(%rbp), %rax
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L99
+ leaq -1040(%rbp), %rcx
+ movq -1064(%rbp), %rax
+ movl $1024, %edx
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call wgetnstr@PLT
+ jmp .L100
+.L99:
+ movl $-1, %eax
+.L100:
+ movl %eax, -12(%rbp)
+ call noecho@PLT
+ movq -1064(%rbp), %rax
+ movq %rax, %rdi
+ call wclear@PLT
+ movq -1064(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movl $0, -8(%rbp)
+ cmpl $-1, -12(%rbp)
+ jne .L108
+ movl $5, -8(%rbp)
+ cmpl $0, -8(%rbp)
+ je .L109
+ movl -8(%rbp), %edx
+ movq -1064(%rbp), %rax
+ movl %edx, %esi
+ movq %rax, %rdi
+ call manage_w_error
+ addl $1, -4(%rbp)
+.L98:
+ cmpl $1, -4(%rbp)
+ jle .L106
+ jmp .L103
+.L108:
+ nop
+ jmp .L103
+.L109:
+ nop
+.L103:
+ cmpl $0, -8(%rbp)
+ jne .L110
+ movl -1052(%rbp), %eax
+ movslq %eax, %rcx
+ leaq -1040(%rbp), %rdx
+ movq -1048(%rbp), %rax
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+.L110:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE17:
+ .size loop_w_getstr, .-loop_w_getstr
+ .type loop_w_getfname, @function
+loop_w_getfname:
+.LFB18:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $4144, %rsp
+ movq %rdi, -4120(%rbp)
+ movq %rsi, -4128(%rbp)
+ movl %edx, %eax
+ movq %rcx, -4144(%rbp)
+ movb %al, -4132(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L112
+.L120:
+ call echo@PLT
+ movq -4144(%rbp), %rax
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L113
+ leaq -4112(%rbp), %rcx
+ movq -4144(%rbp), %rax
+ movl $4096, %edx
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call wgetnstr@PLT
+ jmp .L114
+.L113:
+ movl $-1, %eax
+.L114:
+ movl %eax, -12(%rbp)
+ call noecho@PLT
+ movq -4144(%rbp), %rax
+ movq %rax, %rdi
+ call wclear@PLT
+ movq -4144(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ cmpl $-1, -12(%rbp)
+ jne .L115
+ movl $5, -8(%rbp)
+ jmp .L116
+.L115:
+ movzbl -4132(%rbp), %edx
+ leaq -4112(%rbp), %rcx
+ movq -4128(%rbp), %rsi
+ movq -4120(%rbp), %rax
+ movq %rax, %rdi
+ call alx_sscan_fname@PLT
+ movl %eax, -8(%rbp)
+.L116:
+ cmpl $0, -8(%rbp)
+ je .L121
+ movl -8(%rbp), %edx
+ movq -4144(%rbp), %rax
+ movl %edx, %esi
+ movq %rax, %rdi
+ call manage_w_error
+ addl $1, -4(%rbp)
+.L112:
+ cmpl $1, -4(%rbp)
+ jle .L120
+ jmp .L119
+.L121:
+ nop
+.L119:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE18:
+ .size loop_w_getfname, .-loop_w_getfname
+ .section .rodata
+.LC5:
+ .string "\302\241 Number is out of range !"
+.LC6:
+ .string "\302\241 sscanf() error !"
+.LC7:
+ .string "\302\241 wgetstr() error !"
+.LC8:
+ .string "\302\241 FILE error !"
+ .text
+ .type manage_w_error, @function
+manage_w_error:
+.LFB19:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movl %esi, -12(%rbp)
+ movl -12(%rbp), %eax
+ cmpl $2, %eax
+ je .L124
+ cmpl $2, %eax
+ jg .L125
+ cmpl $1, %eax
+ je .L126
+ jmp .L123
+.L125:
+ cmpl $3, %eax
+ je .L127
+ cmpl $5, %eax
+ je .L128
+ jmp .L123
+.L126:
+ movq -8(%rbp), %rax
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L137
+ movq -8(%rbp), %rax
+ movl $-1, %edx
+ leaq .LC5(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+ jmp .L137
+.L124:
+ movq -8(%rbp), %rax
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L138
+ movq -8(%rbp), %rax
+ movl $-1, %edx
+ leaq .LC6(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+ jmp .L138
+.L128:
+ movq -8(%rbp), %rax
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L139
+ movq -8(%rbp), %rax
+ movl $-1, %edx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+ jmp .L139
+.L127:
+ movq -8(%rbp), %rax
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L140
+ movq -8(%rbp), %rax
+ movl $-1, %edx
+ leaq .LC8(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+ jmp .L140
+.L137:
+ nop
+ jmp .L123
+.L138:
+ nop
+ jmp .L123
+.L139:
+ nop
+ jmp .L123
+.L140:
+ nop
+.L123:
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call wgetch@PLT
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call wclear@PLT
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE19:
+ .size manage_w_error, .-manage_w_error
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/libalx/tmp/alx_seed.s b/libalx/tmp/alx_seed.s
new file mode 100644
index 0000000..7173306
--- /dev/null
+++ b/libalx/tmp/alx_seed.s
@@ -0,0 +1,87 @@
+ .file "alx_seed.c"
+ .text
+ .globl seedf
+ .type seedf, @function
+seedf:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl %edi, -4(%rbp)
+ movl %esi, -8(%rbp)
+ movl %edx, -12(%rbp)
+ movl -8(%rbp), %edx
+ movl -12(%rbp), %eax
+ addl %edx, %eax
+ subl %eax, -4(%rbp)
+ movl -12(%rbp), %eax
+ shrl $13, %eax
+ xorl %eax, -4(%rbp)
+ movl -12(%rbp), %edx
+ movl -4(%rbp), %eax
+ addl %edx, %eax
+ subl %eax, -8(%rbp)
+ movl -4(%rbp), %eax
+ sall $8, %eax
+ xorl %eax, -8(%rbp)
+ movl -4(%rbp), %edx
+ movl -8(%rbp), %eax
+ addl %edx, %eax
+ subl %eax, -12(%rbp)
+ movl -8(%rbp), %eax
+ shrl $13, %eax
+ xorl %eax, -12(%rbp)
+ movl -8(%rbp), %edx
+ movl -12(%rbp), %eax
+ addl %edx, %eax
+ subl %eax, -4(%rbp)
+ movl -12(%rbp), %eax
+ shrl $12, %eax
+ xorl %eax, -4(%rbp)
+ movl -4(%rbp), %edx
+ movl -12(%rbp), %eax
+ addl %edx, %eax
+ subl %eax, -8(%rbp)
+ movl -4(%rbp), %eax
+ sall $16, %eax
+ xorl %eax, -8(%rbp)
+ movl -4(%rbp), %edx
+ movl -8(%rbp), %eax
+ addl %edx, %eax
+ subl %eax, -12(%rbp)
+ movl -8(%rbp), %eax
+ shrl $5, %eax
+ xorl %eax, -12(%rbp)
+ movl -8(%rbp), %edx
+ movl -12(%rbp), %eax
+ addl %edx, %eax
+ subl %eax, -4(%rbp)
+ movl -12(%rbp), %eax
+ shrl $3, %eax
+ xorl %eax, -4(%rbp)
+ movl -4(%rbp), %edx
+ movl -12(%rbp), %eax
+ addl %edx, %eax
+ subl %eax, -8(%rbp)
+ movl -4(%rbp), %eax
+ sall $10, %eax
+ xorl %eax, -8(%rbp)
+ movl -4(%rbp), %edx
+ movl -8(%rbp), %eax
+ addl %edx, %eax
+ subl %eax, -12(%rbp)
+ movl -8(%rbp), %eax
+ shrl $15, %eax
+ xorl %eax, -12(%rbp)
+ movl -12(%rbp), %eax
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size seedf, .-seedf
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/Makefile b/modules/Makefile
index 8bbb06b..a6e81db 100644
--- a/modules/Makefile
+++ b/modules/Makefile
@@ -12,6 +12,8 @@ PLAY_DIR = $(MODULES_DIR)/player/
SAVE_DIR = $(MODULES_DIR)/save/
XYZZY_DIR = $(MODULES_DIR)/xyzzy/
+TMP_DIR = $(MODULES_DIR)/tmp/
+
export ABOUT_DIR
export CTRL_DIR
export GAME_DIR
@@ -34,6 +36,7 @@ all:
$(Q)cd $(PLAY_DIR) && $(MAKE) && cd ..
$(Q)cd $(SAVE_DIR) && $(MAKE) && cd ..
$(Q)cd $(XYZZY_DIR) && $(MAKE) && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) && cd ..
clean:
@@ -44,6 +47,7 @@ clean:
$(Q)cd $(PLAY_DIR) && $(MAKE) clean && cd ..
$(Q)cd $(SAVE_DIR) && $(MAKE) clean && cd ..
$(Q)cd $(XYZZY_DIR) && $(MAKE) clean && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) clean && cd ..
@echo "Clean modules"
################################################################################
diff --git a/modules/about/Makefile b/modules/about/Makefile
index 224aba5..42eb4c2 100644
--- a/modules/about/Makefile
+++ b/modules/about/Makefile
@@ -4,16 +4,16 @@
# directories
-OBJ_DIR = $(ABOUT_DIR)/obj/
+TMP_DIR = $(ABOUT_DIR)/tmp/
# target: dependencies
# action
all:
- $(Q)cd $(OBJ_DIR) && $(MAKE) && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) && cd ..
clean:
- $(Q)cd $(OBJ_DIR) && $(MAKE) clean && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) clean && cd ..
################################################################################
######## End of file ###########################################################
diff --git a/modules/about/obj/Makefile b/modules/about/tmp/Makefile
index 2c1886b..b75a882 100644
--- a/modules/about/obj/Makefile
+++ b/modules/about/tmp/Makefile
@@ -4,22 +4,22 @@
# directories
-LIBALX_INC_DIR = $(LIBALX_DIR)/inc/
+LIBALX_INC_DIR = $(LIBALX_DIR)/inc/
INC_DIR = $(ABOUT_DIR)/inc/
SRC_DIR = $(ABOUT_DIR)/src/
# dependencies
-_ALL = about.o
-ALL = $(_ALL) about_mod.o
+_ALL = about.o
+ALL = $(_ALL) about_mod.o
-ABOU_INC_LIBALX = alx_file.h
-ABOU_INC = about.h
-ABOU_DEPS = $(SRC_DIR)/about.c \
+ABOU_INC_LIBALX = alx_file.h
+ABOU_INC = about.h
+ABOU_DEPS = $(SRC_DIR)/about.c \
$(patsubst %,$(LIBALX_INC_DIR)/%,$(ABOU_INC_LIBALX)) \
$(patsubst %,$(INC_DIR)/%,$(ABOU_INC))
-ABOU_INC_DIRS = -I $(INC_DIR) \
+ABOU_INC_DIRS = -I $(INC_DIR) \
-I $(LIBALX_INC_DIR)
# target: dependencies
@@ -30,14 +30,17 @@ all: $(ALL)
about_mod.o: $(_ALL)
$(Q)$(LD) -r $^ -o $@
- @echo "\tLD $@"
+ @echo " LD $@"
@echo ""
-about.o: $(ABOU_DEPS)
- $(Q)$(CC) $(CFLAGS) $(ABOU_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
+about.s: $(ABOU_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(ABOU_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+about.o: about.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
clean:
- $(Q)rm -f *.o
+ $(Q)rm -f *.o *.s
diff --git a/modules/about/tmp/about.s b/modules/about/tmp/about.s
new file mode 100644
index 0000000..aa459e8
--- /dev/null
+++ b/modules/about/tmp/about.s
@@ -0,0 +1,214 @@
+ .file "about.c"
+ .comm share_path,4096,32
+ .section .rodata
+.LC0:
+ .string "mine-sweeper/"
+.LC1:
+ .string "/usr/local/share/"
+.LC2:
+ .string "%s/%s/"
+ .text
+ .globl about_init
+ .type about_init, @function
+about_init:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ leaq .LC0(%rip), %r8
+ leaq .LC1(%rip), %rcx
+ leaq .LC2(%rip), %rdx
+ movl $4096, %esi
+ leaq share_path(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size about_init, .-about_init
+ .section .rodata
+.LC3:
+ .string "COPYRIGHT.txt"
+.LC4:
+ .string "%s/%s"
+.LC5:
+ .string "DISCLAIMER.txt"
+.LC6:
+ .string "HELP.txt"
+.LC7:
+ .string "LICENSE.txt"
+.LC8:
+ .string "USAGE.txt"
+ .text
+ .globl snprint_share_file
+ .type snprint_share_file, @function
+snprint_share_file:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $4112, %rsp
+ movq %rdi, -4104(%rbp)
+ movl %esi, -4108(%rbp)
+ movl %edx, -4112(%rbp)
+ cmpl $4, -4112(%rbp)
+ ja .L3
+ movl -4112(%rbp), %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L5(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L5(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L5:
+ .long .L4-.L5
+ .long .L6-.L5
+ .long .L7-.L5
+ .long .L8-.L5
+ .long .L9-.L5
+ .text
+.L4:
+ leaq -4096(%rbp), %rax
+ leaq .LC3(%rip), %r8
+ leaq share_path(%rip), %rcx
+ leaq .LC4(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ jmp .L3
+.L6:
+ leaq -4096(%rbp), %rax
+ leaq .LC5(%rip), %r8
+ leaq share_path(%rip), %rcx
+ leaq .LC4(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ jmp .L3
+.L7:
+ leaq -4096(%rbp), %rax
+ leaq .LC6(%rip), %r8
+ leaq share_path(%rip), %rcx
+ leaq .LC4(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ jmp .L3
+.L8:
+ leaq -4096(%rbp), %rax
+ leaq .LC7(%rip), %r8
+ leaq share_path(%rip), %rcx
+ leaq .LC4(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ jmp .L3
+.L9:
+ leaq -4096(%rbp), %rax
+ leaq .LC8(%rip), %r8
+ leaq share_path(%rip), %rcx
+ leaq .LC4(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ nop
+.L3:
+ leaq -4096(%rbp), %rdx
+ movl -4108(%rbp), %ecx
+ movq -4104(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call alx_snprint_file@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size snprint_share_file, .-snprint_share_file
+ .section .rodata
+ .align 8
+.LC9:
+ .string "\n\342\224\214\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\220"
+.LC10:
+ .string "%s"
+ .align 8
+.LC11:
+ .string "\342\224\224\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\200\342\224\230\n"
+ .text
+ .globl print_share_file
+ .type print_share_file, @function
+print_share_file:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1048592, %rsp
+ movl %edi, -1048580(%rbp)
+ movl -1048580(%rbp), %edx
+ leaq -1048576(%rbp), %rax
+ movl $1048576, %esi
+ movq %rax, %rdi
+ call snprint_share_file
+ leaq .LC9(%rip), %rdi
+ call puts@PLT
+ leaq -1048576(%rbp), %rax
+ movq %rax, %rsi
+ leaq .LC10(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ leaq .LC11(%rip), %rdi
+ call puts@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size print_share_file, .-print_share_file
+ .section .rodata
+.LC12:
+ .string "mine-sweeper 4~b1\n"
+ .text
+ .globl print_version
+ .type print_version, @function
+print_version:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ leaq .LC12(%rip), %rdi
+ call puts@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size print_version, .-print_version
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/ctrl/Makefile b/modules/ctrl/Makefile
index d19e170..60d7283 100644
--- a/modules/ctrl/Makefile
+++ b/modules/ctrl/Makefile
@@ -4,16 +4,16 @@
# directories
-OBJ_DIR = $(CTRL_DIR)/obj/
+TMP_DIR = $(CTRL_DIR)/tmp/
# target: dependencies
# action
all:
- $(Q)cd $(OBJ_DIR) && $(MAKE) && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) && cd ..
clean:
- $(Q)cd $(OBJ_DIR) && $(MAKE) clean && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) clean && cd ..
################################################################################
######## End of file ###########################################################
diff --git a/modules/ctrl/obj/Makefile b/modules/ctrl/tmp/Makefile
index a0e4537..a7b18d6 100644
--- a/modules/ctrl/obj/Makefile
+++ b/modules/ctrl/tmp/Makefile
@@ -10,12 +10,11 @@ PLAY_INC_DIR = $(PLAY_DIR)/inc/
INC_DIR = $(CTRL_DIR)/inc/
SRC_DIR = $(CTRL_DIR)/src/
-TST_DIR = $(CTRL_DIR)/tst/
# dependencies
-_ALL = start.o
-ALL = $(_ALL) ctrl_mod.o
+_ALL = start.o
+ALL = $(_ALL) ctrl_mod.o
STRT_INC_GAME = game.h game_iface.h
STRT_INC_MENU = menu_iface.h
@@ -39,14 +38,17 @@ all: $(ALL)
ctrl_mod.o: $(_ALL)
$(Q)$(LD) -r $^ -o $@
- @echo "\tLD $@"
+ @echo " LD $@"
@echo ""
-start.o: $(STRT_DEPS)
- $(Q)$(CC) $(CFLAGS) $(STRT_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
+start.s: $(STRT_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(STRT_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+start.o: start.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
clean:
- $(Q)rm -f *.o
+ $(Q)rm -f *.o *.s
diff --git a/modules/ctrl/tmp/start.s b/modules/ctrl/tmp/start.s
new file mode 100644
index 0000000..28ab17b
--- /dev/null
+++ b/modules/ctrl/tmp/start.s
@@ -0,0 +1,151 @@
+ .file "start.c"
+ .comm start_mode,4,4
+ .text
+ .globl start_switch
+ .type start_switch, @function
+start_switch:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl start_mode(%rip), %eax
+ cmpl $1, %eax
+ je .L3
+ cmpl $2, %eax
+ je .L4
+ testl %eax, %eax
+ je .L5
+ jmp .L6
+.L5:
+ call start_foo
+ jmp .L2
+.L3:
+ call start_rand
+ jmp .L2
+.L4:
+ call start_load
+ nop
+.L2:
+.L6:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size start_switch, .-start_switch
+ .type start_foo, @function
+start_foo:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size start_foo, .-start_foo
+ .type start_rand, @function
+start_rand:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ leaq -20(%rbp), %rcx
+ leaq -16(%rbp), %rdx
+ leaq -12(%rbp), %rsi
+ leaq -8(%rbp), %rax
+ movq %rax, %rdi
+ call menu_iface_board@PLT
+ movl -16(%rbp), %edx
+ movl -12(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call player_iface_init@PLT
+ leaq -28(%rbp), %rdx
+ leaq -24(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call player_iface_start@PLT
+ testl %eax, %eax
+ setne %al
+ movb %al, -1(%rbp)
+ movzbl -1(%rbp), %eax
+ xorl $1, %eax
+ testb %al, %al
+ je .L9
+ movl -28(%rbp), %edi
+ movl -24(%rbp), %ecx
+ movl -20(%rbp), %edx
+ movl -16(%rbp), %esi
+ movl -12(%rbp), %eax
+ movl %edi, %r8d
+ movl %eax, %edi
+ call game_init_rand@PLT
+ movl -28(%rbp), %edx
+ movl -24(%rbp), %ecx
+ movl -8(%rbp), %eax
+ movl %ecx, %esi
+ movl %eax, %edi
+ call game_iface_init_rand@PLT
+ call game_iface@PLT
+.L9:
+ call player_iface_cleanup@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size start_rand, .-start_rand
+ .type start_load, @function
+start_load:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ call __errno_location@PLT
+ movl $0, (%rax)
+ leaq -8(%rbp), %rdx
+ leaq -4(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call game_init_load@PLT
+ call __errno_location@PLT
+ movl (%rax), %eax
+ testl %eax, %eax
+ jne .L12
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call player_iface_init@PLT
+ call game_iface_init_load@PLT
+ call game_iface@PLT
+ call player_iface_cleanup@PLT
+.L12:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size start_load, .-start_load
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/game/Makefile b/modules/game/Makefile
index 891e668..692908e 100644
--- a/modules/game/Makefile
+++ b/modules/game/Makefile
@@ -4,16 +4,16 @@
# directories
-OBJ_DIR = $(GAME_DIR)/obj/
+TMP_DIR = $(GAME_DIR)/tmp/
# target: dependencies
# action
all:
- $(Q)cd $(OBJ_DIR) && $(MAKE) && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) && cd ..
clean:
- $(Q)cd $(OBJ_DIR) && $(MAKE) clean && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) clean && cd ..
################################################################################
######## End of file ###########################################################
diff --git a/modules/game/obj/Makefile b/modules/game/tmp/Makefile
index 5cd2974..74cbf4f 100644
--- a/modules/game/obj/Makefile
+++ b/modules/game/tmp/Makefile
@@ -15,25 +15,25 @@ SRC_DIR = $(GAME_DIR)/src/
# dependencies
-_ALL = game.o game_iface.o
-ALL = $(_ALL) game_mod.o
+_ALL = game.o game_iface.o
+ALL = $(_ALL) game_mod.o
-GAME_INC_LIBALX = alx_seed.h
-GAME_INC_SAVE = save.h
-GAME_INC = game.h
-GAME_DEPS = $(SRC_DIR)/game.c \
+GAME_INC_LIBALX = alx_seed.h
+GAME_INC_SAVE = save.h
+GAME_INC = game.h
+GAME_DEPS = $(SRC_DIR)/game.c \
$(patsubst %,$(INC_DIR)/%,$(GAME_INC)) \
$(patsubst %,$(LIBALX_INC_DIR)/%,$(GAME_INC_LIBALX)) \
$(patsubst %,$(SAVE_INC_DIR)/%,$(GAME_INC_SAVE))
-GAME_INC_DIRS = -I $(INC_DIR) \
+GAME_INC_DIRS = -I $(INC_DIR) \
-I $(SAVE_INC_DIR) \
-I $(LIBALX_INC_DIR)
-GAMEI_INC_PLAY = player_iface.h
-GAMEI_INC_SAVE = save.h score.h
-GAMEI_INC_XYZZY = xyzzy.h
-GAMEI_INC = game_iface.h game.h
-GAMEI_DEPS = $(SRC_DIR)/game_iface.c \
+GAMEI_INC_PLAY = player_iface.h
+GAMEI_INC_SAVE = save.h score.h
+GAMEI_INC_XYZZY = xyzzy.h
+GAMEI_INC = game_iface.h game.h
+GAMEI_DEPS = $(SRC_DIR)/game_iface.c \
$(patsubst %,$(INC_DIR)/%,$(GAME_INC)) \
$(patsubst %,$(PLAY_INC_DIR)/%,$(GAMEI_INC_PLAY)) \
$(patsubst %,$(SAVE_INC_DIR)/%,$(GAME_INC_SAVE)) \
@@ -51,18 +51,24 @@ all: $(ALL)
game_mod.o: $(_ALL)
$(Q)$(LD) -r $^ -o $@
- @echo "\tLD $@"
+ @echo " LD $@"
@echo ""
-game.o: $(GAME_DEPS)
- $(Q)$(CC) $(CFLAGS) $(GAME_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
+game.s: $(GAME_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(GAME_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+game.o: game.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
-game_iface.o: $(GAMEI_DEPS)
- $(Q)$(CC) $(CFLAGS) $(GAMEI_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
+game_iface.s: $(GAMEI_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(GAMEI_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+game_iface.o: game_iface.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
clean:
- $(Q)rm -f *.o
+ $(Q)rm -f *.o *.s
diff --git a/modules/game/tmp/game.s b/modules/game/tmp/game.s
new file mode 100644
index 0000000..752fd83
--- /dev/null
+++ b/modules/game/tmp/game.s
@@ -0,0 +1,1170 @@
+ .file "game.c"
+ .comm game_board,7984032,32
+ .text
+ .globl game_init
+ .type game_init, @function
+game_init:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %r12
+ pushq %rbx
+ subq $16, %rsp
+ .cfi_offset 12, -24
+ .cfi_offset 3, -32
+ call getpid@PLT
+ movl %eax, %r12d
+ movl $0, %edi
+ call time@PLT
+ movl %eax, %ebx
+ call clock@PLT
+ movl %r12d, %edx
+ movl %ebx, %esi
+ movl %eax, %edi
+ call seedf@PLT
+ movl %eax, -20(%rbp)
+ movl -20(%rbp), %eax
+ movl %eax, %edi
+ call srand@PLT
+ nop
+ addq $16, %rsp
+ popq %rbx
+ popq %r12
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size game_init, .-game_init
+ .globl game_init_rand
+ .type game_init_rand, @function
+game_init_rand:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movl %edi, -4(%rbp)
+ movl %esi, -8(%rbp)
+ movl %edx, -12(%rbp)
+ movl %ecx, -16(%rbp)
+ movl %r8d, -20(%rbp)
+ movl -4(%rbp), %eax
+ movl %eax, game_board(%rip)
+ movl -8(%rbp), %eax
+ movl %eax, 4+game_board(%rip)
+ movl -12(%rbp), %eax
+ movl %eax, 8+game_board(%rip)
+ call game_init_clr
+ movl -20(%rbp), %edx
+ movl -16(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_init_mines
+ call game_init_adjnums
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size game_init_rand, .-game_init_rand
+ .globl game_init_load
+ .type game_init_load, @function
+game_init_load:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ call load_game_file@PLT
+ movl $0, 7984028+game_board(%rip)
+ movl game_board(%rip), %edx
+ movq -8(%rbp), %rax
+ movl %edx, (%rax)
+ movl 4+game_board(%rip), %edx
+ movq -16(%rbp), %rax
+ movl %edx, (%rax)
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size game_init_load, .-game_init_load
+ .globl game_action
+ .type game_action, @function
+game_action:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl %edi, -4(%rbp)
+ movl %esi, -8(%rbp)
+ movl %edx, -12(%rbp)
+ movl -4(%rbp), %eax
+ cmpl $2, %eax
+ je .L6
+ cmpl $2, %eax
+ jg .L7
+ cmpl $1, %eax
+ je .L8
+ jmp .L11
+.L7:
+ cmpl $3, %eax
+ je .L9
+ cmpl $4, %eax
+ je .L10
+ jmp .L11
+.L8:
+ movl -12(%rbp), %edx
+ movl -8(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_step
+ jmp .L5
+.L6:
+ movl -12(%rbp), %edx
+ movl -8(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_flag
+ jmp .L5
+.L9:
+ movl -12(%rbp), %edx
+ movl -8(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_possible
+ jmp .L5
+.L10:
+ movl -12(%rbp), %edx
+ movl -8(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_rmflag
+ nop
+.L5:
+.L11:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size game_action, .-game_action
+ .type game_init_clr, @function
+game_init_clr:
+.LFB4:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl $0, -4(%rbp)
+ jmp .L13
+.L16:
+ movl $0, -8(%rbp)
+ jmp .L14
+.L15:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl $0, (%rdx,%rax)
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl $0, (%rdx,%rax)
+ addl $1, -8(%rbp)
+.L14:
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jg .L15
+ addl $1, -4(%rbp)
+.L13:
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jg .L16
+ movl $0, 7984020+game_board(%rip)
+ movl $0, 7984024+game_board(%rip)
+ movl $0, 7984028+game_board(%rip)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE4:
+ .size game_init_clr, .-game_init_clr
+ .type game_init_mines, @function
+game_init_mines:
+.LFB5:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L18
+.L20:
+ call rand@PLT
+ movl game_board(%rip), %ecx
+ cltd
+ idivl %ecx
+ movl %edx, -8(%rbp)
+ call rand@PLT
+ movl 4+game_board(%rip), %ecx
+ cltd
+ idivl %ecx
+ movl %edx, -12(%rbp)
+ movl -12(%rbp), %eax
+ cltq
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ testl %eax, %eax
+ jne .L18
+ movl -8(%rbp), %eax
+ cmpl -20(%rbp), %eax
+ jne .L19
+ movl -12(%rbp), %eax
+ cmpl -24(%rbp), %eax
+ je .L18
+.L19:
+ movl -12(%rbp), %eax
+ cltq
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl $9, (%rdx,%rax)
+ addl $1, -4(%rbp)
+.L18:
+ movl 8+game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jg .L20
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE5:
+ .size game_init_mines, .-game_init_mines
+ .type game_init_adjnums, @function
+game_init_adjnums:
+.LFB6:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl $0, -4(%rbp)
+ jmp .L22
+.L31:
+ movl $0, -8(%rbp)
+ jmp .L23
+.L30:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $8, %eax
+ jle .L24
+ movl -4(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -12(%rbp)
+ jmp .L25
+.L29:
+ movl -8(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -16(%rbp)
+ jmp .L26
+.L28:
+ cmpl $0, -12(%rbp)
+ js .L27
+ movl game_board(%rip), %eax
+ cmpl -12(%rbp), %eax
+ jle .L27
+ cmpl $0, -16(%rbp)
+ js .L27
+ movl 4+game_board(%rip), %eax
+ cmpl -16(%rbp), %eax
+ jle .L27
+ movl -16(%rbp), %eax
+ cltq
+ movl -12(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ leal 1(%rax), %ecx
+ movl -16(%rbp), %eax
+ cltq
+ movl -12(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl %ecx, (%rdx,%rax)
+.L27:
+ addl $1, -16(%rbp)
+.L26:
+ movl -8(%rbp), %eax
+ addl $2, %eax
+ cmpl -16(%rbp), %eax
+ jg .L28
+ addl $1, -12(%rbp)
+.L25:
+ movl -4(%rbp), %eax
+ addl $2, %eax
+ cmpl -12(%rbp), %eax
+ jg .L29
+.L24:
+ addl $1, -8(%rbp)
+.L23:
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jg .L30
+ addl $1, -4(%rbp)
+.L22:
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jg .L31
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE6:
+ .size game_init_adjnums, .-game_init_adjnums
+ .type game_step, @function
+game_step:
+.LFB7:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl %edi, -4(%rbp)
+ movl %esi, -8(%rbp)
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $1, %eax
+ je .L34
+ cmpl $3, %eax
+ je .L35
+ testl %eax, %eax
+ je .L35
+ jmp .L36
+.L35:
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_discover
+ jmp .L33
+.L34:
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_big_step
+ nop
+.L33:
+.L36:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE7:
+ .size game_step, .-game_step
+ .type game_discover, @function
+game_discover:
+.LFB8:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl game_board(%rip), %edx
+ movl 4+game_board(%rip), %eax
+ imull %eax, %edx
+ movl 8+game_board(%rip), %eax
+ subl %eax, %edx
+ movl %edx, %eax
+ movl %eax, -4(%rbp)
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $8, %eax
+ jle .L38
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl $-1, (%rdx,%rax)
+ movl $2, 7984028+game_board(%rip)
+ jmp .L41
+.L38:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $1, %eax
+ je .L41
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl $1, (%rdx,%rax)
+ movl 7984024+game_board(%rip), %eax
+ addl $1, %eax
+ movl %eax, 7984024+game_board(%rip)
+ movl 7984024+game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jne .L40
+ movl $1, 7984028+game_board(%rip)
+ jmp .L41
+.L40:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ testl %eax, %eax
+ jne .L41
+ movl -24(%rbp), %edx
+ movl -20(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_discover_recursive
+.L41:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE8:
+ .size game_discover, .-game_discover
+ .type game_discover_recursive, @function
+game_discover_recursive:
+.LFB9:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl -20(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -4(%rbp)
+ jmp .L43
+.L47:
+ movl -24(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -8(%rbp)
+ jmp .L44
+.L46:
+ cmpl $0, -4(%rbp)
+ js .L45
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jle .L45
+ cmpl $0, -8(%rbp)
+ js .L45
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jle .L45
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_discover
+.L45:
+ addl $1, -8(%rbp)
+.L44:
+ movl -24(%rbp), %eax
+ addl $2, %eax
+ cmpl -8(%rbp), %eax
+ jg .L46
+ addl $1, -4(%rbp)
+.L43:
+ movl -20(%rbp), %eax
+ addl $2, %eax
+ cmpl -4(%rbp), %eax
+ jg .L47
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE9:
+ .size game_discover_recursive, .-game_discover_recursive
+ .type game_big_step, @function
+game_big_step:
+.LFB10:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl -24(%rbp), %edx
+ movl -20(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_count_flags
+ movl %eax, -4(%rbp)
+ cmpl $0, -4(%rbp)
+ je .L50
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl -4(%rbp), %eax
+ jne .L50
+ movl -24(%rbp), %edx
+ movl -20(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_step_recursive
+.L50:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE10:
+ .size game_big_step, .-game_big_step
+ .type game_count_flags, @function
+game_count_flags:
+.LFB11:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl $0, -4(%rbp)
+ movl -20(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -8(%rbp)
+ jmp .L52
+.L56:
+ movl -24(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -12(%rbp)
+ jmp .L53
+.L55:
+ cmpl $0, -8(%rbp)
+ js .L54
+ movl game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jle .L54
+ cmpl $0, -12(%rbp)
+ js .L54
+ movl 4+game_board(%rip), %eax
+ cmpl -12(%rbp), %eax
+ jle .L54
+ movl -12(%rbp), %eax
+ cltq
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $2, %eax
+ jne .L54
+ addl $1, -4(%rbp)
+.L54:
+ addl $1, -12(%rbp)
+.L53:
+ movl -24(%rbp), %eax
+ addl $2, %eax
+ cmpl -12(%rbp), %eax
+ jg .L55
+ addl $1, -8(%rbp)
+.L52:
+ movl -20(%rbp), %eax
+ addl $2, %eax
+ cmpl -8(%rbp), %eax
+ jg .L56
+ movl -4(%rbp), %eax
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE11:
+ .size game_count_flags, .-game_count_flags
+ .type game_step_recursive, @function
+game_step_recursive:
+.LFB12:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl -20(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -4(%rbp)
+ jmp .L59
+.L64:
+ movl -24(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -8(%rbp)
+ jmp .L60
+.L63:
+ cmpl $0, -4(%rbp)
+ js .L61
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jle .L61
+ cmpl $0, -8(%rbp)
+ js .L61
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jle .L61
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ testl %eax, %eax
+ je .L62
+ cmpl $3, %eax
+ jne .L61
+.L62:
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_discover
+ nop
+.L61:
+ addl $1, -8(%rbp)
+.L60:
+ movl -24(%rbp), %eax
+ addl $2, %eax
+ cmpl -8(%rbp), %eax
+ jg .L63
+ addl $1, -4(%rbp)
+.L59:
+ movl -20(%rbp), %eax
+ addl $2, %eax
+ cmpl -4(%rbp), %eax
+ jg .L64
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE12:
+ .size game_step_recursive, .-game_step_recursive
+ .type game_flag, @function
+game_flag:
+.LFB13:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl %edi, -4(%rbp)
+ movl %esi, -8(%rbp)
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $1, %eax
+ je .L67
+ cmpl $1, %eax
+ jg .L68
+ testl %eax, %eax
+ je .L69
+ jmp .L72
+.L68:
+ cmpl $2, %eax
+ je .L70
+ cmpl $3, %eax
+ je .L71
+ jmp .L72
+.L69:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl $2, (%rdx,%rax)
+ movl 7984020+game_board(%rip), %eax
+ addl $1, %eax
+ movl %eax, 7984020+game_board(%rip)
+ jmp .L66
+.L70:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl $3, (%rdx,%rax)
+ movl 7984020+game_board(%rip), %eax
+ subl $1, %eax
+ movl %eax, 7984020+game_board(%rip)
+ jmp .L66
+.L71:
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_rmflag
+ jmp .L66
+.L67:
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_all_flags
+ nop
+.L66:
+.L72:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE13:
+ .size game_flag, .-game_flag
+ .type game_possible, @function
+game_possible:
+.LFB14:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl %edi, -4(%rbp)
+ movl %esi, -8(%rbp)
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ testl %eax, %eax
+ je .L75
+ cmpl $3, %eax
+ je .L76
+ jmp .L77
+.L75:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl $3, (%rdx,%rax)
+ jmp .L74
+.L76:
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_rmflag
+ nop
+.L74:
+.L77:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE14:
+ .size game_possible, .-game_possible
+ .type game_rmflag, @function
+game_rmflag:
+.LFB15:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl %edi, -4(%rbp)
+ movl %esi, -8(%rbp)
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $2, %eax
+ je .L80
+ cmpl $3, %eax
+ je .L81
+ jmp .L82
+.L80:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl $0, (%rdx,%rax)
+ movl 7984020+game_board(%rip), %eax
+ subl $1, %eax
+ movl %eax, 7984020+game_board(%rip)
+ jmp .L79
+.L81:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl $0, (%rdx,%rax)
+ nop
+.L79:
+.L82:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE15:
+ .size game_rmflag, .-game_rmflag
+ .type game_all_flags, @function
+game_all_flags:
+.LFB16:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl -24(%rbp), %edx
+ movl -20(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_count_nclear
+ movl %eax, -4(%rbp)
+ cmpl $0, -4(%rbp)
+ je .L85
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl -4(%rbp), %eax
+ jne .L85
+ movl -24(%rbp), %edx
+ movl -20(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_flag_recursive
+.L85:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE16:
+ .size game_all_flags, .-game_all_flags
+ .type game_count_nclear, @function
+game_count_nclear:
+.LFB17:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl $0, -4(%rbp)
+ movl -20(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -8(%rbp)
+ jmp .L87
+.L91:
+ movl -24(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -12(%rbp)
+ jmp .L88
+.L90:
+ cmpl $0, -8(%rbp)
+ js .L89
+ movl game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jle .L89
+ cmpl $0, -12(%rbp)
+ js .L89
+ movl 4+game_board(%rip), %eax
+ cmpl -12(%rbp), %eax
+ jle .L89
+ movl -12(%rbp), %eax
+ cltq
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $1, %eax
+ je .L89
+ addl $1, -4(%rbp)
+.L89:
+ addl $1, -12(%rbp)
+.L88:
+ movl -24(%rbp), %eax
+ addl $2, %eax
+ cmpl -12(%rbp), %eax
+ jg .L90
+ addl $1, -8(%rbp)
+.L87:
+ movl -20(%rbp), %eax
+ addl $2, %eax
+ cmpl -8(%rbp), %eax
+ jg .L91
+ movl -4(%rbp), %eax
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE17:
+ .size game_count_nclear, .-game_count_nclear
+ .type game_flag_recursive, @function
+game_flag_recursive:
+.LFB18:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl -20(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -4(%rbp)
+ jmp .L94
+.L99:
+ movl -24(%rbp), %eax
+ subl $1, %eax
+ movl %eax, -8(%rbp)
+ jmp .L95
+.L98:
+ cmpl $0, -4(%rbp)
+ js .L96
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jle .L96
+ cmpl $0, -8(%rbp)
+ js .L96
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jle .L96
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ testl %eax, %eax
+ je .L97
+ cmpl $3, %eax
+ jne .L96
+.L97:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl $2, (%rdx,%rax)
+ movl 7984020+game_board(%rip), %eax
+ addl $1, %eax
+ movl %eax, 7984020+game_board(%rip)
+ nop
+.L96:
+ addl $1, -8(%rbp)
+.L95:
+ movl -24(%rbp), %eax
+ addl $2, %eax
+ cmpl -8(%rbp), %eax
+ jg .L98
+ addl $1, -4(%rbp)
+.L94:
+ movl -20(%rbp), %eax
+ addl $2, %eax
+ cmpl -4(%rbp), %eax
+ jg .L99
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE18:
+ .size game_flag_recursive, .-game_flag_recursive
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/game/tmp/game_iface.s b/modules/game/tmp/game_iface.s
new file mode 100644
index 0000000..e1aabc7
--- /dev/null
+++ b/modules/game/tmp/game_iface.s
@@ -0,0 +1,1218 @@
+ .file "game_iface.c"
+ .local game_iface_out
+ .comm game_iface_out,7984032,32
+ .local game_iface_in
+ .comm game_iface_in,3992008,32
+ .local game_iface_score
+ .comm game_iface_score,12,8
+ .local tim_ini
+ .comm tim_ini,8,8
+ .text
+ .globl game_iface_init_rand
+ .type game_iface_init_rand, @function
+game_iface_init_rand:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl %edi, -4(%rbp)
+ movl %esi, -8(%rbp)
+ movl %edx, -12(%rbp)
+ movl -12(%rbp), %edx
+ movl -8(%rbp), %eax
+ movl %eax, %esi
+ movl $1, %edi
+ call game_action@PLT
+ movl $0, 7984028+game_iface_out(%rip)
+ movl -4(%rbp), %eax
+ movl %eax, %edi
+ call game_iface_init_score
+ movl game_board(%rip), %eax
+ movl %eax, game_iface_out(%rip)
+ movl 4+game_board(%rip), %eax
+ movl %eax, 4+game_iface_out(%rip)
+ movl 8+game_board(%rip), %eax
+ movl %eax, 8+game_iface_out(%rip)
+ call game_iface_update_out
+ call game_iface_update_score
+ call game_iface_clean_in
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size game_iface_init_rand, .-game_iface_init_rand
+ .globl game_iface_init_load
+ .type game_iface_init_load, @function
+game_iface_init_load:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ call game_iface_init_cheated
+ movl game_board(%rip), %eax
+ movl %eax, game_iface_out(%rip)
+ movl 4+game_board(%rip), %eax
+ movl %eax, 4+game_iface_out(%rip)
+ movl 8+game_board(%rip), %eax
+ movl %eax, 8+game_iface_out(%rip)
+ call game_iface_update_out
+ call game_iface_clean_in
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size game_iface_init_load, .-game_iface_init_load
+ .globl game_iface
+ .type game_iface, @function
+game_iface:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ jmp .L4
+.L5:
+ call game_iface_update_out
+ call game_iface_update_score
+ call game_iface_clean_in
+ leaq game_iface_in(%rip), %rdx
+ leaq game_iface_score(%rip), %rsi
+ leaq game_iface_out(%rip), %rdi
+ call player_iface@PLT
+ call game_iface_act
+.L4:
+ movl 7984028+game_iface_out(%rip), %eax
+ cmpl $6, %eax
+ jne .L5
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size game_iface, .-game_iface
+ .type game_iface_init_score, @function
+game_iface_init_score:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl %edi, -4(%rbp)
+ movl -4(%rbp), %eax
+ movl %eax, game_iface_score(%rip)
+ movl $0, %edi
+ call time@PLT
+ movq %rax, tim_ini(%rip)
+ movl $1, 8+game_iface_score(%rip)
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size game_iface_init_score, .-game_iface_init_score
+ .type game_iface_init_cheated, @function
+game_iface_init_cheated:
+.LFB4:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl $4, 7984028+game_iface_out(%rip)
+ movl $4, game_iface_score(%rip)
+ movl $-1, 4+game_iface_score(%rip)
+ movl $-1, 8+game_iface_score(%rip)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE4:
+ .size game_iface_init_cheated, .-game_iface_init_cheated
+ .type game_iface_act, @function
+game_iface_act:
+.LFB5:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl 7984028+game_iface_out(%rip), %eax
+ cmpl $5, %eax
+ ja .L17
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L11(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L11(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L11:
+ .long .L10-.L11
+ .long .L12-.L11
+ .long .L13-.L11
+ .long .L14-.L11
+ .long .L15-.L11
+ .long .L16-.L11
+ .text
+.L10:
+ call game_iface_playing_act
+ jmp .L9
+.L15:
+ call game_iface_cheated_act
+ jmp .L9
+.L16:
+ call game_iface_xyzzy_act
+ jmp .L9
+.L14:
+ call game_iface_pause_act
+ jmp .L9
+.L12:
+ call game_iface_safe_act
+ jmp .L9
+.L13:
+ call game_iface_gameover_act
+ nop
+.L9:
+.L17:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE5:
+ .size game_iface_act, .-game_iface_act
+ .type game_iface_playing_act, @function
+game_iface_playing_act:
+.LFB6:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl game_iface_in(%rip), %eax
+ cmpl $9, %eax
+ ja .L26
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L21(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L21(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L21:
+ .long .L26-.L21
+ .long .L20-.L21
+ .long .L22-.L21
+ .long .L23-.L21
+ .long .L24-.L21
+ .long .L26-.L21
+ .long .L26-.L21
+ .long .L26-.L21
+ .long .L26-.L21
+ .long .L25-.L21
+ .text
+.L20:
+ call game_iface_act_game
+ jmp .L19
+.L22:
+ call game_iface_pause
+ jmp .L19
+.L24:
+ call game_iface_xyzzy_on
+ jmp .L19
+.L23:
+ leaq saved_path(%rip), %rdi
+ call save_game_file@PLT
+ jmp .L19
+.L25:
+ call game_iface_quit
+ nop
+.L19:
+.L26:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE6:
+ .size game_iface_playing_act, .-game_iface_playing_act
+ .type game_iface_xyzzy_act, @function
+game_iface_xyzzy_act:
+.LFB7:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ call xyzzy_init@PLT
+ movb $1, -1(%rbp)
+ jmp .L28
+.L37:
+ movl game_iface_in(%rip), %eax
+ cmpl $9, %eax
+ ja .L29
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L31(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L31(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L31:
+ .long .L29-.L31
+ .long .L30-.L31
+ .long .L29-.L31
+ .long .L32-.L31
+ .long .L29-.L31
+ .long .L33-.L31
+ .long .L34-.L31
+ .long .L35-.L31
+ .long .L29-.L31
+ .long .L36-.L31
+ .text
+.L30:
+ call game_iface_act_game
+ movb $0, -1(%rbp)
+ jmp .L28
+.L33:
+ call game_iface_xyzzy_off
+ movb $0, -1(%rbp)
+ jmp .L28
+.L34:
+ leaq game_iface_in(%rip), %rsi
+ leaq game_iface_out(%rip), %rdi
+ call xyzzy_lin@PLT
+ testl %eax, %eax
+ setne %al
+ movb %al, -1(%rbp)
+ call game_iface_act_game
+ jmp .L28
+.L35:
+ leaq game_iface_in(%rip), %rsi
+ leaq game_iface_out(%rip), %rdi
+ call xyzzy_p@PLT
+ testl %eax, %eax
+ setne %al
+ movb %al, -1(%rbp)
+ call game_iface_act_game
+ call game_iface_update_out
+ jmp .L28
+.L32:
+ leaq saved_path(%rip), %rdi
+ call save_game_file@PLT
+ movb $0, -1(%rbp)
+ jmp .L28
+.L36:
+ call game_iface_quit
+ movb $0, -1(%rbp)
+ jmp .L28
+.L29:
+ movb $0, -1(%rbp)
+ nop
+.L28:
+ cmpb $0, -1(%rbp)
+ jne .L37
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE7:
+ .size game_iface_xyzzy_act, .-game_iface_xyzzy_act
+ .type game_iface_cheated_act, @function
+game_iface_cheated_act:
+.LFB8:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl game_iface_in(%rip), %eax
+ cmpl $3, %eax
+ je .L40
+ cmpl $3, %eax
+ jg .L41
+ cmpl $1, %eax
+ je .L42
+ jmp .L45
+.L41:
+ cmpl $4, %eax
+ je .L43
+ cmpl $9, %eax
+ je .L44
+ jmp .L45
+.L42:
+ call game_iface_act_game
+ jmp .L39
+.L43:
+ call game_iface_xyzzy_on
+ jmp .L39
+.L40:
+ leaq saved_path(%rip), %rdi
+ call save_game_file@PLT
+ jmp .L39
+.L44:
+ call game_iface_quit
+ nop
+.L39:
+.L45:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE8:
+ .size game_iface_cheated_act, .-game_iface_cheated_act
+ .type game_iface_pause_act, @function
+game_iface_pause_act:
+.LFB9:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl game_iface_in(%rip), %eax
+ cmpl $3, %eax
+ je .L48
+ cmpl $3, %eax
+ jg .L49
+ cmpl $2, %eax
+ je .L50
+ jmp .L53
+.L49:
+ cmpl $4, %eax
+ je .L51
+ cmpl $9, %eax
+ je .L52
+ jmp .L53
+.L50:
+ call game_iface_unpause
+ jmp .L47
+.L51:
+ call game_iface_xyzzy_on
+ jmp .L47
+.L48:
+ leaq saved_path(%rip), %rdi
+ call save_game_file@PLT
+ jmp .L47
+.L52:
+ call game_iface_quit
+ nop
+.L47:
+.L53:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE9:
+ .size game_iface_pause_act, .-game_iface_pause_act
+ .type game_iface_safe_act, @function
+game_iface_safe_act:
+.LFB10:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl game_iface_in(%rip), %eax
+ cmpl $3, %eax
+ je .L56
+ cmpl $9, %eax
+ je .L57
+ jmp .L58
+.L56:
+ call game_iface_save_score
+ call game_iface_quit
+ jmp .L55
+.L57:
+ call game_iface_quit
+ nop
+.L55:
+.L58:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE10:
+ .size game_iface_safe_act, .-game_iface_safe_act
+ .type game_iface_gameover_act, @function
+game_iface_gameover_act:
+.LFB11:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl game_iface_in(%rip), %eax
+ cmpl $9, %eax
+ je .L61
+ jmp .L62
+.L61:
+ call game_iface_quit
+ nop
+.L62:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE11:
+ .size game_iface_gameover_act, .-game_iface_gameover_act
+ .type game_iface_act_game, @function
+game_iface_act_game:
+.LFB12:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl $0, -4(%rbp)
+ jmp .L64
+.L68:
+ movl $0, -8(%rbp)
+ jmp .L65
+.L67:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 4+game_iface_in(%rip), %rax
+ movl (%rdx,%rax), %eax
+ testl %eax, %eax
+ je .L66
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 4+game_iface_in(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movl %eax, %edi
+ call game_action@PLT
+ movl 8+game_iface_score(%rip), %eax
+ addl $1, %eax
+ movl %eax, 8+game_iface_score(%rip)
+.L66:
+ addl $1, -8(%rbp)
+.L65:
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jg .L67
+ addl $1, -4(%rbp)
+.L64:
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jg .L68
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE12:
+ .size game_iface_act_game, .-game_iface_act_game
+ .type game_iface_pause, @function
+game_iface_pause:
+.LFB13:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl $0, %edi
+ call time@PLT
+ movq %rax, -8(%rbp)
+ movq -8(%rbp), %rax
+ movl %eax, %edx
+ movq tim_ini(%rip), %rax
+ subl %eax, %edx
+ movl %edx, %eax
+ movl %eax, 4+game_iface_score(%rip)
+ movl $3, 7984028+game_iface_out(%rip)
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE13:
+ .size game_iface_pause, .-game_iface_pause
+ .type game_iface_unpause, @function
+game_iface_unpause:
+.LFB14:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl $0, %edi
+ call time@PLT
+ movq %rax, -8(%rbp)
+ movl 4+game_iface_score(%rip), %eax
+ cltq
+ movq -8(%rbp), %rdx
+ subq %rax, %rdx
+ movq %rdx, %rax
+ movq %rax, tim_ini(%rip)
+ movl $0, 7984028+game_iface_out(%rip)
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE14:
+ .size game_iface_unpause, .-game_iface_unpause
+ .type game_iface_xyzzy_on, @function
+game_iface_xyzzy_on:
+.LFB15:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl $5, 7984028+game_iface_out(%rip)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE15:
+ .size game_iface_xyzzy_on, .-game_iface_xyzzy_on
+ .type game_iface_xyzzy_off, @function
+game_iface_xyzzy_off:
+.LFB16:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl $4, 7984028+game_iface_out(%rip)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE16:
+ .size game_iface_xyzzy_off, .-game_iface_xyzzy_off
+ .type game_iface_save_score, @function
+game_iface_save_score:
+.LFB17:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl game_iface_score(%rip), %eax
+ cmpl $1, %eax
+ je .L75
+ cmpl $1, %eax
+ jg .L76
+ testl %eax, %eax
+ je .L77
+ jmp .L80
+.L76:
+ cmpl $2, %eax
+ je .L78
+ cmpl $4, %eax
+ je .L79
+ jmp .L80
+.L77:
+ leaq var_boards_beginner_path(%rip), %rdi
+ call save_game_file@PLT
+ leaq game_iface_score(%rip), %rdi
+ call save_score@PLT
+ jmp .L74
+.L75:
+ leaq var_boards_intermediate_path(%rip), %rdi
+ call save_game_file@PLT
+ leaq game_iface_score(%rip), %rdi
+ call save_score@PLT
+ jmp .L74
+.L78:
+ leaq var_boards_expert_path(%rip), %rdi
+ call save_game_file@PLT
+ leaq game_iface_score(%rip), %rdi
+ call save_score@PLT
+ jmp .L74
+.L79:
+ leaq var_boards_custom_path(%rip), %rdi
+ call save_game_file@PLT
+ nop
+.L74:
+.L80:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE17:
+ .size game_iface_save_score, .-game_iface_save_score
+ .type game_iface_quit, @function
+game_iface_quit:
+.LFB18:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl $6, 7984028+game_iface_out(%rip)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE18:
+ .size game_iface_quit, .-game_iface_quit
+ .type game_iface_update_out, @function
+game_iface_update_out:
+.LFB19:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl 7984020+game_board(%rip), %eax
+ movl %eax, 7984020+game_iface_out(%rip)
+ movl 7984024+game_board(%rip), %eax
+ movl %eax, 7984024+game_iface_out(%rip)
+ movl 7984028+game_board(%rip), %eax
+ cmpl $1, %eax
+ je .L84
+ cmpl $2, %eax
+ je .L85
+ jmp .L83
+.L84:
+ movl $1, 7984028+game_iface_out(%rip)
+ jmp .L83
+.L85:
+ movl $2, 7984028+game_iface_out(%rip)
+ nop
+.L83:
+ call game_iface_update_board
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE19:
+ .size game_iface_update_out, .-game_iface_update_out
+ .type game_iface_update_board, @function
+game_iface_update_board:
+.LFB20:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl $0, -4(%rbp)
+ jmp .L87
+.L90:
+ movl $0, -8(%rbp)
+ jmp .L88
+.L89:
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_iface_update_vis
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call game_iface_update_usr
+ addl $1, -8(%rbp)
+.L88:
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jg .L89
+ addl $1, -4(%rbp)
+.L87:
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jg .L90
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE20:
+ .size game_iface_update_board, .-game_iface_update_board
+ .type game_iface_update_vis, @function
+game_iface_update_vis:
+.LFB21:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl 7984028+game_iface_out(%rip), %eax
+ cmpl $5, %eax
+ ja .L92
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L94(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L94(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L94:
+ .long .L93-.L94
+ .long .L95-.L94
+ .long .L96-.L94
+ .long .L92-.L94
+ .long .L93-.L94
+ .long .L93-.L94
+ .text
+.L93:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $1, %eax
+ je .L98
+ cmpl $1, %eax
+ jg .L99
+ testl %eax, %eax
+ je .L100
+ jmp .L103
+.L99:
+ cmpl $2, %eax
+ je .L101
+ cmpl $3, %eax
+ je .L102
+ jmp .L103
+.L100:
+ movl $1, -4(%rbp)
+ jmp .L97
+.L98:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ addl $5, %eax
+ movl %eax, -4(%rbp)
+ jmp .L97
+.L101:
+ movl $14, -4(%rbp)
+ jmp .L97
+.L102:
+ movl $16, -4(%rbp)
+ nop
+.L97:
+ jmp .L103
+.L95:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $1, %eax
+ je .L105
+ cmpl $1, %eax
+ jg .L106
+ testl %eax, %eax
+ je .L107
+ jmp .L103
+.L106:
+ cmpl $2, %eax
+ je .L108
+ cmpl $3, %eax
+ je .L109
+ jmp .L103
+.L107:
+ movl $4, -4(%rbp)
+ jmp .L104
+.L105:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ addl $5, %eax
+ movl %eax, -4(%rbp)
+ jmp .L104
+.L108:
+ movl $14, -4(%rbp)
+ jmp .L104
+.L109:
+ movl $16, -4(%rbp)
+ nop
+.L104:
+ jmp .L103
+.L96:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ addl $1, %eax
+ cmpl $4, %eax
+ ja .L123
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L112(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L112(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L112:
+ .long .L111-.L112
+ .long .L113-.L112
+ .long .L114-.L112
+ .long .L115-.L112
+ .long .L116-.L112
+ .text
+.L111:
+ movl $0, -4(%rbp)
+ jmp .L110
+.L113:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $8, %eax
+ jle .L117
+ movl $2, -4(%rbp)
+ jmp .L110
+.L117:
+ movl $3, -4(%rbp)
+ jmp .L110
+.L114:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ addl $5, %eax
+ movl %eax, -4(%rbp)
+ jmp .L110
+.L115:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $8, %eax
+ jle .L119
+ movl $14, -4(%rbp)
+ jmp .L110
+.L119:
+ movl $15, -4(%rbp)
+ jmp .L110
+.L116:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ cmpl $8, %eax
+ jle .L121
+ movl $16, -4(%rbp)
+ jmp .L124
+.L121:
+ movl $17, -4(%rbp)
+.L124:
+ nop
+.L110:
+ jmp .L123
+.L92:
+ movl $1, -4(%rbp)
+ jmp .L103
+.L123:
+ nop
+.L103:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rcx
+ leaq 12+game_iface_out(%rip), %rax
+ movl -4(%rbp), %edx
+ movl %edx, (%rcx,%rax)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE21:
+ .size game_iface_update_vis, .-game_iface_update_vis
+ .type game_iface_update_usr, @function
+game_iface_update_usr:
+.LFB22:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %eax
+ addl $1, %eax
+ cmpl $4, %eax
+ ja .L126
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L128(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L128(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L128:
+ .long .L127-.L128
+ .long .L129-.L128
+ .long .L130-.L128
+ .long .L131-.L128
+ .long .L132-.L128
+ .text
+.L127:
+ movl $-1, -4(%rbp)
+ jmp .L126
+.L129:
+ movl $0, -4(%rbp)
+ jmp .L126
+.L130:
+ movl $1, -4(%rbp)
+ jmp .L126
+.L131:
+ movl $14, -4(%rbp)
+ jmp .L126
+.L132:
+ movl $16, -4(%rbp)
+ nop
+.L126:
+ movl -24(%rbp), %eax
+ cltq
+ movl -20(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rcx
+ leaq game_iface_out(%rip), %rax
+ movl -4(%rbp), %edx
+ movl %edx, (%rcx,%rax)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE22:
+ .size game_iface_update_usr, .-game_iface_update_usr
+ .type game_iface_update_score, @function
+game_iface_update_score:
+.LFB23:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl 7984028+game_iface_out(%rip), %eax
+ testl %eax, %eax
+ je .L135
+ testl %eax, %eax
+ js .L138
+ subl $4, %eax
+ cmpl $1, %eax
+ ja .L138
+ jmp .L137
+.L135:
+ movl $0, %edi
+ call time@PLT
+ movq %rax, -8(%rbp)
+ movq -8(%rbp), %rax
+ movl %eax, %edx
+ movq tim_ini(%rip), %rax
+ subl %eax, %edx
+ movl %edx, %eax
+ movl %eax, 4+game_iface_score(%rip)
+ jmp .L134
+.L137:
+ movl $4, game_iface_score(%rip)
+ movl $-1, 4+game_iface_score(%rip)
+ movl $-1, 8+game_iface_score(%rip)
+ nop
+.L134:
+.L138:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE23:
+ .size game_iface_update_score, .-game_iface_update_score
+ .type game_iface_clean_in, @function
+game_iface_clean_in:
+.LFB24:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl $0, -4(%rbp)
+ jmp .L140
+.L143:
+ movl $0, -8(%rbp)
+ jmp .L141
+.L142:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 4+game_iface_in(%rip), %rax
+ movl $0, (%rdx,%rax)
+ addl $1, -8(%rbp)
+.L141:
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jg .L142
+ addl $1, -4(%rbp)
+.L140:
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jg .L143
+ movl $0, game_iface_in(%rip)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE24:
+ .size game_iface_clean_in, .-game_iface_clean_in
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/menu/Makefile b/modules/menu/Makefile
index 981afeb..48ed965 100644
--- a/modules/menu/Makefile
+++ b/modules/menu/Makefile
@@ -4,16 +4,16 @@
# directories
-OBJ_DIR = $(MENU_DIR)/obj/
+TMP_DIR = $(MENU_DIR)/tmp/
# target: dependencies
# action
all:
- $(Q)cd $(OBJ_DIR) && $(MAKE) && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) && cd ..
clean:
- $(Q)cd $(OBJ_DIR) && $(MAKE) clean && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) clean && cd ..
################################################################################
######## End of file ###########################################################
diff --git a/modules/menu/obj/Makefile b/modules/menu/tmp/Makefile
index be8ede5..cdff0ea 100644
--- a/modules/menu/obj/Makefile
+++ b/modules/menu/tmp/Makefile
@@ -122,30 +122,45 @@ all: $(ALL)
menu_mod.o: $(_ALL)
$(Q)$(LD) -r $^ -o $@
- @echo "\tLD $@"
+ @echo " LD $@"
@echo ""
-parser.o: $(PARS_DEPS)
- $(Q)$(CC) $(CFLAGS) $(PARS_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-menu_iface.o: $(MENUI_DEPS)
- $(Q)$(CC) $(CFLAGS) $(MENUI_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-menu_clui.o: $(MENUCLUI_DEPS)
- $(Q)$(CC) $(CFLAGS) $(MENUCLUI_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-menu_tui.o: $(MENUTUI_DEPS)
- $(Q)$(CC) $(CFLAGS) $(MENUTUI_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-menu_gui.o: $(MENUGUI_DEPS)
- $(Q)$(CC) $(CFLAGS) $(MENUGUI_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
+parser.s: $(PARS_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(PARS_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+parser.o: parser.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+menu_iface.s: $(MENUI_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(MENUI_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+menu_iface.o: menu_iface.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+menu_clui.s: $(MENUCLUI_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(MENUCLUI_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+menu_clui.o: menu_clui.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+menu_tui.s: $(MENUTUI_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(MENUTUI_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+menu_tui.o: menu_tui.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+menu_gui.s: $(MENUGUI_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(MENUGUI_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+menu_gui.o: menu_gui.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
clean:
- $(Q)rm -f *.o
+ $(Q)rm -f *.o *.s
diff --git a/modules/menu/tmp/menu_clui.s b/modules/menu/tmp/menu_clui.s
new file mode 100644
index 0000000..0ccaf45
--- /dev/null
+++ b/modules/menu/tmp/menu_clui.s
@@ -0,0 +1,453 @@
+ .file "menu_clui.c"
+ .section .rodata
+ .align 8
+.LC0:
+ .string "Read 'Disclaimer of warranty'? (yes/NO): "
+.LC1:
+ .string " %c"
+.LC2:
+ .string " >yes"
+.LC3:
+ .string " >NO"
+.LC4:
+ .string "Read 'License'? (yes/NO): "
+ .align 8
+.LC5:
+ .string "New game or load game? (NEW/load): "
+.LC6:
+ .string " >load"
+.LC7:
+ .string " >NEW"
+ .text
+ .globl menu_clui
+ .type menu_clui, @function
+menu_clui:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1040, %rsp
+ movb $110, -1025(%rbp)
+ leaq .LC0(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movq stdin(%rip), %rdx
+ leaq -1024(%rbp), %rax
+ movl $1024, %esi
+ movq %rax, %rdi
+ call fgets@PLT
+ leaq -1025(%rbp), %rdx
+ leaq -1024(%rbp), %rax
+ leaq .LC1(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1025(%rbp), %eax
+ cmpb $121, %al
+ je .L2
+ movzbl -1025(%rbp), %eax
+ cmpb $89, %al
+ jne .L3
+.L2:
+ leaq .LC2(%rip), %rdi
+ call puts@PLT
+ movl $1, %edi
+ call print_share_file@PLT
+ jmp .L4
+.L3:
+ leaq .LC3(%rip), %rdi
+ call puts@PLT
+.L4:
+ movb $110, -1025(%rbp)
+ leaq .LC4(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movq stdin(%rip), %rdx
+ leaq -1024(%rbp), %rax
+ movl $1024, %esi
+ movq %rax, %rdi
+ call fgets@PLT
+ leaq -1025(%rbp), %rdx
+ leaq -1024(%rbp), %rax
+ leaq .LC1(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1025(%rbp), %eax
+ cmpb $121, %al
+ je .L5
+ movzbl -1025(%rbp), %eax
+ cmpb $89, %al
+ jne .L6
+.L5:
+ leaq .LC2(%rip), %rdi
+ call puts@PLT
+ movl $3, %edi
+ call print_share_file@PLT
+ jmp .L7
+.L6:
+ leaq .LC3(%rip), %rdi
+ call puts@PLT
+.L7:
+ movb $110, -1025(%rbp)
+ leaq .LC5(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movq stdin(%rip), %rdx
+ leaq -1024(%rbp), %rax
+ movl $1024, %esi
+ movq %rax, %rdi
+ call fgets@PLT
+ leaq -1025(%rbp), %rdx
+ leaq -1024(%rbp), %rax
+ leaq .LC1(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1025(%rbp), %eax
+ cmpb $108, %al
+ je .L8
+ movzbl -1025(%rbp), %eax
+ cmpb $76, %al
+ jne .L9
+.L8:
+ leaq .LC6(%rip), %rdi
+ call puts@PLT
+ call menu_clui_load
+ jmp .L10
+.L9:
+ leaq .LC7(%rip), %rdi
+ call puts@PLT
+ call menu_clui_rand
+.L10:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size menu_clui, .-menu_clui
+ .section .rodata
+ .align 8
+.LC8:
+ .string "Set seed for random generator? (yes/NO): "
+.LC9:
+ .string "Seed:"
+ .align 8
+.LC12:
+ .string "Level? (BEGINNER/intermediate/(expert)/custom): "
+.LC13:
+ .string " >intermediate"
+.LC14:
+ .string " >expert"
+.LC15:
+ .string " >custom"
+.LC16:
+ .string " >BEGINNER"
+ .text
+ .type menu_clui_rand, @function
+menu_clui_rand:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1072, %rsp
+ movl $1, start_mode(%rip)
+ movb $110, -1041(%rbp)
+ leaq .LC8(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movq stdin(%rip), %rdx
+ leaq -1040(%rbp), %rax
+ movl $1024, %esi
+ movq %rax, %rdi
+ call fgets@PLT
+ leaq -1041(%rbp), %rdx
+ leaq -1040(%rbp), %rax
+ leaq .LC1(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1041(%rbp), %eax
+ cmpb $121, %al
+ je .L12
+ movzbl -1041(%rbp), %eax
+ cmpb $89, %al
+ jne .L13
+.L12:
+ leaq .LC2(%rip), %rdi
+ call puts@PLT
+ movsd .LC10(%rip), %xmm0
+ movq .LC11(%rip), %rax
+ movl $0, %edx
+ leaq .LC9(%rip), %rsi
+ movapd %xmm0, %xmm1
+ movl $1, %edi
+ movq %rax, -1064(%rbp)
+ movsd -1064(%rbp), %xmm0
+ movl $2, %eax
+ call alx_getint@PLT
+ movl %eax, -4(%rbp)
+ movl -4(%rbp), %eax
+ movl %eax, %edi
+ call srand@PLT
+ jmp .L14
+.L13:
+ leaq .LC3(%rip), %rdi
+ call puts@PLT
+.L14:
+ movb $98, -1041(%rbp)
+ leaq .LC12(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movq stdin(%rip), %rdx
+ leaq -1040(%rbp), %rax
+ movl $1024, %esi
+ movq %rax, %rdi
+ call fgets@PLT
+ leaq -1041(%rbp), %rdx
+ leaq -1040(%rbp), %rax
+ leaq .LC1(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1041(%rbp), %eax
+ cmpb $105, %al
+ je .L15
+ movzbl -1041(%rbp), %eax
+ cmpb $73, %al
+ jne .L16
+.L15:
+ leaq .LC13(%rip), %rdi
+ call puts@PLT
+ movl $1, menu_iface_variables(%rip)
+ call menu_clui_start
+ jmp .L17
+.L16:
+ movzbl -1041(%rbp), %eax
+ cmpb $101, %al
+ je .L18
+ movzbl -1041(%rbp), %eax
+ cmpb $69, %al
+ jne .L19
+.L18:
+ leaq .LC14(%rip), %rdi
+ call puts@PLT
+ movl $3, menu_iface_variables(%rip)
+ call menu_clui_start
+ jmp .L17
+.L19:
+ movzbl -1041(%rbp), %eax
+ cmpb $99, %al
+ je .L20
+ movzbl -1041(%rbp), %eax
+ cmpb $67, %al
+ jne .L21
+.L20:
+ leaq .LC15(%rip), %rdi
+ call puts@PLT
+ movl $4, menu_iface_variables(%rip)
+ call menu_clui_custom
+ jmp .L17
+.L21:
+ leaq .LC16(%rip), %rdi
+ call puts@PLT
+ movl $0, menu_iface_variables(%rip)
+ call menu_clui_start
+.L17:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size menu_clui_rand, .-menu_clui_rand
+ .section .rodata
+.LC17:
+ .string "Rows:"
+.LC20:
+ .string "Columns:"
+.LC22:
+ .string "Proportion:"
+ .text
+ .type menu_clui_custom, @function
+menu_clui_custom:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl $1, start_mode(%rip)
+ movl 4+menu_iface_variables(%rip), %eax
+ movslq %eax, %rcx
+ movsd .LC18(%rip), %xmm0
+ movq .LC19(%rip), %rax
+ movl $0, %edx
+ leaq .LC17(%rip), %rsi
+ movapd %xmm0, %xmm1
+ movq %rcx, %rdi
+ movq %rax, -8(%rbp)
+ movsd -8(%rbp), %xmm0
+ movl $2, %eax
+ call alx_getint@PLT
+ movl %eax, 4+menu_iface_variables(%rip)
+ movl 8+menu_iface_variables(%rip), %eax
+ movslq %eax, %rcx
+ movsd .LC21(%rip), %xmm0
+ movq .LC19(%rip), %rax
+ movl $0, %edx
+ leaq .LC20(%rip), %rsi
+ movapd %xmm0, %xmm1
+ movq %rcx, %rdi
+ movq %rax, -8(%rbp)
+ movsd -8(%rbp), %xmm0
+ movl $2, %eax
+ call alx_getint@PLT
+ movl %eax, 8+menu_iface_variables(%rip)
+ movsd 16+menu_iface_variables(%rip), %xmm0
+ movl $0, %esi
+ leaq .LC22(%rip), %rdi
+ movsd .LC23(%rip), %xmm2
+ movapd %xmm0, %xmm1
+ pxor %xmm0, %xmm0
+ movl $3, %eax
+ call alx_getdbl@PLT
+ movq %xmm0, %rax
+ movq %rax, 16+menu_iface_variables(%rip)
+ call menu_clui_start
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size menu_clui_custom, .-menu_clui_custom
+ .type menu_clui_load, @function
+menu_clui_load:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl $2, start_mode(%rip)
+ call menu_clui_start
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size menu_clui_load, .-menu_clui_load
+ .section .rodata
+.LC25:
+ .string " >>START:"
+ .align 8
+.LC26:
+ .string "Play again? (MENU/play/exit): "
+.LC27:
+ .string " >play"
+.LC28:
+ .string " >exit!"
+.LC29:
+ .string " >MENU"
+ .text
+ .type menu_clui_start, @function
+menu_clui_start:
+.LFB4:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1040, %rsp
+ leaq .LC25(%rip), %rdi
+ call puts@PLT
+ call start_switch@PLT
+ movb $109, -1025(%rbp)
+ leaq .LC26(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movq stdin(%rip), %rdx
+ leaq -1024(%rbp), %rax
+ movl $1024, %esi
+ movq %rax, %rdi
+ call fgets@PLT
+ leaq -1025(%rbp), %rdx
+ leaq -1024(%rbp), %rax
+ leaq .LC1(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1025(%rbp), %eax
+ cmpb $112, %al
+ je .L25
+ movzbl -1025(%rbp), %eax
+ cmpb $80, %al
+ jne .L26
+.L25:
+ leaq .LC27(%rip), %rdi
+ call puts@PLT
+ call menu_clui_start
+ jmp .L27
+.L26:
+ movzbl -1025(%rbp), %eax
+ cmpb $101, %al
+ je .L28
+ movzbl -1025(%rbp), %eax
+ cmpb $69, %al
+ jne .L29
+.L28:
+ leaq .LC28(%rip), %rdi
+ call puts@PLT
+ jmp .L27
+.L29:
+ leaq .LC29(%rip), %rdi
+ call puts@PLT
+ call menu_clui
+.L27:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE4:
+ .size menu_clui_start, .-menu_clui_start
+ .section .rodata
+ .align 8
+.LC10:
+ .long 0
+ .long 2146435072
+ .align 8
+.LC11:
+ .long 0
+ .long -1048576
+ .align 8
+.LC18:
+ .long 0
+ .long 1079558144
+ .align 8
+.LC19:
+ .long 0
+ .long 1073741824
+ .align 8
+.LC21:
+ .long 0
+ .long 1077542912
+ .align 8
+.LC23:
+ .long 0
+ .long 1072693248
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/menu/tmp/menu_gui.s b/modules/menu/tmp/menu_gui.s
new file mode 100644
index 0000000..2583c37
--- /dev/null
+++ b/modules/menu/tmp/menu_gui.s
@@ -0,0 +1,2823 @@
+ .file "menu_gui.c"
+ .comm window_gui,8,8
+ .local box
+ .comm box,8,8
+ .section .rodata
+.LC0:
+ .string "delete-event"
+.LC1:
+ .string "destroy"
+.LC2:
+ .string "4~b1"
+.LC3:
+ .string "mine-sweeper %s"
+ .text
+ .globl menu_gui_init
+ .type menu_gui_init, @function
+menu_gui_init:
+.LFB206:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $80, %rsp
+ movl $0, %edi
+ call gtk_window_new@PLT
+ movq %rax, window_gui(%rip)
+ movq window_gui(%rip), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ movl $0, %ecx
+ leaq delete_window(%rip), %rdx
+ leaq .LC0(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq window_gui(%rip), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ movl $0, %ecx
+ leaq destroy_window(%rip), %rdx
+ leaq .LC1(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ leaq -80(%rbp), %rax
+ leaq .LC2(%rip), %rcx
+ leaq .LC3(%rip), %rdx
+ movl $80, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ call gtk_window_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdx
+ leaq -80(%rbp), %rax
+ movq %rax, %rsi
+ movq %rdx, %rdi
+ call gtk_window_set_title@PLT
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $20, %esi
+ movq %rax, %rdi
+ call gtk_container_set_border_width@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE206:
+ .size menu_gui_init, .-menu_gui_init
+ .globl menu_gui_cleanup
+ .type menu_gui_cleanup, @function
+menu_gui_cleanup:
+.LFB207:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_destroy@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE207:
+ .size menu_gui_cleanup, .-menu_gui_cleanup
+ .section .rodata
+.LC4:
+ .string "clicked"
+ .text
+ .globl menu_gui
+ .type menu_gui, @function
+menu_gui:
+.LFB208:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $552, %rsp
+ .cfi_offset 3, -24
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movabsq $7954884302878630221, %rcx
+ movq %rcx, (%rax)
+ movw $117, 8(%rax)
+ leaq -560(%rbp), %rax
+ addq $112, %rax
+ movabsq $7957652872868487003, %rcx
+ movq %rcx, (%rax)
+ movl $1970170228, 8(%rax)
+ movw $101, 12(%rax)
+ leaq -560(%rbp), %rax
+ addq $216, %rax
+ movabsq $8316253092709556059, %rcx
+ movq %rcx, (%rax)
+ movabsq $2338042677152541795, %rcx
+ movq %rcx, 8(%rax)
+ movabsq $7021800531960030831, %rbx
+ movq %rbx, 16(%rax)
+ movl $7959662, 24(%rax)
+ leaq -560(%rbp), %rax
+ addq $320, %rax
+ movabsq $8243087190950895451, %rcx
+ movq %rcx, (%rax)
+ movabsq $7142819434248303469, %rbx
+ movq %rbx, 8(%rax)
+ movabsq $7957695015292268143, %rcx
+ movq %rcx, 16(%rax)
+ movw $115, 24(%rax)
+ leaq -560(%rbp), %rax
+ addq $8, %rax
+ movabsq $7599900376492433243, %rbx
+ movq %rbx, (%rax)
+ movabsq $7021788497383006324, %rsi
+ movq %rsi, 8(%rax)
+ movw $109, 16(%rax)
+ movl $1, -368(%rbp)
+ movl $2, -264(%rbp)
+ movl $3, -160(%rbp)
+ movl $0, -472(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -360(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -256(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -152(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -464(%rbp)
+ movb $1, -17(%rbp)
+ jmp .L4
+.L10:
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box(%rip)
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -144(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -48(%rbp)
+ leaq -560(%rbp), %rax
+ addq $112, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -456(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -40(%rbp)
+ leaq -560(%rbp), %rax
+ addq $216, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -352(%rbp)
+ leaq -560(%rbp), %rax
+ addq $320, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -248(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -32(%rbp)
+ leaq -560(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -560(%rbp)
+ movq -456(%rbp), %rax
+ leaq -560(%rbp), %rdx
+ addq $104, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -352(%rbp), %rax
+ leaq -560(%rbp), %rdx
+ addq $208, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -248(%rbp), %rax
+ leaq -560(%rbp), %rdx
+ addq $312, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -560(%rbp), %rax
+ leaq -560(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq box(%rip), %rbx
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_container_add@PLT
+ movq -144(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -48(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -456(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -40(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -352(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -248(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -32(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -560(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ movl $-1, -24(%rbp)
+ call gtk_main@PLT
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_destroy@PLT
+ movl -24(%rbp), %eax
+ cmpl $1, %eax
+ je .L5
+ cmpl $1, %eax
+ jg .L6
+ testl %eax, %eax
+ je .L7
+ jmp .L4
+.L6:
+ cmpl $2, %eax
+ je .L8
+ cmpl $3, %eax
+ je .L9
+ jmp .L4
+.L7:
+ movb $0, -17(%rbp)
+ jmp .L4
+.L5:
+ call menu_gui_continue
+ jmp .L4
+.L8:
+ call menu_gui_disclaim
+ jmp .L4
+.L9:
+ call menu_gui_license
+ nop
+.L4:
+ cmpb $0, -17(%rbp)
+ jne .L10
+ nop
+ addq $552, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE208:
+ .size menu_gui, .-menu_gui
+ .type delete_window, @function
+delete_window:
+.LFB209:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ call gtk_main_quit@PLT
+ movl $0, %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE209:
+ .size delete_window, .-delete_window
+ .type destroy_window, @function
+destroy_window:
+.LFB210:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movl $0, %edi
+ call exit@PLT
+ .cfi_endproc
+.LFE210:
+ .size destroy_window, .-destroy_window
+ .type callback_button, @function
+callback_button:
+.LFB211:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movq -32(%rbp), %rax
+ movq %rax, -8(%rbp)
+ movq -8(%rbp), %rax
+ movq 96(%rax), %rax
+ movq -8(%rbp), %rdx
+ movl 88(%rdx), %edx
+ movl %edx, (%rax)
+ call gtk_main_quit@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE211:
+ .size callback_button, .-callback_button
+ .section .rodata
+.LC5:
+ .string "Error %i"
+ .text
+ .type callback_entry_dbl, @function
+callback_entry_dbl:
+.LFB212:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $152, %rsp
+ .cfi_offset 3, -24
+ movq %rdi, -136(%rbp)
+ movq %rsi, -144(%rbp)
+ movq -144(%rbp), %rax
+ movq %rax, -24(%rbp)
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdi
+ call gtk_entry_get_text@PLT
+ movq %rax, -32(%rbp)
+ movq -24(%rbp), %rax
+ movsd 120(%rax), %xmm1
+ movq -24(%rbp), %rax
+ movsd 112(%rax), %xmm0
+ movq -24(%rbp), %rax
+ movq 104(%rax), %rdx
+ movq -24(%rbp), %rax
+ movq 96(%rax), %rax
+ movq -32(%rbp), %rcx
+ movq %rcx, %rsi
+ movapd %xmm1, %xmm2
+ movapd %xmm0, %xmm1
+ movq %rdx, -152(%rbp)
+ movsd -152(%rbp), %xmm0
+ movq %rax, %rdi
+ call alx_sscan_dbl@PLT
+ movl %eax, -36(%rbp)
+ cmpl $0, -36(%rbp)
+ je .L16
+ movl -36(%rbp), %edx
+ leaq -128(%rbp), %rax
+ movl %edx, %ecx
+ leaq .LC5(%rip), %rdx
+ movl $80, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdx
+ leaq -128(%rbp), %rax
+ movq %rax, %rsi
+ movq %rdx, %rdi
+ call gtk_entry_set_text@PLT
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movzwl 106(%rax), %eax
+ movzwl %ax, %ebx
+ call gtk_editable_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl %ebx, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call gtk_editable_select_region@PLT
+.L16:
+ call gtk_main_quit@PLT
+ nop
+ addq $152, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE212:
+ .size callback_entry_dbl, .-callback_entry_dbl
+ .type callback_entry_int, @function
+callback_entry_int:
+.LFB213:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $152, %rsp
+ .cfi_offset 3, -24
+ movq %rdi, -136(%rbp)
+ movq %rsi, -144(%rbp)
+ movq -144(%rbp), %rax
+ movq %rax, -24(%rbp)
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdi
+ call gtk_entry_get_text@PLT
+ movq %rax, -32(%rbp)
+ movq -24(%rbp), %rax
+ movsd 120(%rax), %xmm0
+ movq -24(%rbp), %rax
+ movq 112(%rax), %rsi
+ movq -24(%rbp), %rax
+ movq 104(%rax), %rcx
+ movq -32(%rbp), %rdx
+ leaq -48(%rbp), %rax
+ movapd %xmm0, %xmm1
+ movq %rcx, -152(%rbp)
+ movsd -152(%rbp), %xmm0
+ movq %rax, %rdi
+ call alx_sscan_int@PLT
+ movl %eax, -36(%rbp)
+ cmpl $0, -36(%rbp)
+ je .L18
+ movl -36(%rbp), %edx
+ leaq -128(%rbp), %rax
+ movl %edx, %ecx
+ leaq .LC5(%rip), %rdx
+ movl $80, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdx
+ leaq -128(%rbp), %rax
+ movq %rax, %rsi
+ movq %rdx, %rdi
+ call gtk_entry_set_text@PLT
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movzwl 106(%rax), %eax
+ movzwl %ax, %ebx
+ call gtk_editable_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl %ebx, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call gtk_editable_select_region@PLT
+ jmp .L19
+.L18:
+ movq -24(%rbp), %rax
+ movq 96(%rax), %rax
+ movq -48(%rbp), %rdx
+ movl %edx, (%rax)
+.L19:
+ call gtk_main_quit@PLT
+ nop
+ addq $152, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE213:
+ .size callback_entry_int, .-callback_entry_int
+ .type callback_entry_fname, @function
+callback_entry_fname:
+.LFB214:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $136, %rsp
+ .cfi_offset 3, -24
+ movq %rdi, -136(%rbp)
+ movq %rsi, -144(%rbp)
+ movq -144(%rbp), %rax
+ movq %rax, -24(%rbp)
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdi
+ call gtk_entry_get_text@PLT
+ movq %rax, -32(%rbp)
+ movq -24(%rbp), %rax
+ movq 104(%rax), %rsi
+ movq -24(%rbp), %rax
+ movq 96(%rax), %rax
+ movq -32(%rbp), %rdx
+ movq %rdx, %rcx
+ movl $1, %edx
+ movq %rax, %rdi
+ call alx_sscan_fname@PLT
+ movl %eax, -36(%rbp)
+ cmpl $0, -36(%rbp)
+ je .L21
+ movl -36(%rbp), %edx
+ leaq -128(%rbp), %rax
+ movl %edx, %ecx
+ leaq .LC5(%rip), %rdx
+ movl $80, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdx
+ leaq -128(%rbp), %rax
+ movq %rax, %rsi
+ movq %rdx, %rdi
+ call gtk_entry_set_text@PLT
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movzwl 106(%rax), %eax
+ movzwl %ax, %ebx
+ call gtk_editable_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl %ebx, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call gtk_editable_select_region@PLT
+.L21:
+ call gtk_main_quit@PLT
+ nop
+ addq $136, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE214:
+ .size callback_entry_fname, .-callback_entry_fname
+ .type menu_gui_disclaim, @function
+menu_gui_disclaim:
+.LFB215:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $1048824, %rsp
+ .cfi_offset 3, -24
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movabsq $7883939740841634116, %rcx
+ movq %rcx, (%rax)
+ movabsq $7023117768230728293, %rcx
+ movq %rcx, 8(%rax)
+ movl $1851880050, 16(%rax)
+ movw $31092, 20(%rax)
+ movb $0, 22(%rax)
+ leaq -1048832(%rbp), %rax
+ movl $1, %edx
+ movl $1048576, %esi
+ movq %rax, %rdi
+ call snprint_share_file@PLT
+ leaq -256(%rbp), %rax
+ addq $8, %rax
+ movabsq $7161077589265637211, %rcx
+ movq %rcx, (%rax)
+ movw $107, 8(%rax)
+ movl $0, -168(%rbp)
+ leaq -28(%rbp), %rax
+ movq %rax, -160(%rbp)
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box(%rip)
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -144(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -48(%rbp)
+ leaq -1048832(%rbp), %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -24(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -40(%rbp)
+ leaq -256(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -256(%rbp)
+ movq -256(%rbp), %rax
+ leaq -256(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq box(%rip), %rbx
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_container_add@PLT
+ movq -144(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -48(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdi
+ movq -24(%rbp), %rax
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rax, %rsi
+ call gtk_box_pack_start@PLT
+ movq -40(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -256(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ call gtk_main@PLT
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_destroy@PLT
+ nop
+ addq $1048824, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE215:
+ .size menu_gui_disclaim, .-menu_gui_disclaim
+ .type menu_gui_license, @function
+menu_gui_license:
+.LFB216:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $1048824, %rsp
+ .cfi_offset 3, -24
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movabsq $7953674097042548052, %rcx
+ movq %rcx, (%rax)
+ movabsq $8388346206432206948, %rcx
+ movq %rcx, 8(%rax)
+ movl $1936617321, 16(%rax)
+ movb $0, 20(%rax)
+ leaq -1048832(%rbp), %rax
+ movl $3, %edx
+ movl $1048576, %esi
+ movq %rax, %rdi
+ call snprint_share_file@PLT
+ leaq -256(%rbp), %rax
+ addq $8, %rax
+ movabsq $7161077589265637211, %rcx
+ movq %rcx, (%rax)
+ movw $107, 8(%rax)
+ movl $0, -168(%rbp)
+ leaq -28(%rbp), %rax
+ movq %rax, -160(%rbp)
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box(%rip)
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -144(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -48(%rbp)
+ leaq -1048832(%rbp), %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -24(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -40(%rbp)
+ leaq -256(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -256(%rbp)
+ movq -256(%rbp), %rax
+ leaq -256(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq box(%rip), %rbx
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_container_add@PLT
+ movq -144(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -48(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdi
+ movq -24(%rbp), %rax
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rax, %rsi
+ call gtk_box_pack_start@PLT
+ movq -40(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -256(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ call gtk_main@PLT
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_destroy@PLT
+ nop
+ addq $1048824, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE216:
+ .size menu_gui_license, .-menu_gui_license
+ .type menu_gui_hiscores, @function
+menu_gui_hiscores:
+.LFB217:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $1048824, %rsp
+ .cfi_offset 3, -24
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movabsq $7310027618099685704, %rcx
+ movq %rcx, (%rax)
+ movw $115, 8(%rax)
+ leaq -1048832(%rbp), %rax
+ movl $1048576, %esi
+ movq %rax, %rdi
+ call snprint_scores@PLT
+ leaq -256(%rbp), %rax
+ addq $8, %rax
+ movabsq $7161077589265637211, %rcx
+ movq %rcx, (%rax)
+ movw $107, 8(%rax)
+ movl $0, -168(%rbp)
+ leaq -28(%rbp), %rax
+ movq %rax, -160(%rbp)
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box(%rip)
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -144(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -48(%rbp)
+ leaq -1048832(%rbp), %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -24(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -40(%rbp)
+ leaq -256(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -256(%rbp)
+ movq -256(%rbp), %rax
+ leaq -256(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq box(%rip), %rbx
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_container_add@PLT
+ movq -144(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -48(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdi
+ movq -24(%rbp), %rax
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rax, %rsi
+ call gtk_box_pack_start@PLT
+ movq -40(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -256(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ call gtk_main@PLT
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_destroy@PLT
+ nop
+ addq $1048824, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE217:
+ .size menu_gui_hiscores, .-menu_gui_hiscores
+ .section .rodata
+.LC6:
+ .string "Change file name (File: \"%s\")"
+.LC7:
+ .string "activate"
+ .text
+ .type menu_gui_continue, @function
+menu_gui_continue:
+.LFB218:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $888, %rsp
+ .cfi_offset 3, -24
+ leaq -160(%rbp), %rax
+ addq $8, %rax
+ movabsq $7954884302727897415, %rcx
+ movq %rcx, (%rax)
+ movw $117, 8(%rax)
+ leaq -784(%rbp), %rax
+ addq $112, %rax
+ movabsq $7022329117445021531, %rcx
+ movq %rcx, (%rax)
+ movw $29810, 8(%rax)
+ movb $0, 10(%rax)
+ leaq -784(%rbp), %rax
+ addq $216, %rax
+ movabsq $7810740527211634523, %rcx
+ movq %rcx, (%rax)
+ movabsq $31632318715421541, %rcx
+ movq %rcx, 8(%rax)
+ leaq -784(%rbp), %rax
+ addq $320, %rax
+ movabsq $7018933825538580315, %rbx
+ movq %rbx, (%rax)
+ movabsq $7378700918254298990, %rcx
+ movq %rcx, 8(%rax)
+ movl $1819632489, 16(%rax)
+ movw $31092, 20(%rax)
+ movb $0, 22(%rax)
+ leaq -784(%rbp), %rax
+ addq $424, %rax
+ movabsq $2335477185608179547, %rbx
+ movq %rbx, (%rax)
+ movl $1919902579, 8(%rax)
+ movw $29541, 12(%rax)
+ movb $0, 14(%rax)
+ leaq -784(%rbp), %rax
+ addq $528, %rax
+ movabsq $6216449766448258907, %rcx
+ movq %rcx, (%rax)
+ movw $19525, 8(%rax)
+ movb $0, 10(%rax)
+ leaq -784(%rbp), %rax
+ addq $8, %rax
+ movabsq $7161077589265637211, %rbx
+ movq %rbx, (%rax)
+ movw $107, 8(%rax)
+ movl $1, -592(%rbp)
+ movl $2, -488(%rbp)
+ movl $3, -384(%rbp)
+ movl $4, -280(%rbp)
+ movl $5, -176(%rbp)
+ movl $0, -696(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -584(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -480(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -376(%rbp)
+ leaq saved_path(%rip), %rax
+ movq %rax, -800(%rbp)
+ leaq saved_name(%rip), %rax
+ movq %rax, -792(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -272(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -168(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -688(%rbp)
+ movb $1, -17(%rbp)
+ jmp .L26
+.L34:
+ leaq -896(%rbp), %rax
+ addq $16, %rax
+ leaq saved_name(%rip), %rcx
+ leaq .LC6(%rip), %rdx
+ movl $80, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box(%rip)
+ leaq -160(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -160(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -64(%rbp)
+ leaq -784(%rbp), %rax
+ addq $112, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -680(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -56(%rbp)
+ leaq -784(%rbp), %rax
+ addq $216, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -576(%rbp)
+ leaq -784(%rbp), %rax
+ addq $320, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -472(%rbp)
+ leaq -896(%rbp), %rax
+ addq $16, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -888(%rbp)
+ call gtk_entry_new@PLT
+ movq %rax, -896(%rbp)
+ leaq -784(%rbp), %rax
+ addq $424, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -368(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -48(%rbp)
+ leaq -784(%rbp), %rax
+ addq $528, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -264(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -40(%rbp)
+ leaq -784(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -784(%rbp)
+ movq -680(%rbp), %rax
+ leaq -784(%rbp), %rdx
+ addq $104, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -576(%rbp), %rax
+ leaq -784(%rbp), %rdx
+ addq $208, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -472(%rbp), %rax
+ leaq -784(%rbp), %rdx
+ addq $312, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -896(%rbp), %rax
+ leaq -896(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_entry_fname(%rip), %rdx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -368(%rbp), %rax
+ leaq -784(%rbp), %rdx
+ addq $416, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -264(%rbp), %rax
+ leaq -784(%rbp), %rdx
+ addq $520, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -784(%rbp), %rax
+ leaq -784(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq box(%rip), %rbx
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_container_add@PLT
+ movq -160(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -64(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -680(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -56(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -576(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -472(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -888(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -896(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -368(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -48(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -264(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -40(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -784(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ movl $-1, -24(%rbp)
+ call gtk_main@PLT
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_destroy@PLT
+ movl -24(%rbp), %eax
+ cmpl $5, %eax
+ ja .L26
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L28(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L28(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L28:
+ .long .L27-.L28
+ .long .L29-.L28
+ .long .L30-.L28
+ .long .L31-.L28
+ .long .L32-.L28
+ .long .L33-.L28
+ .text
+.L27:
+ movb $0, -17(%rbp)
+ jmp .L26
+.L29:
+ call start_switch@PLT
+ jmp .L26
+.L30:
+ call menu_gui_select
+ jmp .L26
+.L31:
+ call menu_gui_level
+ jmp .L26
+.L32:
+ call menu_gui_hiscores
+ jmp .L26
+.L33:
+ call menu_gui_devel
+ nop
+.L26:
+ cmpb $0, -17(%rbp)
+ jne .L34
+ nop
+ addq $888, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE218:
+ .size menu_gui_continue, .-menu_gui_continue
+ .section .rodata
+.LC8:
+ .string "[_2] Load map (File: \"%s\")"
+ .text
+ .type menu_gui_select, @function
+menu_gui_select:
+.LFB219:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $456, %rsp
+ .cfi_offset 3, -24
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movabsq $7863412919641072979, %rcx
+ movq %rcx, (%rax)
+ movw $28769, 8(%rax)
+ movb $0, 10(%rax)
+ leaq -464(%rbp), %rax
+ addq $112, %rax
+ movabsq $8603368564070637403, %rcx
+ movq %rcx, (%rax)
+ movl $1885433120, 8(%rax)
+ movb $0, 12(%rax)
+ leaq -464(%rbp), %rax
+ addq $216, %rax
+ leaq saved_name(%rip), %rcx
+ leaq .LC8(%rip), %rdx
+ movl $80, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq -464(%rbp), %rax
+ addq $8, %rax
+ movabsq $7161077589265637211, %rcx
+ movq %rcx, (%rax)
+ movw $107, 8(%rax)
+ movl $1, -272(%rbp)
+ movl $2, -168(%rbp)
+ movl $0, -376(%rbp)
+ leaq -20(%rbp), %rax
+ movq %rax, -264(%rbp)
+ leaq -20(%rbp), %rax
+ movq %rax, -160(%rbp)
+ leaq -20(%rbp), %rax
+ movq %rax, -368(%rbp)
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box(%rip)
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -144(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -48(%rbp)
+ leaq -464(%rbp), %rax
+ addq $112, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -360(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -40(%rbp)
+ leaq -464(%rbp), %rax
+ addq $216, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -256(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -32(%rbp)
+ leaq -464(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -464(%rbp)
+ movq -360(%rbp), %rax
+ leaq -464(%rbp), %rdx
+ addq $104, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -256(%rbp), %rax
+ leaq -464(%rbp), %rdx
+ addq $208, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -464(%rbp), %rax
+ leaq -464(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq box(%rip), %rbx
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_container_add@PLT
+ movq -144(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -48(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -360(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -40(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -256(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -32(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -464(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ movl $-1, -20(%rbp)
+ call gtk_main@PLT
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_destroy@PLT
+ movl -20(%rbp), %eax
+ cmpl $1, %eax
+ je .L37
+ cmpl $2, %eax
+ je .L38
+ testl %eax, %eax
+ jmp .L36
+.L37:
+ movl $1, start_mode(%rip)
+ jmp .L36
+.L38:
+ movl $2, start_mode(%rip)
+ nop
+.L36:
+ nop
+ addq $456, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE219:
+ .size menu_gui_select, .-menu_gui_select
+ .type menu_gui_level, @function
+menu_gui_level:
+.LFB220:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $664, %rsp
+ .cfi_offset 3, -24
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movabsq $7791355325603145043, %rcx
+ movq %rcx, (%rax)
+ movl $1818588773, 8(%rax)
+ movb $0, 12(%rax)
+ leaq -672(%rbp), %rax
+ addq $112, %rax
+ movabsq $7450433865324257115, %rcx
+ movq %rcx, (%rax)
+ movl $1701736041, 8(%rax)
+ movw $114, 12(%rax)
+ leaq -672(%rbp), %rax
+ addq $216, %rax
+ movabsq $8389723559189176155, %rcx
+ movq %rcx, (%rax)
+ movabsq $8386099861059891813, %rcx
+ movq %rcx, 8(%rax)
+ movw $101, 16(%rax)
+ leaq -672(%rbp), %rax
+ addq $320, %rax
+ movabsq $8104303534758125403, %rbx
+ movq %rbx, (%rax)
+ movl $7631461, 8(%rax)
+ leaq -672(%rbp), %rax
+ addq $424, %rax
+ movabsq $8319629692918587227, %rcx
+ movq %rcx, (%rax)
+ movl $7171956, 8(%rax)
+ leaq -672(%rbp), %rax
+ addq $8, %rax
+ movabsq $7161077589265637211, %rbx
+ movq %rbx, (%rax)
+ movw $107, 8(%rax)
+ movl $1, -480(%rbp)
+ movl $2, -376(%rbp)
+ movl $3, -272(%rbp)
+ movl $4, -168(%rbp)
+ movl $0, -584(%rbp)
+ leaq -20(%rbp), %rax
+ movq %rax, -472(%rbp)
+ leaq -20(%rbp), %rax
+ movq %rax, -368(%rbp)
+ leaq -20(%rbp), %rax
+ movq %rax, -264(%rbp)
+ leaq -20(%rbp), %rax
+ movq %rax, -160(%rbp)
+ leaq -20(%rbp), %rax
+ movq %rax, -576(%rbp)
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box(%rip)
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -144(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -48(%rbp)
+ leaq -672(%rbp), %rax
+ addq $112, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -568(%rbp)
+ leaq -672(%rbp), %rax
+ addq $216, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -464(%rbp)
+ leaq -672(%rbp), %rax
+ addq $320, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -360(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -40(%rbp)
+ leaq -672(%rbp), %rax
+ addq $424, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -256(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -32(%rbp)
+ leaq -672(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -672(%rbp)
+ movq -568(%rbp), %rax
+ leaq -672(%rbp), %rdx
+ addq $104, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -464(%rbp), %rax
+ leaq -672(%rbp), %rdx
+ addq $208, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -360(%rbp), %rax
+ leaq -672(%rbp), %rdx
+ addq $312, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -256(%rbp), %rax
+ leaq -672(%rbp), %rdx
+ addq $416, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -672(%rbp), %rax
+ leaq -672(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq box(%rip), %rbx
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_container_add@PLT
+ movq -144(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -48(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -568(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -464(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -360(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -40(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -256(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -32(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -672(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ movl $-1, -20(%rbp)
+ call gtk_main@PLT
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_destroy@PLT
+ movl -20(%rbp), %eax
+ cmpl $2, %eax
+ je .L42
+ cmpl $2, %eax
+ jg .L43
+ cmpl $1, %eax
+ je .L44
+ jmp .L47
+.L43:
+ cmpl $3, %eax
+ je .L45
+ cmpl $4, %eax
+ je .L46
+ jmp .L47
+.L44:
+ movl $0, menu_iface_variables(%rip)
+ jmp .L41
+.L42:
+ movl $1, menu_iface_variables(%rip)
+ jmp .L41
+.L45:
+ movl $2, menu_iface_variables(%rip)
+ jmp .L41
+.L46:
+ movl $4, menu_iface_variables(%rip)
+ call menu_gui_custom
+ nop
+.L41:
+.L47:
+ nop
+ addq $664, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE220:
+ .size menu_gui_level, .-menu_gui_level
+ .section .rodata
+ .align 8
+.LC14:
+ .string "Change rows: rows\t\t(%i)\nIntroduce an integer number [%i U %i]"
+ .align 8
+.LC15:
+ .string "Change columns: cols\t(%i)\nIntroduce an integer number [%i U %i]"
+ .align 8
+.LC16:
+ .string "Change proportion of mines: p\t(%lf)\nIntroduce a Real number [%i U %i]"
+ .text
+ .type menu_gui_custom, @function
+menu_gui_custom:
+.LFB221:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $648, %rsp
+ .cfi_offset 3, -24
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movl $1953723715, (%rax)
+ movw $28015, 4(%rax)
+ movb $0, 6(%rax)
+ leaq -256(%rbp), %rax
+ addq $8, %rax
+ movabsq $7161077589265637211, %rcx
+ movq %rcx, (%rax)
+ movw $107, 8(%rax)
+ leaq 4+menu_iface_variables(%rip), %rax
+ movq %rax, -416(%rbp)
+ movsd .LC9(%rip), %xmm0
+ movsd %xmm0, -408(%rbp)
+ movl 4+menu_iface_variables(%rip), %eax
+ cltq
+ movq %rax, -400(%rbp)
+ movsd .LC10(%rip), %xmm0
+ movsd %xmm0, -392(%rbp)
+ leaq 8+menu_iface_variables(%rip), %rax
+ movq %rax, -288(%rbp)
+ movsd .LC9(%rip), %xmm0
+ movsd %xmm0, -280(%rbp)
+ movl 8+menu_iface_variables(%rip), %eax
+ cltq
+ movq %rax, -272(%rbp)
+ movsd .LC11(%rip), %xmm0
+ movsd %xmm0, -264(%rbp)
+ leaq 16+menu_iface_variables(%rip), %rax
+ movq %rax, -544(%rbp)
+ pxor %xmm0, %xmm0
+ movsd %xmm0, -536(%rbp)
+ movsd 16+menu_iface_variables(%rip), %xmm0
+ movsd %xmm0, -528(%rbp)
+ movsd .LC13(%rip), %xmm0
+ movsd %xmm0, -520(%rbp)
+ movl $0, -168(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -160(%rbp)
+ movb $1, -17(%rbp)
+ jmp .L49
+.L53:
+ movl 4+menu_iface_variables(%rip), %eax
+ leaq -512(%rbp), %rdx
+ leaq 16(%rdx), %rdi
+ movl $22, %r9d
+ movl $2, %r8d
+ movl %eax, %ecx
+ leaq .LC14(%rip), %rdx
+ movl $80, %esi
+ movl $0, %eax
+ call snprintf@PLT
+ movl 8+menu_iface_variables(%rip), %eax
+ leaq -512(%rbp), %rdx
+ leaq 144(%rdx), %rdi
+ movl $33, %r9d
+ movl $2, %r8d
+ movl %eax, %ecx
+ leaq .LC15(%rip), %rdx
+ movl $80, %esi
+ movl $0, %eax
+ call snprintf@PLT
+ movq 16+menu_iface_variables(%rip), %rax
+ leaq -640(%rbp), %rdx
+ leaq 16(%rdx), %rdi
+ movl $1, %r8d
+ movl $0, %ecx
+ movq %rax, -648(%rbp)
+ movsd -648(%rbp), %xmm0
+ leaq .LC16(%rip), %rdx
+ movl $80, %esi
+ movl $1, %eax
+ call snprintf@PLT
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box(%rip)
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -144(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -48(%rbp)
+ leaq -512(%rbp), %rax
+ addq $16, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -504(%rbp)
+ call gtk_entry_new@PLT
+ movq %rax, -512(%rbp)
+ leaq -512(%rbp), %rax
+ addq $144, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -376(%rbp)
+ call gtk_entry_new@PLT
+ movq %rax, -384(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -40(%rbp)
+ leaq -640(%rbp), %rax
+ addq $16, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -632(%rbp)
+ call gtk_entry_new@PLT
+ movq %rax, -640(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -32(%rbp)
+ leaq -256(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -256(%rbp)
+ movq -512(%rbp), %rax
+ leaq -512(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_entry_int(%rip), %rdx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -384(%rbp), %rax
+ leaq -512(%rbp), %rdx
+ subq $-128, %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_entry_int(%rip), %rdx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -640(%rbp), %rax
+ leaq -640(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_entry_dbl(%rip), %rdx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -256(%rbp), %rax
+ leaq -256(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq box(%rip), %rbx
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_container_add@PLT
+ movq -144(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -48(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -504(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -512(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -376(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -384(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -40(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -632(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -640(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -32(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -256(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ movl $-1, -24(%rbp)
+ call gtk_main@PLT
+ movl -24(%rbp), %eax
+ testl %eax, %eax
+ je .L51
+ jmp .L52
+.L51:
+ movb $0, -17(%rbp)
+ nop
+.L52:
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_destroy@PLT
+.L49:
+ cmpb $0, -17(%rbp)
+ jne .L53
+ nop
+ addq $648, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE221:
+ .size menu_gui_custom, .-menu_gui_custom
+ .type menu_gui_devel, @function
+menu_gui_devel:
+.LFB222:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $392, %rsp
+ .cfi_offset 3, -24
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movabsq $4994579175753270596, %rcx
+ movq %rcx, (%rax)
+ movabsq $5642809484591964242, %rcx
+ movq %rcx, 8(%rax)
+ movw $83, 16(%rax)
+ leaq -384(%rbp), %rax
+ addq $16, %rax
+ movabsq $8295742008524367939, %rcx
+ movq %rcx, (%rax)
+ movabsq $7021801385203361125, %rcx
+ movq %rcx, 8(%rax)
+ movl $2712686, 16(%rax)
+ leaq -256(%rbp), %rax
+ addq $8, %rax
+ movabsq $7161077589265637211, %rbx
+ movq %rbx, (%rax)
+ movw $107, 8(%rax)
+ leaq -388(%rbp), %rax
+ movq %rax, -288(%rbp)
+ movsd .LC17(%rip), %xmm0
+ movsd %xmm0, -280(%rbp)
+ movq $1, -272(%rbp)
+ movsd .LC18(%rip), %xmm0
+ movsd %xmm0, -264(%rbp)
+ movl $0, -168(%rbp)
+ leaq -24(%rbp), %rax
+ movq %rax, -160(%rbp)
+ movb $1, -17(%rbp)
+ jmp .L55
+.L59:
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box(%rip)
+ leaq -144(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -144(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -48(%rbp)
+ leaq -384(%rbp), %rax
+ addq $16, %rax
+ movq %rax, %rdi
+ call gtk_label_new@PLT
+ movq %rax, -376(%rbp)
+ call gtk_entry_new@PLT
+ movq %rax, -384(%rbp)
+ call gtk_hseparator_new@PLT
+ movq %rax, -40(%rbp)
+ leaq -256(%rbp), %rax
+ addq $8, %rax
+ movq %rax, %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, -256(%rbp)
+ movq -384(%rbp), %rax
+ leaq -384(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_entry_int(%rip), %rdx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq -256(%rbp), %rax
+ leaq -256(%rbp), %rdx
+ movl $0, %r9d
+ movl $0, %r8d
+ movq %rdx, %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq box(%rip), %rbx
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_container_add@PLT
+ movq -144(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -48(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -376(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -384(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -40(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -256(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ movl $-1, -24(%rbp)
+ call gtk_main@PLT
+ movl -24(%rbp), %eax
+ testl %eax, %eax
+ jne .L60
+ movb $0, -17(%rbp)
+ jmp .L58
+.L60:
+ movl -388(%rbp), %eax
+ movl %eax, %edi
+ call srand@PLT
+ nop
+.L58:
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_destroy@PLT
+.L55:
+ cmpb $0, -17(%rbp)
+ jne .L59
+ nop
+ addq $392, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE222:
+ .size menu_gui_devel, .-menu_gui_devel
+ .section .rodata
+ .align 8
+.LC9:
+ .long 0
+ .long 1073741824
+ .align 8
+.LC10:
+ .long 0
+ .long 1077280768
+ .align 8
+.LC11:
+ .long 0
+ .long 1077968896
+ .align 8
+.LC13:
+ .long 0
+ .long 1072693248
+ .align 8
+.LC17:
+ .long 0
+ .long -1048576
+ .align 8
+.LC18:
+ .long 0
+ .long 2146435072
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/menu/tmp/menu_iface.s b/modules/menu/tmp/menu_iface.s
new file mode 100644
index 0000000..21f9576
--- /dev/null
+++ b/modules/menu/tmp/menu_iface.s
@@ -0,0 +1,257 @@
+ .file "menu_iface.c"
+ .comm flag_exit,1,1
+ .comm menu_iface_mode,4,4
+ .comm menu_iface_variables,24,16
+ .text
+ .globl menu_iface_init
+ .type menu_iface_init, @function
+menu_iface_init:
+.LFB206:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl $0, menu_iface_variables(%rip)
+ movl $8, 4+menu_iface_variables(%rip)
+ movl $8, 8+menu_iface_variables(%rip)
+ movsd .LC0(%rip), %xmm0
+ movsd %xmm0, 16+menu_iface_variables(%rip)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE206:
+ .size menu_iface_init, .-menu_iface_init
+ .globl menu_iface_init_iface
+ .type menu_iface_init_iface, @function
+menu_iface_init_iface:
+.LFB207:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl menu_iface_mode(%rip), %eax
+ cmpl $2, %eax
+ je .L7
+ cmpl $3, %eax
+ je .L5
+ cmpl $1, %eax
+ jmp .L3
+.L5:
+ call menu_gui_init@PLT
+ jmp .L3
+.L7:
+ nop
+.L3:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE207:
+ .size menu_iface_init_iface, .-menu_iface_init_iface
+ .globl menu_iface_cleanup
+ .type menu_iface_cleanup, @function
+menu_iface_cleanup:
+.LFB208:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl menu_iface_mode(%rip), %eax
+ cmpl $2, %eax
+ je .L13
+ cmpl $3, %eax
+ je .L11
+ cmpl $1, %eax
+ jmp .L9
+.L11:
+ call menu_gui_cleanup@PLT
+ jmp .L9
+.L13:
+ nop
+.L9:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE208:
+ .size menu_iface_cleanup, .-menu_iface_cleanup
+ .globl menu_iface_board
+ .type menu_iface_board, @function
+menu_iface_board:
+.LFB209:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ movq %rcx, -32(%rbp)
+ movl menu_iface_variables(%rip), %edx
+ movq -8(%rbp), %rax
+ movl %edx, (%rax)
+ movq -8(%rbp), %rax
+ movl (%rax), %eax
+ cmpl $4, %eax
+ ja .L23
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L17(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L17(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L17:
+ .long .L16-.L17
+ .long .L18-.L17
+ .long .L19-.L17
+ .long .L20-.L17
+ .long .L21-.L17
+ .text
+.L16:
+ movq -16(%rbp), %rax
+ movl $8, (%rax)
+ movq -24(%rbp), %rax
+ movl $8, (%rax)
+ movq -32(%rbp), %rax
+ movl $10, (%rax)
+ jmp .L15
+.L18:
+ movq -16(%rbp), %rax
+ movl $16, (%rax)
+ movq -24(%rbp), %rax
+ movl $16, (%rax)
+ movq -32(%rbp), %rax
+ movl $40, (%rax)
+ jmp .L15
+.L19:
+ movq -16(%rbp), %rax
+ movl $16, (%rax)
+ movq -24(%rbp), %rax
+ movl $30, (%rax)
+ movq -32(%rbp), %rax
+ movl $99, (%rax)
+ jmp .L15
+.L20:
+ movq -16(%rbp), %rax
+ movl $30, (%rax)
+ movq -24(%rbp), %rax
+ movl $16, (%rax)
+ movq -32(%rbp), %rax
+ movl $99, (%rax)
+ jmp .L15
+.L21:
+ movl 4+menu_iface_variables(%rip), %edx
+ movq -16(%rbp), %rax
+ movl %edx, (%rax)
+ movl 8+menu_iface_variables(%rip), %edx
+ movq -24(%rbp), %rax
+ movl %edx, (%rax)
+ movsd 16+menu_iface_variables(%rip), %xmm1
+ movq -16(%rbp), %rax
+ movl (%rax), %eax
+ pxor %xmm0, %xmm0
+ cvtsi2sd %eax, %xmm0
+ mulsd %xmm0, %xmm1
+ movq -24(%rbp), %rax
+ movl (%rax), %eax
+ pxor %xmm0, %xmm0
+ cvtsi2sd %eax, %xmm0
+ mulsd %xmm1, %xmm0
+ cvttsd2si %xmm0, %edx
+ movq -32(%rbp), %rax
+ movl %edx, (%rax)
+ movq -32(%rbp), %rax
+ movl (%rax), %edx
+ movq -16(%rbp), %rax
+ movl (%rax), %ecx
+ movq -24(%rbp), %rax
+ movl (%rax), %eax
+ imull %ecx, %eax
+ cmpl %eax, %edx
+ jne .L24
+ movq -32(%rbp), %rax
+ movl (%rax), %eax
+ leal -1(%rax), %edx
+ movq -32(%rbp), %rax
+ movl %edx, (%rax)
+.L24:
+ nop
+.L15:
+.L23:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE209:
+ .size menu_iface_board, .-menu_iface_board
+ .globl menu_iface
+ .type menu_iface, @function
+menu_iface:
+.LFB210:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl $1, start_mode(%rip)
+ movzbl flag_exit(%rip), %eax
+ xorl $1, %eax
+ testb %al, %al
+ je .L32
+ movl menu_iface_mode(%rip), %eax
+ cmpl $1, %eax
+ je .L27
+ cmpl $1, %eax
+ jg .L28
+ testl %eax, %eax
+ jmp .L26
+.L28:
+ cmpl $2, %eax
+ je .L30
+ cmpl $3, %eax
+ je .L31
+ jmp .L32
+.L27:
+ call menu_clui@PLT
+ jmp .L26
+.L30:
+ call menu_tui@PLT
+ jmp .L26
+.L31:
+ call menu_gui@PLT
+ nop
+.L26:
+.L32:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE210:
+ .size menu_iface, .-menu_iface
+ .section .rodata
+ .align 8
+.LC0:
+ .long 1202590843
+ .long 1069841121
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/menu/tmp/menu_tui.s b/modules/menu/tmp/menu_tui.s
new file mode 100644
index 0000000..381b7fd
--- /dev/null
+++ b/modules/menu/tmp/menu_tui.s
@@ -0,0 +1,830 @@
+ .file "menu_tui.c"
+ .section .rodata
+.LC0:
+ .string "[0]\tExit program"
+.LC1:
+ .string "[1]\tContinue"
+.LC2:
+ .string "[2]\tDisclaimer of warranty"
+.LC3:
+ .string "[3]\tTerms and conditions"
+.LC4:
+ .string "MENU:"
+ .text
+ .globl menu_tui
+ .type menu_tui, @function
+menu_tui:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $96, %rsp
+ call alx_resume_curses@PLT
+ movl $10, -8(%rbp)
+ movl $34, -12(%rbp)
+ movl $4, -16(%rbp)
+ movl $7, -96(%rbp)
+ movl $4, -92(%rbp)
+ leaq .LC0(%rip), %rax
+ movq %rax, -88(%rbp)
+ movl $2, -80(%rbp)
+ movl $4, -76(%rbp)
+ leaq .LC1(%rip), %rax
+ movq %rax, -72(%rbp)
+ movl $4, -64(%rbp)
+ movl $4, -60(%rbp)
+ leaq .LC2(%rip), %rax
+ movq %rax, -56(%rbp)
+ movl $5, -48(%rbp)
+ movl $4, -44(%rbp)
+ leaq .LC3(%rip), %rax
+ movq %rax, -40(%rbp)
+ movb $1, -1(%rbp)
+ jmp .L2
+.L8:
+ leaq -96(%rbp), %rcx
+ movl -16(%rbp), %edx
+ movl -12(%rbp), %esi
+ movl -8(%rbp), %eax
+ leaq .LC4(%rip), %r8
+ movl %eax, %edi
+ call alx_menu@PLT
+ movl %eax, -20(%rbp)
+ movl -20(%rbp), %eax
+ cmpl $1, %eax
+ je .L3
+ cmpl $1, %eax
+ jg .L4
+ testl %eax, %eax
+ je .L5
+ jmp .L2
+.L4:
+ cmpl $2, %eax
+ je .L6
+ cmpl $3, %eax
+ je .L7
+ jmp .L2
+.L5:
+ movb $0, -1(%rbp)
+ jmp .L2
+.L3:
+ call menu_tui_continue
+ jmp .L2
+.L6:
+ call alx_pause_curses@PLT
+ movl $1, %edi
+ call print_share_file@PLT
+ call getchar@PLT
+ call alx_resume_curses@PLT
+ jmp .L2
+.L7:
+ call alx_pause_curses@PLT
+ movl $3, %edi
+ call print_share_file@PLT
+ call getchar@PLT
+ call alx_resume_curses@PLT
+ nop
+.L2:
+ cmpb $0, -1(%rbp)
+ jne .L8
+ call alx_pause_curses@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size menu_tui, .-menu_tui
+ .section .rodata
+.LC5:
+ .string "[0]\tBack"
+.LC6:
+ .string "[1]\tStart"
+.LC7:
+ .string "[2]\tSelect map"
+.LC8:
+ .string "[3]\tChange difficulty"
+.LC9:
+ .string "[4]\tChange file name"
+.LC10:
+ .string "[5]\tHi scores"
+.LC11:
+ .string "File name:"
+.LC12:
+ .string "%s (File: \"%s\")"
+.LC13:
+ .string "CONTINUE:"
+.LC14:
+ .string "%s"
+ .text
+ .type menu_tui_continue, @function
+menu_tui_continue:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1048736, %rsp
+ movl $18, -8(%rbp)
+ movl $50, -12(%rbp)
+ movl $1, -16(%rbp)
+ movl $80, %eax
+ subl -12(%rbp), %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ movl %eax, -20(%rbp)
+ movl $6, -24(%rbp)
+ movl $11, -1048720(%rbp)
+ movl $4, -1048716(%rbp)
+ leaq .LC5(%rip), %rax
+ movq %rax, -1048712(%rbp)
+ movl $2, -1048704(%rbp)
+ movl $4, -1048700(%rbp)
+ leaq .LC6(%rip), %rax
+ movq %rax, -1048696(%rbp)
+ movl $4, -1048688(%rbp)
+ movl $4, -1048684(%rbp)
+ leaq .LC7(%rip), %rax
+ movq %rax, -1048680(%rbp)
+ movl $5, -1048672(%rbp)
+ movl $4, -1048668(%rbp)
+ leaq .LC8(%rip), %rax
+ movq %rax, -1048664(%rbp)
+ movl $6, -1048656(%rbp)
+ movl $4, -1048652(%rbp)
+ leaq .LC9(%rip), %rax
+ movq %rax, -1048648(%rbp)
+ movl $7, -1048640(%rbp)
+ movl $4, -1048636(%rbp)
+ leaq .LC10(%rip), %rax
+ movq %rax, -1048632(%rbp)
+ movl -12(%rbp), %eax
+ subl $8, %eax
+ movl %eax, -28(%rbp)
+ movl -16(%rbp), %edx
+ movl -8(%rbp), %eax
+ addl %edx, %eax
+ subl $5, %eax
+ movl %eax, -32(%rbp)
+ leaq .LC11(%rip), %rax
+ movq %rax, -1048728(%rbp)
+ movb $1, -1(%rbp)
+ jmp .L10
+.L18:
+ movl -20(%rbp), %ecx
+ movl -16(%rbp), %edx
+ movl -12(%rbp), %esi
+ movl -8(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -40(%rbp)
+ movq -1048648(%rbp), %rcx
+ movl -1048652(%rbp), %edx
+ movl -1048656(%rbp), %esi
+ movq -40(%rbp), %rax
+ leaq saved_name(%rip), %r9
+ movq %rcx, %r8
+ leaq .LC12(%rip), %rcx
+ movq %rax, %rdi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movq -40(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ leaq -1048720(%rbp), %rdx
+ movl -24(%rbp), %esi
+ movq -40(%rbp), %rax
+ leaq .LC13(%rip), %rcx
+ movq %rax, %rdi
+ call alx_menu_2@PLT
+ movl %eax, -44(%rbp)
+ cmpl $5, -44(%rbp)
+ ja .L10
+ movl -44(%rbp), %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L12(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L12(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L12:
+ .long .L11-.L12
+ .long .L13-.L12
+ .long .L14-.L12
+ .long .L15-.L12
+ .long .L16-.L12
+ .long .L17-.L12
+ .text
+.L11:
+ movq -40(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del@PLT
+ movb $0, -1(%rbp)
+ jmp .L10
+.L13:
+ movq -40(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del@PLT
+ call alx_pause_curses@PLT
+ call start_switch@PLT
+ call alx_resume_curses@PLT
+ jmp .L10
+.L14:
+ movq -40(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del@PLT
+ call menu_tui_select
+ jmp .L10
+.L15:
+ movq -40(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del@PLT
+ call menu_tui_level
+ jmp .L10
+.L16:
+ call save_clr@PLT
+ movq -1048728(%rbp), %rcx
+ movl -32(%rbp), %edx
+ movl -28(%rbp), %eax
+ subq $8, %rsp
+ pushq $0
+ movq %rcx, %r9
+ movl %edx, %r8d
+ movl %eax, %ecx
+ movl $1, %edx
+ leaq saved_name(%rip), %rsi
+ leaq saved_path(%rip), %rdi
+ movl $0, %eax
+ call alx_w_getfname@PLT
+ addq $16, %rsp
+ movq -40(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del@PLT
+ jmp .L10
+.L17:
+ movq -40(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del@PLT
+ call alx_pause_curses@PLT
+ leaq -1048624(%rbp), %rax
+ movl $1048576, %esi
+ movq %rax, %rdi
+ call snprint_scores@PLT
+ leaq -1048624(%rbp), %rax
+ movq %rax, %rsi
+ leaq .LC14(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ call getchar@PLT
+ call alx_resume_curses@PLT
+ nop
+.L10:
+ cmpb $0, -1(%rbp)
+ jne .L18
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size menu_tui_continue, .-menu_tui_continue
+ .section .rodata
+.LC15:
+ .string "[1]\tNew map"
+.LC16:
+ .string "[2]\tLoad map"
+.LC17:
+ .string "SELECT MAP:"
+ .text
+ .type menu_tui_select, @function
+menu_tui_select:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $96, %rsp
+ movl $9, -4(%rbp)
+ movl $70, -8(%rbp)
+ movl $1, -12(%rbp)
+ movl $80, %eax
+ subl -8(%rbp), %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ movl %eax, -16(%rbp)
+ movl $3, -20(%rbp)
+ movl $6, -96(%rbp)
+ movl $4, -92(%rbp)
+ leaq .LC5(%rip), %rax
+ movq %rax, -88(%rbp)
+ movl $2, -80(%rbp)
+ movl $4, -76(%rbp)
+ leaq .LC15(%rip), %rax
+ movq %rax, -72(%rbp)
+ movl $4, -64(%rbp)
+ movl $4, -60(%rbp)
+ leaq .LC16(%rip), %rax
+ movq %rax, -56(%rbp)
+ movl -16(%rbp), %ecx
+ movl -12(%rbp), %edx
+ movl -8(%rbp), %esi
+ movl -4(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -32(%rbp)
+ movq -72(%rbp), %rcx
+ movl -60(%rbp), %edx
+ movl -64(%rbp), %esi
+ movq -32(%rbp), %rax
+ leaq saved_name(%rip), %r9
+ movq %rcx, %r8
+ leaq .LC12(%rip), %rcx
+ movq %rax, %rdi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movq -32(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ leaq -96(%rbp), %rdx
+ movl -20(%rbp), %esi
+ movq -32(%rbp), %rax
+ leaq .LC17(%rip), %rcx
+ movq %rax, %rdi
+ call alx_menu_2@PLT
+ movl %eax, -36(%rbp)
+ movq -32(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del@PLT
+ movl -36(%rbp), %eax
+ cmpl $1, %eax
+ je .L21
+ cmpl $2, %eax
+ je .L22
+ jmp .L23
+.L21:
+ movl $1, start_mode(%rip)
+ jmp .L20
+.L22:
+ movl $2, start_mode(%rip)
+ nop
+.L20:
+.L23:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size menu_tui_select, .-menu_tui_select
+ .section .rodata
+.LC18:
+ .string "[1]\tBeginner"
+.LC19:
+ .string "[2]\tIntermediate"
+.LC20:
+ .string "[3]\tExpert"
+.LC21:
+ .string "[4]\tCustom"
+.LC22:
+ .string "SELECT LEVEL:"
+ .text
+ .type menu_tui_level, @function
+menu_tui_level:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $96, %rsp
+ movl $10, -4(%rbp)
+ movl $70, -8(%rbp)
+ movl $5, -12(%rbp)
+ movl $7, -96(%rbp)
+ movl $4, -92(%rbp)
+ leaq .LC5(%rip), %rax
+ movq %rax, -88(%rbp)
+ movl $2, -80(%rbp)
+ movl $4, -76(%rbp)
+ leaq .LC18(%rip), %rax
+ movq %rax, -72(%rbp)
+ movl $3, -64(%rbp)
+ movl $4, -60(%rbp)
+ leaq .LC19(%rip), %rax
+ movq %rax, -56(%rbp)
+ movl $4, -48(%rbp)
+ movl $4, -44(%rbp)
+ leaq .LC20(%rip), %rax
+ movq %rax, -40(%rbp)
+ movl $5, -32(%rbp)
+ movl $4, -28(%rbp)
+ leaq .LC21(%rip), %rax
+ movq %rax, -24(%rbp)
+ leaq -96(%rbp), %rcx
+ movl -12(%rbp), %edx
+ movl -8(%rbp), %esi
+ movl -4(%rbp), %eax
+ leaq .LC22(%rip), %r8
+ movl %eax, %edi
+ call alx_menu@PLT
+ movl %eax, -16(%rbp)
+ movl -16(%rbp), %eax
+ cmpl $2, %eax
+ je .L26
+ cmpl $2, %eax
+ jg .L27
+ cmpl $1, %eax
+ je .L28
+ jmp .L31
+.L27:
+ cmpl $3, %eax
+ je .L29
+ cmpl $4, %eax
+ je .L30
+ jmp .L31
+.L28:
+ movl $0, menu_iface_variables(%rip)
+ jmp .L25
+.L26:
+ movl $1, menu_iface_variables(%rip)
+ jmp .L25
+.L29:
+ movl $2, menu_iface_variables(%rip)
+ jmp .L25
+.L30:
+ movl $4, menu_iface_variables(%rip)
+ call menu_tui_custom
+ nop
+.L25:
+.L31:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size menu_tui_level, .-menu_tui_level
+ .section .rodata
+.LC23:
+ .string "[1]\tChange rows:"
+.LC24:
+ .string "[2]\tChange columns:"
+ .align 8
+.LC25:
+ .string "[3]\tChange proportion of mines:"
+.LC26:
+ .string "Rows:"
+.LC27:
+ .string "Columns:"
+.LC28:
+ .string "Proportion:"
+.LC29:
+ .string "%s rows\t\t(%i)"
+.LC30:
+ .string "%s cols\t\t(%i)"
+.LC31:
+ .string "%s p\t(%lf)"
+.LC32:
+ .string "Custom:"
+ .text
+ .type menu_tui_custom, @function
+menu_tui_custom:
+.LFB4:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $160, %rsp
+ movl $16, -8(%rbp)
+ movl $76, -12(%rbp)
+ movl $1, -16(%rbp)
+ movl $80, %eax
+ subl -12(%rbp), %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ movl %eax, -20(%rbp)
+ movl $4, -24(%rbp)
+ movl $8, -112(%rbp)
+ movl $4, -108(%rbp)
+ leaq .LC5(%rip), %rax
+ movq %rax, -104(%rbp)
+ movl $2, -96(%rbp)
+ movl $4, -92(%rbp)
+ leaq .LC23(%rip), %rax
+ movq %rax, -88(%rbp)
+ movl $4, -80(%rbp)
+ movl $4, -76(%rbp)
+ leaq .LC24(%rip), %rax
+ movq %rax, -72(%rbp)
+ movl $6, -64(%rbp)
+ movl $4, -60(%rbp)
+ leaq .LC25(%rip), %rax
+ movq %rax, -56(%rbp)
+ movl -12(%rbp), %eax
+ subl $8, %eax
+ movl %eax, -28(%rbp)
+ movl -16(%rbp), %edx
+ movl -8(%rbp), %eax
+ addl %edx, %eax
+ subl $5, %eax
+ movl %eax, -32(%rbp)
+ leaq .LC26(%rip), %rax
+ movq %rax, -144(%rbp)
+ leaq .LC27(%rip), %rax
+ movq %rax, -136(%rbp)
+ leaq .LC28(%rip), %rax
+ movq %rax, -128(%rbp)
+ movl -20(%rbp), %ecx
+ movl -16(%rbp), %edx
+ movl -12(%rbp), %esi
+ movl -8(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -40(%rbp)
+ movb $1, -1(%rbp)
+ jmp .L33
+.L39:
+ movl 4+menu_iface_variables(%rip), %edi
+ movq -88(%rbp), %rcx
+ movl -92(%rbp), %edx
+ movl -96(%rbp), %esi
+ movq -40(%rbp), %rax
+ movl %edi, %r9d
+ movq %rcx, %r8
+ leaq .LC29(%rip), %rcx
+ movq %rax, %rdi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl 8+menu_iface_variables(%rip), %edi
+ movq -72(%rbp), %rcx
+ movl -76(%rbp), %edx
+ movl -80(%rbp), %esi
+ movq -40(%rbp), %rax
+ movl %edi, %r9d
+ movq %rcx, %r8
+ leaq .LC30(%rip), %rcx
+ movq %rax, %rdi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movq 16+menu_iface_variables(%rip), %rcx
+ movq -56(%rbp), %rdi
+ movl -60(%rbp), %edx
+ movl -64(%rbp), %esi
+ movq -40(%rbp), %rax
+ movq %rcx, -152(%rbp)
+ movsd -152(%rbp), %xmm0
+ movq %rdi, %r8
+ leaq .LC31(%rip), %rcx
+ movq %rax, %rdi
+ movl $1, %eax
+ call mvwprintw@PLT
+ movq -40(%rbp), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ leaq -112(%rbp), %rdx
+ movl -24(%rbp), %esi
+ movq -40(%rbp), %rax
+ leaq .LC32(%rip), %rcx
+ movq %rax, %rdi
+ call alx_menu_2@PLT
+ movl %eax, -44(%rbp)
+ movl -44(%rbp), %eax
+ cmpl $1, %eax
+ je .L34
+ cmpl $1, %eax
+ jg .L35
+ testl %eax, %eax
+ je .L36
+ jmp .L33
+.L35:
+ cmpl $2, %eax
+ je .L37
+ cmpl $3, %eax
+ je .L38
+ jmp .L33
+.L36:
+ movb $0, -1(%rbp)
+ jmp .L33
+.L34:
+ movl 4+menu_iface_variables(%rip), %eax
+ movslq %eax, %rcx
+ movl -44(%rbp), %eax
+ subl $1, %eax
+ cltq
+ movq -144(%rbp,%rax,8), %rdx
+ movsd .LC33(%rip), %xmm0
+ movq .LC34(%rip), %rdi
+ movl -32(%rbp), %esi
+ movl -28(%rbp), %eax
+ movl $0, %r8d
+ movapd %xmm0, %xmm1
+ movq %rdi, -152(%rbp)
+ movsd -152(%rbp), %xmm0
+ movl %eax, %edi
+ movl $2, %eax
+ call alx_w_getint@PLT
+ movl %eax, 4+menu_iface_variables(%rip)
+ jmp .L33
+.L37:
+ movl 8+menu_iface_variables(%rip), %eax
+ movslq %eax, %rcx
+ movl -44(%rbp), %eax
+ subl $1, %eax
+ cltq
+ movq -144(%rbp,%rax,8), %rdx
+ movsd .LC35(%rip), %xmm0
+ movq .LC34(%rip), %rdi
+ movl -32(%rbp), %esi
+ movl -28(%rbp), %eax
+ movl $0, %r8d
+ movapd %xmm0, %xmm1
+ movq %rdi, -152(%rbp)
+ movsd -152(%rbp), %xmm0
+ movl %eax, %edi
+ movl $2, %eax
+ call alx_w_getint@PLT
+ movl %eax, 8+menu_iface_variables(%rip)
+ jmp .L33
+.L38:
+ movsd 16+menu_iface_variables(%rip), %xmm0
+ movl -44(%rbp), %eax
+ subl $1, %eax
+ cltq
+ movq -144(%rbp,%rax,8), %rdx
+ movl -32(%rbp), %esi
+ movl -28(%rbp), %eax
+ movl $0, %ecx
+ movsd .LC36(%rip), %xmm2
+ movapd %xmm0, %xmm1
+ pxor %xmm0, %xmm0
+ movl %eax, %edi
+ movl $3, %eax
+ call alx_w_getdbl@PLT
+ movq %xmm0, %rax
+ movq %rax, 16+menu_iface_variables(%rip)
+ nop
+.L33:
+ cmpb $0, -1(%rbp)
+ jne .L39
+ movq -40(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE4:
+ .size menu_tui_custom, .-menu_tui_custom
+ .section .rodata
+.LC38:
+ .string "[1]\tChange seed (srand)"
+.LC39:
+ .string "Seed:"
+.LC40:
+ .string "DEVELOPER OPTIONS:"
+ .text
+ .type menu_tui_devel, @function
+menu_tui_devel:
+.LFB5:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $112, %rsp
+ movl $12, -8(%rbp)
+ movl $50, -12(%rbp)
+ movl $1, -16(%rbp)
+ movl $80, %eax
+ subl -12(%rbp), %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ movl %eax, -20(%rbp)
+ movl $2, -24(%rbp)
+ movl $5, -80(%rbp)
+ movl $4, -76(%rbp)
+ leaq .LC5(%rip), %rax
+ movq %rax, -72(%rbp)
+ movl $2, -64(%rbp)
+ movl $4, -60(%rbp)
+ leaq .LC38(%rip), %rax
+ movq %rax, -56(%rbp)
+ movl -12(%rbp), %eax
+ subl $8, %eax
+ movl %eax, -28(%rbp)
+ movl -16(%rbp), %edx
+ movl -8(%rbp), %eax
+ addl %edx, %eax
+ subl $5, %eax
+ movl %eax, -32(%rbp)
+ leaq .LC39(%rip), %rax
+ movq %rax, -88(%rbp)
+ movl -20(%rbp), %ecx
+ movl -16(%rbp), %edx
+ movl -12(%rbp), %esi
+ movl -8(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, -40(%rbp)
+ movb $1, -1(%rbp)
+ jmp .L41
+.L44:
+ leaq -80(%rbp), %rdx
+ movl -24(%rbp), %esi
+ movq -40(%rbp), %rax
+ leaq .LC40(%rip), %rcx
+ movq %rax, %rdi
+ call alx_menu_2@PLT
+ movl %eax, -44(%rbp)
+ movl -44(%rbp), %eax
+ testl %eax, %eax
+ je .L42
+ cmpl $1, %eax
+ je .L43
+ jmp .L41
+.L42:
+ movb $0, -1(%rbp)
+ jmp .L41
+.L43:
+ movq -88(%rbp), %rdx
+ movsd .LC41(%rip), %xmm0
+ movq .LC42(%rip), %rdi
+ movl -32(%rbp), %esi
+ movl -28(%rbp), %eax
+ movl $0, %r8d
+ movapd %xmm0, %xmm1
+ movl $1, %ecx
+ movq %rdi, -104(%rbp)
+ movsd -104(%rbp), %xmm0
+ movl %eax, %edi
+ movl $2, %eax
+ call alx_w_getint@PLT
+ movl %eax, -48(%rbp)
+ movl -48(%rbp), %eax
+ movl %eax, %edi
+ call srand@PLT
+ nop
+.L41:
+ cmpb $0, -1(%rbp)
+ jne .L44
+ movq -40(%rbp), %rax
+ movq %rax, %rdi
+ call alx_win_del@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE5:
+ .size menu_tui_devel, .-menu_tui_devel
+ .section .rodata
+ .align 8
+.LC33:
+ .long 0
+ .long 1077280768
+ .align 8
+.LC34:
+ .long 0
+ .long 1073741824
+ .align 8
+.LC35:
+ .long 0
+ .long 1077968896
+ .align 8
+.LC36:
+ .long 0
+ .long 1072693248
+ .align 8
+.LC41:
+ .long 0
+ .long 2146435072
+ .align 8
+.LC42:
+ .long 0
+ .long -1048576
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/menu/tmp/parser.s b/modules/menu/tmp/parser.s
new file mode 100644
index 0000000..f6542ed
--- /dev/null
+++ b/modules/menu/tmp/parser.s
@@ -0,0 +1,574 @@
+ .file "parser.c"
+ .section .rodata
+.LC13:
+ .string "xhLuva:b:f:i:p:r:s:"
+.LC0:
+ .string "exit"
+.LC1:
+ .string "help"
+.LC2:
+ .string "license"
+.LC3:
+ .string "usage"
+.LC4:
+ .string "version"
+.LC5:
+ .string "rows"
+.LC6:
+ .string "columns"
+.LC7:
+ .string "file"
+.LC8:
+ .string "iface"
+.LC9:
+ .string "proportion"
+.LC10:
+ .string "start"
+ .data
+ .align 32
+.LC12:
+ .quad .LC0
+ .long 0
+ .zero 4
+ .quad 0
+ .long 120
+ .zero 4
+ .quad .LC1
+ .long 0
+ .zero 4
+ .quad 0
+ .long 104
+ .zero 4
+ .quad .LC2
+ .long 0
+ .zero 4
+ .quad 0
+ .long 76
+ .zero 4
+ .quad .LC3
+ .long 0
+ .zero 4
+ .quad 0
+ .long 117
+ .zero 4
+ .quad .LC4
+ .long 0
+ .zero 4
+ .quad 0
+ .long 118
+ .zero 4
+ .quad .LC5
+ .long 1
+ .zero 4
+ .quad 0
+ .long 97
+ .zero 4
+ .quad .LC6
+ .long 1
+ .zero 4
+ .quad 0
+ .long 98
+ .zero 4
+ .quad .LC7
+ .long 1
+ .zero 4
+ .quad 0
+ .long 102
+ .zero 4
+ .quad .LC8
+ .long 1
+ .zero 4
+ .quad 0
+ .long 105
+ .zero 4
+ .quad .LC9
+ .long 1
+ .zero 4
+ .quad 0
+ .long 112
+ .zero 4
+ .quad .LC10
+ .long 1
+ .zero 4
+ .quad 0
+ .long 115
+ .zero 4
+ .quad 0
+ .long 0
+ .zero 4
+ .quad 0
+ .long 0
+ .zero 4
+ .text
+ .globl parser
+ .type parser, @function
+parser:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $416, %rsp
+ movl %edi, -404(%rbp)
+ movq %rsi, -416(%rbp)
+ movl $0, -4(%rbp)
+ movl $0, -8(%rbp)
+ leaq -400(%rbp), %rax
+ leaq .LC12(%rip), %rdx
+ movl $48, %ecx
+ movq %rax, %rdi
+ movq %rdx, %rsi
+ rep movsq
+ jmp .L2
+.L16:
+ movl -4(%rbp), %eax
+ subl $76, %eax
+ cmpl $44, %eax
+ ja .L3
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L5(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L5(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L5:
+ .long .L4-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L6-.L5
+ .long .L7-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L8-.L5
+ .long .L3-.L5
+ .long .L9-.L5
+ .long .L10-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L11-.L5
+ .long .L3-.L5
+ .long .L3-.L5
+ .long .L12-.L5
+ .long .L3-.L5
+ .long .L13-.L5
+ .long .L14-.L5
+ .long .L3-.L5
+ .long .L15-.L5
+ .text
+.L15:
+ movb $1, flag_exit(%rip)
+ jmp .L2
+.L9:
+ movl $2, %edi
+ call print_share_file@PLT
+ movl $0, %edi
+ call exit@PLT
+.L4:
+ movl $3, %edi
+ call print_share_file@PLT
+ movl $0, %edi
+ call exit@PLT
+.L13:
+ movl $4, %edi
+ call print_share_file@PLT
+ movl $0, %edi
+ call exit@PLT
+.L14:
+ call print_version@PLT
+ movl $0, %edi
+ call exit@PLT
+.L6:
+ movq optarg(%rip), %rax
+ movq %rax, %rdi
+ call parse_rows
+ jmp .L2
+.L7:
+ movq optarg(%rip), %rax
+ movq %rax, %rdi
+ call parse_columns
+ jmp .L2
+.L8:
+ movq optarg(%rip), %rax
+ movq %rax, %rdi
+ call parse_file
+ jmp .L2
+.L10:
+ movq optarg(%rip), %rax
+ movq %rax, %rdi
+ call parse_iface
+ jmp .L2
+.L11:
+ movq optarg(%rip), %rax
+ movq %rax, %rdi
+ call parse_proportion
+ jmp .L2
+.L12:
+ movq optarg(%rip), %rax
+ movq %rax, %rdi
+ call parse_start
+ jmp .L2
+.L3:
+ movl $4, %edi
+ call print_share_file@PLT
+ movl $1, %edi
+ call exit@PLT
+.L2:
+ leaq -8(%rbp), %rcx
+ leaq -400(%rbp), %rdx
+ movq -416(%rbp), %rsi
+ movl -404(%rbp), %eax
+ movq %rcx, %r8
+ movq %rdx, %rcx
+ leaq .LC13(%rip), %rdx
+ movl %eax, %edi
+ call getopt_long@PLT
+ movl %eax, -4(%rbp)
+ cmpl $-1, -4(%rbp)
+ jne .L16
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size parser, .-parser
+ .section .rodata
+.LC14:
+ .string "--rows argument not valid"
+ .align 8
+.LC15:
+ .string "It must be an integer [%i U %i]\n"
+ .text
+ .type parse_rows, @function
+parse_rows:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call atoi@PLT
+ movl %eax, 4+menu_iface_variables(%rip)
+ movl 4+menu_iface_variables(%rip), %eax
+ cmpl $1, %eax
+ jle .L18
+ movl 4+menu_iface_variables(%rip), %eax
+ cmpl $999, %eax
+ jle .L20
+.L18:
+ leaq .LC14(%rip), %rdi
+ call puts@PLT
+ movl $999, %edx
+ movl $2, %esi
+ leaq .LC15(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movl $1, %edi
+ call exit@PLT
+.L20:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size parse_rows, .-parse_rows
+ .section .rodata
+.LC16:
+ .string "--columns argument not valid"
+ .text
+ .type parse_columns, @function
+parse_columns:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call atoi@PLT
+ movl %eax, 8+menu_iface_variables(%rip)
+ movl 8+menu_iface_variables(%rip), %eax
+ cmpl $1, %eax
+ jle .L22
+ movl 8+menu_iface_variables(%rip), %eax
+ cmpl $999, %eax
+ jle .L24
+.L22:
+ leaq .LC16(%rip), %rdi
+ call puts@PLT
+ movl $999, %edx
+ movl $2, %esi
+ leaq .LC15(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movl $1, %edi
+ call exit@PLT
+.L24:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size parse_columns, .-parse_columns
+ .section .rodata
+.LC17:
+ .string "r"
+.LC18:
+ .string "--file argument not valid"
+ .align 8
+.LC19:
+ .string "It must be a valid file name (relative to saved dir)"
+.LC20:
+ .string ""
+ .text
+ .type parse_file, @function
+parse_file:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq -24(%rbp), %rax
+ leaq .LC17(%rip), %rsi
+ movq %rax, %rdi
+ call fopen@PLT
+ movq %rax, -8(%rbp)
+ cmpq $0, -8(%rbp)
+ jne .L26
+ leaq .LC18(%rip), %rdi
+ call puts@PLT
+ leaq .LC19(%rip), %rdi
+ call puts@PLT
+ movl $1, %edi
+ call exit@PLT
+.L26:
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call fclose@PLT
+ movzbl .LC20(%rip), %eax
+ movb %al, saved_path(%rip)
+ movq -24(%rbp), %rax
+ movq %rax, %rdx
+ movl $4096, %esi
+ leaq saved_name(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size parse_file, .-parse_file
+ .section .rodata
+.LC21:
+ .string "--iface argument not valid"
+ .text
+ .type parse_iface, @function
+parse_iface:
+.LFB4:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call atoi@PLT
+ movl %eax, menu_iface_mode(%rip)
+ movl menu_iface_mode(%rip), %eax
+ movl %eax, player_iface_mode(%rip)
+ movl menu_iface_mode(%rip), %eax
+ testl %eax, %eax
+ jle .L28
+ movl menu_iface_mode(%rip), %eax
+ cmpl $3, %eax
+ jle .L30
+.L28:
+ leaq .LC21(%rip), %rdi
+ call puts@PLT
+ movl $3, %edx
+ movl $1, %esi
+ leaq .LC15(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movl $1, %edi
+ call exit@PLT
+.L30:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE4:
+ .size parse_iface, .-parse_iface
+ .section .rodata
+ .align 8
+.LC24:
+ .string "--proportion argument not valid"
+.LC25:
+ .string "It must be a real [0 U 1]"
+ .text
+ .type parse_proportion, @function
+parse_proportion:
+.LFB5:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call atof@PLT
+ movq %xmm0, %rax
+ movq %rax, 16+menu_iface_variables(%rip)
+ movsd 16+menu_iface_variables(%rip), %xmm1
+ pxor %xmm0, %xmm0
+ ucomisd %xmm1, %xmm0
+ ja .L32
+ movsd 16+menu_iface_variables(%rip), %xmm0
+ movsd .LC23(%rip), %xmm1
+ ucomisd %xmm1, %xmm0
+ ja .L32
+ jmp .L35
+.L32:
+ leaq .LC24(%rip), %rdi
+ call puts@PLT
+ leaq .LC25(%rip), %rdi
+ call puts@PLT
+ movl $1, %edi
+ call exit@PLT
+.L35:
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE5:
+ .size parse_proportion, .-parse_proportion
+ .type parse_rand_seed, @function
+parse_rand_seed:
+.LFB6:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq -24(%rbp), %rax
+ movq %rax, %rdi
+ call atof@PLT
+ cvttsd2si %xmm0, %eax
+ movl %eax, -4(%rbp)
+ movl -4(%rbp), %eax
+ movl %eax, %edi
+ call srand@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE6:
+ .size parse_rand_seed, .-parse_rand_seed
+ .section .rodata
+.LC26:
+ .string "--start argument not valid"
+ .text
+ .type parse_start, @function
+parse_start:
+.LFB7:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call atoi@PLT
+ movl %eax, start_mode(%rip)
+ movl start_mode(%rip), %eax
+ testl %eax, %eax
+ js .L38
+ movl start_mode(%rip), %eax
+ cmpl $2, %eax
+ jle .L40
+.L38:
+ leaq .LC26(%rip), %rdi
+ call puts@PLT
+ movl $2, %edx
+ movl $0, %esi
+ leaq .LC15(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movl $1, %edi
+ call exit@PLT
+.L40:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE7:
+ .size parse_start, .-parse_start
+ .section .rodata
+ .align 8
+.LC23:
+ .long 0
+ .long 1072693248
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/player/Makefile b/modules/player/Makefile
index eb84b96..bbf6245 100644
--- a/modules/player/Makefile
+++ b/modules/player/Makefile
@@ -4,16 +4,16 @@
# directories
-OBJ_DIR = $(PLAY_DIR)/obj/
+TMP_DIR = $(PLAY_DIR)/tmp/
# target: dependencies
# action
all:
- $(Q)cd $(OBJ_DIR) && $(MAKE) && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) && cd ..
clean:
- $(Q)cd $(OBJ_DIR) && $(MAKE) clean && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) clean && cd ..
################################################################################
######## End of file ###########################################################
diff --git a/modules/player/obj/Makefile b/modules/player/obj/Makefile
deleted file mode 100644
index a6f5fc0..0000000
--- a/modules/player/obj/Makefile
+++ /dev/null
@@ -1,91 +0,0 @@
-# -*- MakeFile -*-
-
-# MACRO = substitute with this
-
-# directories
-
-LIBALX_INC_DIR = $(LIBALX_DIR)/inc/
-
-GAME_INC_DIR = $(GAME_DIR)/inc/
-MENU_INC_DIR = $(MENU_DIR)/inc/
-
-INC_DIR = $(PLAY_DIR)/inc/
-SRC_DIR = $(PLAY_DIR)/src/
-
-# dependencies
-
-_ALL = player_iface.o player_clui.o player_tui.o player_gui.o
-ALL = $(_ALL) player_mod.o
-
-PLAYI_INC_GAME = game_iface.h
-PLAYI_INC = player_iface.h player_clui.h player_tui.h player_gui.h
-PLAYI_DEPS = $(SRC_DIR)/player_iface.c \
- $(patsubst %,$(INC_DIR)/%,$(PLAYI_INC)) \
- $(patsubst %,$(GAME_INC_DIR)/%,$(PLAYI_INC_GAME))
-PLAYI_INC_DIRS = -I $(INC_DIR) \
- -I $(GAME_INC_DIR)
-
-PLAYCLUI_INC_GAME = game_iface.h
-PLAYCLUI_INC = player_clui.h player_iface.h
-PLAYCLUI_DEPS = $(SRC_DIR)/player_clui.c \
- $(patsubst %,$(INC_DIR)/%,$(PLAYCLUI_INC)) \
- $(patsubst %,$(GAME_INC_DIR)/%,$(PLAYCLUI_INC_GAME))
-PLAYCLUI_INC_DIRS = -I $(INC_DIR) \
- -I $(GAME_INC_DIR)
-
-PLAYTUI_INC_LIBALX = alx_ncur.h
-PLAYTUI_INC_GAME = game_iface.h
-PLAYTUI_INC = player_tui.h player_iface.h
-PLAYTUI_DEPS = $(SRC_DIR)/player_tui.c \
- $(patsubst %,$(INC_DIR)/%,$(PLAYTUI_INC)) \
- $(patsubst %,$(LIBALX_INC_DIR)/%,$(PLAYTUI_INC_LIBALX)) \
- $(patsubst %,$(GAME_INC_DIR)/%,$(PLAYTUI_INC_GAME))
-PLAYTUI_INC_DIRS = -I $(INC_DIR) \
- -I $(LIBALX_INC_DIR) \
- -I $(GAME_INC_DIR)
-
-PLAYGUI_INC_LIBALX = alx_input.h
-PLAYGUI_INC_GAME = game_iface.h
-PLAYGUI_INC_MENU = menu_gui.h
-PLAYGUI_INC = player_gui.h player_iface.h
-PLAYGUI_DEPS = $(SRC_DIR)/player_gui.c \
- $(patsubst %,$(INC_DIR)/%,$(PLAYGUI_INC)) \
- $(patsubst %,$(LIBALX_INC_DIR)/%,$(PLAYGUI_INC_LIBALX)) \
- $(patsubst %,$(GAME_INC_DIR)/%,$(PLAYGUI_INC_GAME)) \
- $(patsubst %,$(MENU_INC_DIR)/%,$(PLAYGUI_INC_MENU))
-PLAYGUI_INC_DIRS = -I $(INC_DIR) \
- -I $(LIBALX_INC_DIR) \
- -I $(GAME_INC_DIR) \
- -I $(MENU_INC_DIR)
-
-# target: dependencies
-# action
-
-all: $(ALL)
-
-
-player_mod.o: $(_ALL)
- $(Q)$(LD) -r $^ -o $@
- @echo "\tLD $@"
- @echo ""
-
-
-player_iface.o: $(PLAYI_DEPS)
- $(Q)$(CC) $(CFLAGS) $(PLAYI_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-player_clui.o: $(PLAYCLUI_DEPS)
- $(Q)$(CC) $(CFLAGS) $(PLAYCLUI_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-player_tui.o: $(PLAYTUI_DEPS)
- $(Q)$(CC) $(CFLAGS) $(PLAYTUI_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-player_gui.o: $(PLAYGUI_DEPS)
- $(Q)$(CC) $(CFLAGS) $(PLAYGUI_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
-
-
-clean:
- $(Q)rm -f *.o
diff --git a/modules/player/tmp/Makefile b/modules/player/tmp/Makefile
new file mode 100644
index 0000000..70d252a
--- /dev/null
+++ b/modules/player/tmp/Makefile
@@ -0,0 +1,103 @@
+# -*- MakeFile -*-
+
+# MACRO = substitute with this
+
+# directories
+
+LIBALX_INC_DIR = $(LIBALX_DIR)/inc/
+
+GAME_INC_DIR = $(GAME_DIR)/inc/
+MENU_INC_DIR = $(MENU_DIR)/inc/
+
+INC_DIR = $(PLAY_DIR)/inc/
+SRC_DIR = $(PLAY_DIR)/src/
+
+# dependencies
+
+_ALL = player_iface.o player_clui.o player_tui.o player_gui.o
+ALL = $(_ALL) player_mod.o
+
+PLAYI_INC_GAME = game_iface.h
+PLAYI_INC = player_iface.h player_clui.h player_tui.h player_gui.h
+PLAYI_DEPS = $(SRC_DIR)/player_iface.c \
+ $(patsubst %,$(INC_DIR)/%,$(PLAYI_INC)) \
+ $(patsubst %,$(GAME_INC_DIR)/%,$(PLAYI_INC_GAME))
+PLAYI_INC_DIRS = -I $(INC_DIR) \
+ -I $(GAME_INC_DIR)
+
+PLAYCLUI_INC_GAME = game_iface.h
+PLAYCLUI_INC = player_clui.h player_iface.h
+PLAYCLUI_DEPS = $(SRC_DIR)/player_clui.c \
+ $(patsubst %,$(INC_DIR)/%,$(PLAYCLUI_INC)) \
+ $(patsubst %,$(GAME_INC_DIR)/%,$(PLAYCLUI_INC_GAME))
+PLAYCLUI_INC_DIRS = -I $(INC_DIR) \
+ -I $(GAME_INC_DIR)
+
+PLAYTUI_INC_LIBALX = alx_ncur.h
+PLAYTUI_INC_GAME = game_iface.h
+PLAYTUI_INC = player_tui.h player_iface.h
+PLAYTUI_DEPS = $(SRC_DIR)/player_tui.c \
+ $(patsubst %,$(INC_DIR)/%,$(PLAYTUI_INC)) \
+ $(patsubst %,$(LIBALX_INC_DIR)/%,$(PLAYTUI_INC_LIBALX)) \
+ $(patsubst %,$(GAME_INC_DIR)/%,$(PLAYTUI_INC_GAME))
+PLAYTUI_INC_DIRS = -I $(INC_DIR) \
+ -I $(LIBALX_INC_DIR) \
+ -I $(GAME_INC_DIR)
+
+PLAYGUI_INC_LIBALX = alx_input.h
+PLAYGUI_INC_GAME = game_iface.h
+PLAYGUI_INC_MENU = menu_gui.h
+PLAYGUI_INC = player_gui.h player_iface.h
+PLAYGUI_DEPS = $(SRC_DIR)/player_gui.c \
+ $(patsubst %,$(INC_DIR)/%,$(PLAYGUI_INC)) \
+ $(patsubst %,$(LIBALX_INC_DIR)/%,$(PLAYGUI_INC_LIBALX)) \
+ $(patsubst %,$(GAME_INC_DIR)/%,$(PLAYGUI_INC_GAME)) \
+ $(patsubst %,$(MENU_INC_DIR)/%,$(PLAYGUI_INC_MENU))
+PLAYGUI_INC_DIRS = -I $(INC_DIR) \
+ -I $(LIBALX_INC_DIR) \
+ -I $(GAME_INC_DIR) \
+ -I $(MENU_INC_DIR)
+
+# target: dependencies
+# action
+
+all: $(ALL)
+
+
+player_mod.o: $(_ALL)
+ $(Q)$(LD) -r $^ -o $@
+ @echo " LD $@"
+ @echo ""
+
+
+player_iface.s: $(PLAYI_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(PLAYI_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+player_iface.o: player_iface.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+player_clui.s: $(PLAYCLUI_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(PLAYCLUI_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+player_clui.o: player_clui.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+player_tui.s: $(PLAYTUI_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(PLAYTUI_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+player_tui.o: player_tui.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+player_gui.s: $(PLAYGUI_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(PLAYGUI_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+player_gui.o: player_gui.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
+
+
+clean:
+ $(Q)rm -f *.o *.s
diff --git a/modules/player/tmp/player_clui.s b/modules/player/tmp/player_clui.s
new file mode 100644
index 0000000..359b970
--- /dev/null
+++ b/modules/player/tmp/player_clui.s
@@ -0,0 +1,1120 @@
+ .file "player_clui.c"
+ .local oldaction
+ .comm oldaction,4,4
+ .text
+ .globl player_clui_start
+ .type player_clui_start, @function
+player_clui_start:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ movq %rcx, -32(%rbp)
+ call show_help_start
+ movq -24(%rbp), %rdx
+ movq -16(%rbp), %rcx
+ movq -8(%rbp), %rax
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call show_board_start
+ call usr_input
+ movl %eax, %edx
+ movq -32(%rbp), %rax
+ movl %edx, (%rax)
+ movq -32(%rbp), %rax
+ movl (%rax), %eax
+ movl %eax, oldaction(%rip)
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size player_clui_start, .-player_clui_start
+ .globl player_clui
+ .type player_clui, @function
+player_clui:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $48, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ movq %rcx, -32(%rbp)
+ movq %r8, -40(%rbp)
+ movl oldaction(%rip), %eax
+ testl %eax, %eax
+ je .L3
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call show_help
+ movq -32(%rbp), %rcx
+ movq -24(%rbp), %rdx
+ movq -16(%rbp), %rsi
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call show_board
+.L3:
+ call usr_input
+ movl %eax, %edx
+ movq -40(%rbp), %rax
+ movl %edx, (%rax)
+ movq -40(%rbp), %rax
+ movl (%rax), %eax
+ movl %eax, oldaction(%rip)
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size player_clui, .-player_clui
+ .section .rodata
+.LC0:
+ .string "File name:"
+ .text
+ .globl player_clui_save_name
+ .type player_clui_save_name, @function
+player_clui_save_name:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movl %edx, -20(%rbp)
+ leaq .LC0(%rip), %rdi
+ call puts@PLT
+ movq stdin(%rip), %rdx
+ movl -20(%rbp), %ecx
+ movq -16(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call fgets@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size player_clui_save_name, .-player_clui_save_name
+ .section .rodata
+.LC1:
+ .string "Your name:"
+ .text
+ .globl player_clui_score_name
+ .type player_clui_score_name, @function
+player_clui_score_name:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movl %esi, -12(%rbp)
+ leaq .LC1(%rip), %rdi
+ call puts@PLT
+ movq stdin(%rip), %rdx
+ movl -12(%rbp), %ecx
+ movq -8(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call fgets@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size player_clui_score_name, .-player_clui_score_name
+ .section .rodata
+ .align 8
+.LC2:
+ .string "________________________________________________________________________________"
+.LC3:
+ .string "%s\t-\t%s\n"
+ .align 8
+.LC4:
+ .string "--------------------------------------------------------------------------------"
+ .text
+ .type show_board_start, @function
+show_board_start:
+.LFB4:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ leaq .LC2(%rip), %rdi
+ call puts@PLT
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call board_loop_start
+ movq -16(%rbp), %rdx
+ movq -24(%rbp), %rax
+ movq %rax, %rsi
+ leaq .LC3(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ leaq .LC4(%rip), %rdi
+ call puts@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE4:
+ .size show_board_start, .-show_board_start
+ .type board_loop_start, @function
+board_loop_start:
+.LFB5:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movl $10, %edi
+ call putchar@PLT
+ movl $0, -4(%rbp)
+ jmp .L8
+.L13:
+ movl $0, -8(%rbp)
+ jmp .L9
+.L12:
+ movb $43, -9(%rbp)
+ movq -24(%rbp), %rax
+ movl 8(%rax), %eax
+ cmpl -4(%rbp), %eax
+ jne .L10
+ movq -24(%rbp), %rax
+ movl 12(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jne .L10
+ movl $60, %edi
+ call putchar@PLT
+ movsbl -9(%rbp), %eax
+ movl %eax, %edi
+ call putchar@PLT
+ movl $62, %edi
+ call putchar@PLT
+ jmp .L11
+.L10:
+ movl $32, %edi
+ call putchar@PLT
+ movsbl -9(%rbp), %eax
+ movl %eax, %edi
+ call putchar@PLT
+ movl $32, %edi
+ call putchar@PLT
+.L11:
+ addl $1, -8(%rbp)
+.L9:
+ movq -24(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jg .L12
+ movl $10, %edi
+ call putchar@PLT
+ addl $1, -4(%rbp)
+.L8:
+ movq -24(%rbp), %rax
+ movl (%rax), %eax
+ cmpl -4(%rbp), %eax
+ jg .L13
+ movl $10, %edi
+ call putchar@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE5:
+ .size board_loop_start, .-board_loop_start
+ .type show_board, @function
+show_board:
+.LFB6:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ movq %rcx, -32(%rbp)
+ leaq .LC2(%rip), %rdi
+ call puts@PLT
+ movq -16(%rbp), %rdx
+ movq -8(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call board_loop
+ movq -24(%rbp), %rdx
+ movq -32(%rbp), %rax
+ movq %rax, %rsi
+ leaq .LC3(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ leaq .LC4(%rip), %rdi
+ call puts@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE6:
+ .size show_board, .-show_board
+ .type board_loop, @function
+board_loop:
+.LFB7:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movl $10, %edi
+ call putchar@PLT
+ movl $0, -4(%rbp)
+ jmp .L16
+.L21:
+ movl $0, -8(%rbp)
+ jmp .L17
+.L20:
+ movq -24(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl 12(%rax,%rdx,4), %eax
+ movl %eax, %edi
+ call set_char
+ movb %al, -9(%rbp)
+ movq -32(%rbp), %rax
+ movl 8(%rax), %eax
+ cmpl -4(%rbp), %eax
+ jne .L18
+ movq -32(%rbp), %rax
+ movl 12(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jne .L18
+ movl $60, %edi
+ call putchar@PLT
+ movsbl -9(%rbp), %eax
+ movl %eax, %edi
+ call putchar@PLT
+ movl $62, %edi
+ call putchar@PLT
+ jmp .L19
+.L18:
+ movl $32, %edi
+ call putchar@PLT
+ movsbl -9(%rbp), %eax
+ movl %eax, %edi
+ call putchar@PLT
+ movl $32, %edi
+ call putchar@PLT
+.L19:
+ addl $1, -8(%rbp)
+.L17:
+ movq -24(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jg .L20
+ movl $10, %edi
+ call putchar@PLT
+ addl $1, -4(%rbp)
+.L16:
+ movq -24(%rbp), %rax
+ movl (%rax), %eax
+ cmpl -4(%rbp), %eax
+ jg .L21
+ movl $10, %edi
+ call putchar@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE7:
+ .size board_loop, .-board_loop
+ .type set_char, @function
+set_char:
+.LFB8:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl %edi, -20(%rbp)
+ cmpl $17, -20(%rbp)
+ ja .L23
+ movl -20(%rbp), %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L25(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L25(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L25:
+ .long .L24-.L25
+ .long .L26-.L25
+ .long .L27-.L25
+ .long .L28-.L25
+ .long .L29-.L25
+ .long .L30-.L25
+ .long .L31-.L25
+ .long .L32-.L25
+ .long .L33-.L25
+ .long .L34-.L25
+ .long .L35-.L25
+ .long .L36-.L25
+ .long .L37-.L25
+ .long .L38-.L25
+ .long .L39-.L25
+ .long .L40-.L25
+ .long .L41-.L25
+ .long .L42-.L25
+ .text
+.L24:
+ movb $35, -1(%rbp)
+ jmp .L23
+.L26:
+ movb $43, -1(%rbp)
+ jmp .L23
+.L27:
+ movb $42, -1(%rbp)
+ jmp .L23
+.L28:
+ movb $45, -1(%rbp)
+ jmp .L23
+.L29:
+ movb $118, -1(%rbp)
+ jmp .L23
+.L30:
+ movb $32, -1(%rbp)
+ jmp .L23
+.L31:
+ movb $49, -1(%rbp)
+ jmp .L23
+.L32:
+ movb $50, -1(%rbp)
+ jmp .L23
+.L33:
+ movb $51, -1(%rbp)
+ jmp .L23
+.L34:
+ movb $52, -1(%rbp)
+ jmp .L23
+.L35:
+ movb $53, -1(%rbp)
+ jmp .L23
+.L36:
+ movb $54, -1(%rbp)
+ jmp .L23
+.L37:
+ movb $55, -1(%rbp)
+ jmp .L23
+.L38:
+ movb $56, -1(%rbp)
+ jmp .L23
+.L39:
+ movb $33, -1(%rbp)
+ jmp .L23
+.L40:
+ movb $70, -1(%rbp)
+ jmp .L23
+.L41:
+ movb $63, -1(%rbp)
+ jmp .L23
+.L42:
+ movb $102, -1(%rbp)
+ nop
+.L23:
+ movzbl -1(%rbp), %eax
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE8:
+ .size set_char, .-set_char
+ .section .rodata
+.LC5:
+ .string "%c"
+.LC6:
+ .string "%*c%c"
+.LC7:
+ .string "%*2c%c"
+.LC8:
+ .string "%*3c%c"
+.LC9:
+ .string "%*4c%c"
+ .text
+ .type usr_input, @function
+usr_input:
+.LFB9:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1056, %rsp
+ movb $0, -1040(%rbp)
+ movb $0, -1041(%rbp)
+ movq stdin(%rip), %rdx
+ leaq -1040(%rbp), %rax
+ movl $1024, %esi
+ movq %rax, %rdi
+ call fgets@PLT
+ leaq -1041(%rbp), %rdx
+ leaq -1040(%rbp), %rax
+ leaq .LC5(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1041(%rbp), %eax
+ movsbl %al, %eax
+ subl $8, %eax
+ cmpl $119, %eax
+ ja .L45
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L47(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L47(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L47:
+ .long .L46-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L48-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L49-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L50-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L51-.L47
+ .long .L52-.L47
+ .long .L53-.L47
+ .long .L54-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L55-.L47
+ .long .L45-.L47
+ .long .L56-.L47
+ .long .L45-.L47
+ .long .L57-.L47
+ .long .L58-.L47
+ .long .L59-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L60-.L47
+ .long .L61-.L47
+ .long .L45-.L47
+ .long .L62-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L63-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L45-.L47
+ .long .L46-.L47
+ .text
+.L48:
+ leaq -1041(%rbp), %rdx
+ leaq -1040(%rbp), %rax
+ leaq .LC6(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1041(%rbp), %eax
+ movsbl %al, %eax
+ cmpl $91, %eax
+ je .L65
+ jmp .L72
+.L65:
+ leaq -1041(%rbp), %rdx
+ leaq -1040(%rbp), %rax
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1041(%rbp), %eax
+ movsbl %al, %eax
+ cmpl $66, %eax
+ je .L67
+ cmpl $66, %eax
+ jg .L68
+ cmpl $65, %eax
+ je .L69
+ jmp .L75
+.L68:
+ cmpl $67, %eax
+ je .L70
+ cmpl $68, %eax
+ je .L71
+ jmp .L75
+.L69:
+ movl $13, -4(%rbp)
+ jmp .L66
+.L67:
+ movl $14, -4(%rbp)
+ jmp .L66
+.L70:
+ movl $15, -4(%rbp)
+ jmp .L66
+.L71:
+ movl $16, -4(%rbp)
+ nop
+.L66:
+.L75:
+ nop
+ jmp .L72
+.L56:
+ movl $16, -4(%rbp)
+ jmp .L72
+.L57:
+ movl $14, -4(%rbp)
+ jmp .L72
+.L58:
+ movl $13, -4(%rbp)
+ jmp .L72
+.L59:
+ movl $15, -4(%rbp)
+ jmp .L72
+.L50:
+ movl $1, -4(%rbp)
+ jmp .L72
+.L49:
+ movl $2, -4(%rbp)
+ jmp .L72
+.L55:
+ movl $3, -4(%rbp)
+ jmp .L72
+.L46:
+ movl $4, -4(%rbp)
+ jmp .L72
+.L60:
+ movl $5, -4(%rbp)
+ jmp .L72
+.L62:
+ movl $6, -4(%rbp)
+ jmp .L72
+.L63:
+ leaq -1041(%rbp), %rdx
+ leaq -1040(%rbp), %rax
+ leaq .LC6(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1041(%rbp), %eax
+ cmpb $121, %al
+ jne .L76
+ leaq -1041(%rbp), %rdx
+ leaq -1040(%rbp), %rax
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1041(%rbp), %eax
+ cmpb $122, %al
+ jne .L76
+ leaq -1041(%rbp), %rdx
+ leaq -1040(%rbp), %rax
+ leaq .LC8(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1041(%rbp), %eax
+ cmpb $122, %al
+ jne .L76
+ leaq -1041(%rbp), %rdx
+ leaq -1040(%rbp), %rax
+ leaq .LC9(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_sscanf@PLT
+ movzbl -1041(%rbp), %eax
+ cmpb $121, %al
+ jne .L76
+ movl $7, -4(%rbp)
+ jmp .L76
+.L51:
+ movl $8, -4(%rbp)
+ jmp .L72
+.L52:
+ movl $9, -4(%rbp)
+ jmp .L72
+.L53:
+ movl $10, -4(%rbp)
+ jmp .L72
+.L54:
+ movl $11, -4(%rbp)
+ jmp .L72
+.L61:
+ movl $12, -4(%rbp)
+ jmp .L72
+.L45:
+ movl $0, -4(%rbp)
+ jmp .L72
+.L76:
+ nop
+.L72:
+ movl -4(%rbp), %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE9:
+ .size usr_input, .-usr_input
+ .type show_help, @function
+show_help:
+.LFB10:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq -8(%rbp), %rax
+ movl 7984028(%rax), %eax
+ cmpl $5, %eax
+ ja .L86
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L80(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L80(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L80:
+ .long .L79-.L80
+ .long .L81-.L80
+ .long .L82-.L80
+ .long .L83-.L80
+ .long .L84-.L80
+ .long .L85-.L80
+ .text
+.L79:
+ call show_help_play
+ jmp .L78
+.L83:
+ call show_help_pause
+ jmp .L78
+.L85:
+ call show_help_xyzzy
+ jmp .L78
+.L84:
+ call show_help_cheat
+ jmp .L78
+.L81:
+ call show_help_safe
+ jmp .L78
+.L82:
+ call show_help_gameover
+ nop
+.L78:
+.L86:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE10:
+ .size show_help, .-show_help
+ .section .rodata
+ .align 8
+.LC10:
+ .string "Move |Step |Quit |Confirm"
+ .align 8
+.LC11:
+ .string " %c%c%c%c %c%c%c%c| %c | %c | Enter\n"
+ .text
+ .type show_help_start, @function
+show_help_start:
+.LFB11:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ leaq .LC10(%rip), %rdi
+ call puts@PLT
+ subq $8, %rsp
+ pushq $113
+ pushq $43
+ pushq $62
+ pushq $94
+ pushq $118
+ movl $60, %r9d
+ movl $108, %r8d
+ movl $107, %ecx
+ movl $106, %edx
+ movl $104, %esi
+ leaq .LC11(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ addq $48, %rsp
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE11:
+ .size show_help_start, .-show_help_start
+ .section .rodata
+ .align 8
+.LC12:
+ .string "Move |Step |Flag |? |Remove |Pause |Save |Quit |Confirm"
+ .align 8
+.LC13:
+ .string " %c%c%c%c %c%c%c%c| %c | Space| %c| BS | %c | %c | %c | Enter\n"
+ .text
+ .type show_help_play, @function
+show_help_play:
+.LFB12:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ leaq .LC12(%rip), %rdi
+ call puts@PLT
+ pushq $113
+ pushq $115
+ pushq $112
+ pushq $102
+ pushq $43
+ pushq $62
+ pushq $94
+ pushq $118
+ movl $60, %r9d
+ movl $108, %r8d
+ movl $107, %ecx
+ movl $106, %edx
+ movl $104, %esi
+ leaq .LC13(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ addq $64, %rsp
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE12:
+ .size show_help_play, .-show_help_play
+ .section .rodata
+.LC14:
+ .string "Continue |Save |Quit |Confirm"
+ .align 8
+.LC15:
+ .string " %c | %c | %c | Enter"
+ .text
+ .type show_help_pause, @function
+show_help_pause:
+.LFB13:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ leaq .LC14(%rip), %rdi
+ call puts@PLT
+ movl $113, %ecx
+ movl $115, %edx
+ movl $112, %esi
+ leaq .LC15(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE13:
+ .size show_help_pause, .-show_help_pause
+ .section .rodata
+ .align 8
+.LC16:
+ .string "XYZZY |Move |Step |Flag |? |Remove |Save |Quit |Confirm"
+ .align 8
+.LC17:
+ .string " 0 1 2| %c%c%c%c %c%c%c%c| %c | Space| %c| BS | %c | %c | Enter\n"
+ .text
+ .type show_help_xyzzy, @function
+show_help_xyzzy:
+.LFB14:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ leaq .LC16(%rip), %rdi
+ call puts@PLT
+ subq $8, %rsp
+ pushq $113
+ pushq $115
+ pushq $102
+ pushq $43
+ pushq $62
+ pushq $94
+ pushq $118
+ movl $60, %r9d
+ movl $108, %r8d
+ movl $107, %ecx
+ movl $106, %edx
+ movl $104, %esi
+ leaq .LC17(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ addq $64, %rsp
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE14:
+ .size show_help_xyzzy, .-show_help_xyzzy
+ .section .rodata
+ .align 8
+.LC18:
+ .string "Move |Step |Flag |? |Remove |Save |Quit |Confirm"
+ .align 8
+.LC19:
+ .string " %c%c%c%c %c%c%c%c| %c | Space| %c| BS | %c | %c | Enter\n"
+ .text
+ .type show_help_cheat, @function
+show_help_cheat:
+.LFB15:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ leaq .LC18(%rip), %rdi
+ call puts@PLT
+ subq $8, %rsp
+ pushq $113
+ pushq $115
+ pushq $102
+ pushq $43
+ pushq $62
+ pushq $94
+ pushq $118
+ movl $60, %r9d
+ movl $108, %r8d
+ movl $107, %ecx
+ movl $106, %edx
+ movl $104, %esi
+ leaq .LC19(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ addq $64, %rsp
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE15:
+ .size show_help_cheat, .-show_help_cheat
+ .section .rodata
+.LC20:
+ .string "Save |Quit |Confirm"
+.LC21:
+ .string " %c | %c | Enter\n"
+ .text
+ .type show_help_safe, @function
+show_help_safe:
+.LFB16:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ leaq .LC20(%rip), %rdi
+ call puts@PLT
+ movl $113, %edx
+ movl $115, %esi
+ leaq .LC21(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE16:
+ .size show_help_safe, .-show_help_safe
+ .section .rodata
+.LC22:
+ .string "Quit |Confirm"
+.LC23:
+ .string " %c | Enter\n"
+ .text
+ .type show_help_gameover, @function
+show_help_gameover:
+.LFB17:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ leaq .LC22(%rip), %rdi
+ call puts@PLT
+ movl $113, %esi
+ leaq .LC23(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE17:
+ .size show_help_gameover, .-show_help_gameover
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/player/tmp/player_gui.s b/modules/player/tmp/player_gui.s
new file mode 100644
index 0000000..b252821
--- /dev/null
+++ b/modules/player/tmp/player_gui.s
@@ -0,0 +1,2416 @@
+ .file "player_gui.c"
+ .local box
+ .comm box,8,8
+ .local box_help
+ .comm box_help,8,8
+ .local box_help_in
+ .comm box_help_in,8,8
+ .local button
+ .comm button,520,32
+ .local tbutton
+ .comm tbutton,184,32
+ .local entry_name
+ .comm entry_name,112,32
+ .local entry_fname
+ .comm entry_fname,112,32
+ .local box_board
+ .comm box_board,8,8
+ .local box_board_in
+ .comm box_board_in,8,8
+ .local pbar_board_tit
+ .comm pbar_board_tit,96,32
+ .local box_board_tab
+ .comm box_board_tab,8,8
+ .local table_board
+ .comm table_board,8,8
+ .local field
+ .comm field,34848,32
+ .local ebox_cheat
+ .comm ebox_cheat,24,16
+ .local label_stit
+ .comm label_stit,88,32
+ .local last_help
+ .comm last_help,4,4
+ .local timeout
+ .comm timeout,16,16
+ .local state
+ .comm state,4,4
+ .section .rodata
+.LC0:
+ .string "NEW"
+.LC1:
+ .string "button-press-event"
+ .text
+ .globl player_gui_init
+ .type player_gui_init, @function
+player_gui_init:
+.LFB206:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %r15
+ pushq %r14
+ pushq %r13
+ pushq %r12
+ pushq %rbx
+ subq $40, %rsp
+ .cfi_offset 15, -24
+ .cfi_offset 14, -32
+ .cfi_offset 13, -40
+ .cfi_offset 12, -48
+ .cfi_offset 3, -56
+ movq %rdi, -72(%rbp)
+ movq %rsi, -80(%rbp)
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_hbox_new@PLT
+ movq %rax, box(%rip)
+ movq box(%rip), %rbx
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq window_gui(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_container_add@PLT
+ movl $0, %esi
+ movl $1, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box_help(%rip)
+ call gtk_vseparator_new@PLT
+ movq %rax, -64(%rbp)
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box_board(%rip)
+ movq box_help(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdi
+ movq -64(%rbp), %rax
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rax, %rsi
+ call gtk_box_pack_start@PLT
+ movq box_board(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -80(%rbp), %rax
+ movq %rax, %rdi
+ call help_init
+ movq -80(%rbp), %rdx
+ movq -72(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call board_init
+ movl $0, -52(%rbp)
+ jmp .L2
+.L5:
+ movl $0, -56(%rbp)
+ jmp .L3
+.L4:
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rcx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rcx, %rdx
+ addq %rax, %rdx
+ leaq 12+field(%rip), %rax
+ addq %rax, %rdx
+ movl -52(%rbp), %eax
+ movl %eax, (%rdx)
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rcx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rcx, %rdx
+ addq %rax, %rdx
+ leaq 16+field(%rip), %rax
+ addq %rax, %rdx
+ movl -56(%rbp), %eax
+ movl %eax, (%rdx)
+ movq -72(%rbp), %rax
+ leaq 8(%rax), %rcx
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rsi
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rsi, %rdx
+ addq %rax, %rdx
+ leaq 24+field(%rip), %rax
+ addq %rdx, %rax
+ movq %rcx, (%rax)
+ movq -72(%rbp), %rax
+ leaq 12(%rax), %rcx
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rsi
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rsi, %rdx
+ addq %rax, %rdx
+ leaq 32+field(%rip), %rax
+ addq %rdx, %rax
+ movq %rcx, (%rax)
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rcx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rcx, %rdx
+ addq %rax, %rdx
+ leaq 40+field(%rip), %rax
+ addq %rax, %rdx
+ movq -80(%rbp), %rax
+ movq %rax, (%rdx)
+ leaq .LC0(%rip), %rdi
+ call gtk_button_new_with_label@PLT
+ movq %rax, %rsi
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rcx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rcx, %rdx
+ addq %rax, %rdx
+ leaq field(%rip), %rax
+ addq %rdx, %rax
+ movq %rsi, (%rax)
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ movl -52(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $1584, %rdx, %rdx
+ addq %rax, %rdx
+ leaq field(%rip), %rax
+ leaq (%rdx,%rax), %rcx
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rsi
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rsi, %rdx
+ addq %rax, %rdx
+ leaq field(%rip), %rax
+ addq %rdx, %rax
+ movq (%rax), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ leaq callback_field(%rip), %rdx
+ leaq .LC1(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rcx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rcx, %rdx
+ addq %rax, %rdx
+ leaq 12+field(%rip), %rax
+ addq %rdx, %rax
+ movl (%rax), %eax
+ addl $1, %eax
+ movl %eax, %r15d
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rcx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rcx, %rdx
+ addq %rax, %rdx
+ leaq 12+field(%rip), %rax
+ addq %rdx, %rax
+ movl (%rax), %eax
+ movl %eax, %r14d
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rcx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rcx, %rdx
+ addq %rax, %rdx
+ leaq 16+field(%rip), %rax
+ addq %rdx, %rax
+ movl (%rax), %eax
+ addl $1, %eax
+ movl %eax, %r13d
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rcx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rcx, %rdx
+ addq %rax, %rdx
+ leaq 16+field(%rip), %rax
+ addq %rdx, %rax
+ movl (%rax), %eax
+ movl %eax, %r12d
+ movl -56(%rbp), %eax
+ movslq %eax, %rdx
+ movl -52(%rbp), %eax
+ movslq %eax, %rcx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rcx, %rdx
+ addq %rax, %rdx
+ leaq field(%rip), %rax
+ addq %rdx, %rax
+ movq (%rax), %rbx
+ call gtk_table_get_type@PLT
+ movq %rax, %rdx
+ movq table_board(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl %r15d, %r9d
+ movl %r14d, %r8d
+ movl %r13d, %ecx
+ movl %r12d, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_table_attach_defaults@PLT
+ addl $1, -56(%rbp)
+.L3:
+ movq -72(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl -56(%rbp), %eax
+ jg .L4
+ addl $1, -52(%rbp)
+.L2:
+ movq -72(%rbp), %rax
+ movl (%rax), %eax
+ cmpl -52(%rbp), %eax
+ jg .L5
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ nop
+ addq $40, %rsp
+ popq %rbx
+ popq %r12
+ popq %r13
+ popq %r14
+ popq %r15
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE206:
+ .size player_gui_init, .-player_gui_init
+ .globl player_gui_start
+ .type player_gui_start, @function
+player_gui_start:
+.LFB207:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ call show_help_start
+ movq -24(%rbp), %rdx
+ movq -16(%rbp), %rcx
+ movq -8(%rbp), %rax
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call show_board_start
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ call gtk_main@PLT
+ movl $0, %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE207:
+ .size player_gui_start, .-player_gui_start
+ .globl player_gui
+ .type player_gui, @function
+player_gui:
+.LFB208:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ movq %rcx, -32(%rbp)
+ movq -8(%rbp), %rax
+ movl 7984028(%rax), %eax
+ movl %eax, state(%rip)
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call show_help
+ movq -32(%rbp), %rcx
+ movq -24(%rbp), %rdx
+ movq -16(%rbp), %rsi
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call show_board
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq window_gui(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ call gtk_main@PLT
+ movl $0, %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE208:
+ .size player_gui, .-player_gui
+ .globl player_gui_save_name
+ .type player_gui_save_name, @function
+player_gui_save_name:
+.LFB209:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movl %edx, -20(%rbp)
+ movq -8(%rbp), %rax
+ movq %rax, 96+entry_fname(%rip)
+ movq -16(%rbp), %rax
+ movq %rax, 104+entry_fname(%rip)
+ movq button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 104+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 208+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq tbutton(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 312+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 8+entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 416+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq box_board(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ call gtk_main@PLT
+ movq box_board(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 8+entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movl $7, last_help(%rip)
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE209:
+ .size player_gui_save_name, .-player_gui_save_name
+ .globl player_gui_score_name
+ .type player_gui_score_name, @function
+player_gui_score_name:
+.LFB210:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movl %esi, -12(%rbp)
+ movq -8(%rbp), %rax
+ movq %rax, 96+entry_name(%rip)
+ movl -12(%rbp), %eax
+ movl %eax, 104+entry_name(%rip)
+ movq button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 104+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 208+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq tbutton(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 312+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 8+entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 416+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq box_board(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ call gtk_main@PLT
+ movq box_board(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 8+entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movl $7, last_help(%rip)
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE210:
+ .size player_gui_score_name, .-player_gui_score_name
+ .globl player_gui_cleanup
+ .type player_gui_cleanup, @function
+player_gui_cleanup:
+.LFB211:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq box(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_destroy@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE211:
+ .size player_gui_cleanup, .-player_gui_cleanup
+ .type board_init, @function
+board_init:
+.LFB212:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $40, %rsp
+ .cfi_offset 3, -24
+ movq %rdi, -40(%rbp)
+ movq %rsi, -48(%rbp)
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box_board_in(%rip)
+ movq box_board_in(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_board(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ call gtk_progress_bar_new@PLT
+ movq %rax, pbar_board_tit(%rip)
+ movq pbar_board_tit(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_board_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ call gtk_progress_bar_get_type@PLT
+ movq %rax, %rdx
+ movq pbar_board_tit(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ leaq .LC0(%rip), %rsi
+ movq %rax, %rdi
+ call gtk_progress_bar_set_text@PLT
+ call gtk_progress_bar_get_type@PLT
+ movq %rax, %rdx
+ movq pbar_board_tit(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %esi
+ movq %rax, %rdi
+ call gtk_progress_bar_set_orientation@PLT
+ call gtk_hseparator_new@PLT
+ movq %rax, -32(%rbp)
+ movq -32(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_board_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movl $0, %esi
+ movl $1, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box_board_tab(%rip)
+ movq box_board_tab(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_board_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq -40(%rbp), %rax
+ movl 4(%rax), %eax
+ movl %eax, %ecx
+ movq -40(%rbp), %rax
+ movl (%rax), %eax
+ movl $1, %edx
+ movl %ecx, %esi
+ movl %eax, %edi
+ call gtk_table_new@PLT
+ movq %rax, table_board(%rip)
+ movq table_board(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_board_tab(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ call gtk_hseparator_new@PLT
+ movq %rax, -24(%rbp)
+ movq -24(%rbp), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_board_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ call gtk_event_box_new@PLT
+ movq %rax, ebox_cheat(%rip)
+ movq ebox_cheat(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_board_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ leaq .LC0(%rip), %rdi
+ call gtk_label_new@PLT
+ movq %rax, label_stit(%rip)
+ movq label_stit(%rip), %rbx
+ call gtk_container_get_type@PLT
+ movq %rax, %rdx
+ movq ebox_cheat(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_container_add@PLT
+ movl $7, 8+ebox_cheat(%rip)
+ movq -48(%rbp), %rax
+ movq %rax, 16+ebox_cheat(%rip)
+ movq ebox_cheat(%rip), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ leaq ebox_cheat(%rip), %rcx
+ leaq callback_ebox(%rip), %rdx
+ leaq .LC1(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movl $0, 4+timeout(%rip)
+ movq -48(%rbp), %rax
+ movq %rax, 8+timeout(%rip)
+ movl $0, timeout(%rip)
+ movq box_board(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ nop
+ addq $40, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE212:
+ .size board_init, .-board_init
+ .type show_board_start, @function
+show_board_start:
+.LFB213:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $40, %rsp
+ .cfi_offset 3, -24
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movq %rdx, -40(%rbp)
+ movq -32(%rbp), %rax
+ movq %rax, %rdx
+ movl $80, %esi
+ leaq 16+pbar_board_tit(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ call gtk_progress_bar_get_type@PLT
+ movq %rax, %rdx
+ movq pbar_board_tit(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ leaq 16+pbar_board_tit(%rip), %rsi
+ movq %rax, %rdi
+ call gtk_progress_bar_set_text@PLT
+ pxor %xmm0, %xmm0
+ movsd %xmm0, 8+pbar_board_tit(%rip)
+ movq 8+pbar_board_tit(%rip), %rbx
+ call gtk_progress_bar_get_type@PLT
+ movq %rax, %rdx
+ movq pbar_board_tit(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, -48(%rbp)
+ movsd -48(%rbp), %xmm0
+ movq %rax, %rdi
+ call gtk_progress_bar_set_fraction@PLT
+ movq -24(%rbp), %rax
+ movq %rax, %rdi
+ call board_loop_start
+ movq -40(%rbp), %rax
+ movq %rax, %rdx
+ movl $80, %esi
+ leaq 8+label_stit(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ call gtk_label_get_type@PLT
+ movq %rax, %rdx
+ movq label_stit(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ leaq 8+label_stit(%rip), %rsi
+ movq %rax, %rdi
+ call gtk_label_set_text@PLT
+ movq box_board(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ nop
+ addq $40, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE213:
+ .size show_board_start, .-show_board_start
+ .type board_loop_start, @function
+board_loop_start:
+.LFB214:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movb $43, -9(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L16
+.L19:
+ movl $0, -8(%rbp)
+ jmp .L17
+.L18:
+ movl -8(%rbp), %eax
+ movslq %eax, %rdx
+ movl -4(%rbp), %eax
+ movslq %eax, %rcx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rcx, %rdx
+ addq %rax, %rdx
+ leaq 8+field(%rip), %rax
+ addq %rax, %rdx
+ movzbl -9(%rbp), %eax
+ movb %al, (%rdx)
+ movl -8(%rbp), %eax
+ movslq %eax, %rdx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $1584, %rdx, %rdx
+ addq %rax, %rdx
+ leaq field(%rip), %rax
+ addq %rdx, %rax
+ movq %rax, %rdi
+ call show_char
+ addl $1, -8(%rbp)
+.L17:
+ movq -24(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jg .L18
+ addl $1, -4(%rbp)
+.L16:
+ movq -24(%rbp), %rax
+ movl (%rax), %eax
+ cmpl -4(%rbp), %eax
+ jg .L19
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE214:
+ .size board_loop_start, .-board_loop_start
+ .type show_board, @function
+show_board:
+.LFB215:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $56, %rsp
+ .cfi_offset 3, -24
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movq %rdx, -40(%rbp)
+ movq %rcx, -48(%rbp)
+ movq -40(%rbp), %rax
+ movq %rax, %rdx
+ movl $80, %esi
+ leaq 16+pbar_board_tit(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ call gtk_progress_bar_get_type@PLT
+ movq %rax, %rdx
+ movq pbar_board_tit(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ leaq 16+pbar_board_tit(%rip), %rsi
+ movq %rax, %rdi
+ call gtk_progress_bar_set_text@PLT
+ movq -24(%rbp), %rax
+ movl 7984020(%rax), %eax
+ movq -24(%rbp), %rdx
+ movl 8(%rdx), %ecx
+ cltd
+ idivl %ecx
+ movl %edx, %eax
+ testl %eax, %eax
+ je .L21
+ movq -24(%rbp), %rax
+ movl 7984020(%rax), %eax
+ pxor %xmm0, %xmm0
+ cvtsi2sd %eax, %xmm0
+ movq -24(%rbp), %rax
+ movl 8(%rax), %eax
+ pxor %xmm1, %xmm1
+ cvtsi2sd %eax, %xmm1
+ divsd %xmm1, %xmm0
+ movsd %xmm0, 8+pbar_board_tit(%rip)
+ movq 8+pbar_board_tit(%rip), %rax
+ movsd .LC3(%rip), %xmm1
+ movq %rax, -56(%rbp)
+ movsd -56(%rbp), %xmm0
+ call fmod@PLT
+ movq %xmm0, %rax
+ movq %rax, 8+pbar_board_tit(%rip)
+ jmp .L22
+.L21:
+ movq -24(%rbp), %rax
+ movl 7984020(%rax), %eax
+ testl %eax, %eax
+ je .L23
+ movsd .LC3(%rip), %xmm0
+ movsd %xmm0, 8+pbar_board_tit(%rip)
+ jmp .L22
+.L23:
+ pxor %xmm0, %xmm0
+ movsd %xmm0, 8+pbar_board_tit(%rip)
+.L22:
+ movq 8+pbar_board_tit(%rip), %rbx
+ call gtk_progress_bar_get_type@PLT
+ movq %rax, %rdx
+ movq pbar_board_tit(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, -56(%rbp)
+ movsd -56(%rbp), %xmm0
+ movq %rax, %rdi
+ call gtk_progress_bar_set_fraction@PLT
+ movq -32(%rbp), %rdx
+ movq -24(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call board_loop
+ movq -48(%rbp), %rax
+ movq %rax, %rdx
+ movl $80, %esi
+ leaq 8+label_stit(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ call gtk_label_get_type@PLT
+ movq %rax, %rdx
+ movq label_stit(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ leaq 8+label_stit(%rip), %rsi
+ movq %rax, %rdi
+ call gtk_label_set_text@PLT
+ movq -24(%rbp), %rax
+ movl 7984028(%rax), %eax
+ testl %eax, %eax
+ jne .L24
+ leaq timeout(%rip), %rdx
+ leaq callback_timeout(%rip), %rsi
+ movl $1, %edi
+ call g_timeout_add_seconds@PLT
+ movl %eax, timeout(%rip)
+.L24:
+ movq box_board(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show_all@PLT
+ nop
+ addq $56, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE215:
+ .size show_board, .-show_board
+ .type board_loop, @function
+board_loop:
+.LFB216:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L26
+.L29:
+ movl $0, -8(%rbp)
+ jmp .L27
+.L28:
+ movq -24(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl 12(%rax,%rdx,4), %eax
+ movl %eax, %edi
+ call set_char
+ movl %eax, %esi
+ movl -8(%rbp), %eax
+ movslq %eax, %rdx
+ movl -4(%rbp), %eax
+ movslq %eax, %rcx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ imulq $1584, %rcx, %rdx
+ addq %rax, %rdx
+ leaq 8+field(%rip), %rax
+ addq %rdx, %rax
+ movb %sil, (%rax)
+ movl -8(%rbp), %eax
+ movslq %eax, %rdx
+ movq %rdx, %rax
+ addq %rax, %rax
+ addq %rdx, %rax
+ salq $4, %rax
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $1584, %rdx, %rdx
+ addq %rax, %rdx
+ leaq field(%rip), %rax
+ addq %rdx, %rax
+ movq %rax, %rdi
+ call show_char
+ addl $1, -8(%rbp)
+.L27:
+ movq -24(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jg .L28
+ addl $1, -4(%rbp)
+.L26:
+ movq -24(%rbp), %rax
+ movl (%rax), %eax
+ cmpl -4(%rbp), %eax
+ jg .L29
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE216:
+ .size board_loop, .-board_loop
+ .type set_char, @function
+set_char:
+.LFB217:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl %edi, -20(%rbp)
+ cmpl $17, -20(%rbp)
+ ja .L31
+ movl -20(%rbp), %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L33(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L33(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L33:
+ .long .L32-.L33
+ .long .L34-.L33
+ .long .L35-.L33
+ .long .L36-.L33
+ .long .L37-.L33
+ .long .L38-.L33
+ .long .L39-.L33
+ .long .L40-.L33
+ .long .L41-.L33
+ .long .L42-.L33
+ .long .L43-.L33
+ .long .L44-.L33
+ .long .L45-.L33
+ .long .L46-.L33
+ .long .L47-.L33
+ .long .L48-.L33
+ .long .L49-.L33
+ .long .L50-.L33
+ .text
+.L32:
+ movb $35, -1(%rbp)
+ jmp .L31
+.L34:
+ movb $43, -1(%rbp)
+ jmp .L31
+.L35:
+ movb $42, -1(%rbp)
+ jmp .L31
+.L36:
+ movb $45, -1(%rbp)
+ jmp .L31
+.L37:
+ movb $118, -1(%rbp)
+ jmp .L31
+.L38:
+ movb $32, -1(%rbp)
+ jmp .L31
+.L39:
+ movb $49, -1(%rbp)
+ jmp .L31
+.L40:
+ movb $50, -1(%rbp)
+ jmp .L31
+.L41:
+ movb $51, -1(%rbp)
+ jmp .L31
+.L42:
+ movb $52, -1(%rbp)
+ jmp .L31
+.L43:
+ movb $53, -1(%rbp)
+ jmp .L31
+.L44:
+ movb $54, -1(%rbp)
+ jmp .L31
+.L45:
+ movb $55, -1(%rbp)
+ jmp .L31
+.L46:
+ movb $56, -1(%rbp)
+ jmp .L31
+.L47:
+ movb $33, -1(%rbp)
+ jmp .L31
+.L48:
+ movb $70, -1(%rbp)
+ jmp .L31
+.L49:
+ movb $63, -1(%rbp)
+ jmp .L31
+.L50:
+ movb $102, -1(%rbp)
+ nop
+.L31:
+ movzbl -1(%rbp), %eax
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE217:
+ .size set_char, .-set_char
+ .section .rodata
+.LC4:
+ .string "%c"
+ .text
+ .type show_char, @function
+show_char:
+.LFB218:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq -24(%rbp), %rax
+ movzbl 8(%rax), %eax
+ movsbl %al, %edx
+ leaq -2(%rbp), %rax
+ leaq .LC4(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call sprintf@PLT
+ call gtk_button_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdx
+ leaq -2(%rbp), %rax
+ movq %rax, %rsi
+ movq %rdx, %rdi
+ call gtk_button_set_label@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE218:
+ .size show_char, .-show_char
+ .section .rodata
+.LC5:
+ .string "clicked"
+.LC6:
+ .string "toggled"
+.LC7:
+ .string "activate"
+ .text
+ .type help_init, @function
+help_init:
+.LFB219:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $24, %rsp
+ .cfi_offset 3, -24
+ movq %rdi, -24(%rbp)
+ movl $0, %esi
+ movl $0, %edi
+ call gtk_vbox_new@PLT
+ movq %rax, box_help_in(%rip)
+ movq box_help_in(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $5, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movabsq $7307164201690095451, %rax
+ movq %rax, 8+button(%rip)
+ movabsq $28823075096327265, %rax
+ movq %rax, 16+button(%rip)
+ movabsq $3557597914868312131, %rax
+ movq %rax, 112+button(%rip)
+ movb $0, 120+button(%rip)
+ movabsq $3629655508906240067, %rax
+ movq %rax, 216+button(%rip)
+ movb $0, 224+button(%rip)
+ movl $1969311839, 8+tbutton(%rip)
+ movw $25971, 12+tbutton(%rip)
+ movb $0, 14+tbutton(%rip)
+ movabsq $7957652872870518619, %rax
+ movq %rax, 88+tbutton(%rip)
+ movl $1970170228, 96+tbutton(%rip)
+ movw $101, 100+tbutton(%rip)
+ movl $1986089823, 320+button(%rip)
+ movw $101, 324+button(%rip)
+ movabsq $7881701908294691142, %rax
+ movq %rax, 16+entry_fname(%rip)
+ movw $14949, 24+entry_fname(%rip)
+ movb $0, 26+entry_fname(%rip)
+ movabsq $7881701908513386329, %rax
+ movq %rax, 16+entry_name(%rip)
+ movw $14949, 24+entry_name(%rip)
+ movb $0, 26+entry_name(%rip)
+ movl $1769296223, 424+button(%rip)
+ movw $116, 428+button(%rip)
+ movl $8, 88+button(%rip)
+ movl $9, 192+button(%rip)
+ movl $10, 296+button(%rip)
+ movl $5, 168+tbutton(%rip)
+ movl $6, 400+button(%rip)
+ movl $12, 504+button(%rip)
+ movl $5, 172+tbutton(%rip)
+ movq -24(%rbp), %rax
+ movq %rax, 96+button(%rip)
+ movq -24(%rbp), %rax
+ movq %rax, 200+button(%rip)
+ movq -24(%rbp), %rax
+ movq %rax, 304+button(%rip)
+ movq -24(%rbp), %rax
+ movq %rax, 176+tbutton(%rip)
+ movq -24(%rbp), %rax
+ movq %rax, 408+button(%rip)
+ movq -24(%rbp), %rax
+ movq %rax, 512+button(%rip)
+ leaq 8+button(%rip), %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, button(%rip)
+ leaq 112+button(%rip), %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, 104+button(%rip)
+ leaq 216+button(%rip), %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, 208+button(%rip)
+ leaq 8+tbutton(%rip), %rdi
+ call gtk_toggle_button_new_with_mnemonic@PLT
+ movq %rax, tbutton(%rip)
+ leaq 320+button(%rip), %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, 312+button(%rip)
+ leaq 16+entry_fname(%rip), %rdi
+ call gtk_label_new@PLT
+ movq %rax, 8+entry_fname(%rip)
+ call gtk_entry_new@PLT
+ movq %rax, entry_fname(%rip)
+ leaq 16+entry_name(%rip), %rdi
+ call gtk_label_new@PLT
+ movq %rax, 8+entry_name(%rip)
+ call gtk_entry_new@PLT
+ movq %rax, entry_name(%rip)
+ leaq 424+button(%rip), %rdi
+ call gtk_button_new_with_mnemonic@PLT
+ movq %rax, 416+button(%rip)
+ call gtk_toggle_button_get_type@PLT
+ movq %rax, %rdx
+ movq tbutton(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %esi
+ movq %rax, %rdi
+ call gtk_toggle_button_set_active@PLT
+ movq button(%rip), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ leaq button(%rip), %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC5(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq 104+button(%rip), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ leaq 104+button(%rip), %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC5(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq 208+button(%rip), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ leaq 208+button(%rip), %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC5(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq tbutton(%rip), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ leaq tbutton(%rip), %rcx
+ leaq callback_tbutton(%rip), %rdx
+ leaq .LC6(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq 312+button(%rip), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ leaq 312+button(%rip), %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC5(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq entry_fname(%rip), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ leaq entry_fname(%rip), %rcx
+ leaq callback_entry_fname(%rip), %rdx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq entry_name(%rip), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ leaq entry_name(%rip), %rcx
+ leaq callback_entry_str(%rip), %rdx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq 416+button(%rip), %rax
+ movl $0, %r9d
+ movl $0, %r8d
+ leaq 416+button(%rip), %rcx
+ leaq callback_button(%rip), %rdx
+ leaq .LC5(%rip), %rsi
+ movq %rax, %rdi
+ call g_signal_connect_data@PLT
+ movq button(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_help_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq 104+button(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_help_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq 208+button(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_help_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq tbutton(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_help_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq 312+button(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_help_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq 8+entry_fname(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_help_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq entry_fname(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_help_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq 8+entry_name(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_help_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq entry_name(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_help_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $1, %ecx
+ movl $1, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ movq 416+button(%rip), %rbx
+ call gtk_box_get_type@PLT
+ movq %rax, %rdx
+ movq box_help_in(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_box_pack_start@PLT
+ nop
+ addq $24, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE219:
+ .size help_init, .-help_init
+ .type show_help, @function
+show_help:
+.LFB220:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq -8(%rbp), %rax
+ movl 7984028(%rax), %edx
+ movl last_help(%rip), %eax
+ cmpl %eax, %edx
+ je .L64
+ movq -8(%rbp), %rax
+ movl 7984028(%rax), %eax
+ cmpl $5, %eax
+ ja .L56
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L58(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L58(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L58:
+ .long .L57-.L58
+ .long .L59-.L58
+ .long .L60-.L58
+ .long .L61-.L58
+ .long .L62-.L58
+ .long .L63-.L58
+ .text
+.L57:
+ call show_help_play
+ jmp .L56
+.L61:
+ call show_help_pause
+ jmp .L56
+.L63:
+ call show_help_xyzzy
+ jmp .L56
+.L62:
+ call show_help_cheat
+ jmp .L56
+.L59:
+ call show_help_safe
+ jmp .L56
+.L60:
+ call show_help_gameover
+ nop
+.L56:
+ movq -8(%rbp), %rax
+ movl 7984028(%rax), %eax
+ movl %eax, last_help(%rip)
+ movq box_help_in(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq box_help(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+.L64:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE220:
+ .size show_help, .-show_help
+ .type show_help_start, @function
+show_help_start:
+.LFB221:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 104+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 208+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq tbutton(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 312+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 8+entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 8+entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 416+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movl $7, last_help(%rip)
+ movq box_help_in(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq box_help(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE221:
+ .size show_help_start, .-show_help_start
+ .type show_help_play, @function
+show_help_play:
+.LFB222:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 104+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 208+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq tbutton(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 312+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 8+entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 8+entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 416+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE222:
+ .size show_help_play, .-show_help_play
+ .type show_help_pause, @function
+show_help_pause:
+.LFB223:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 104+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 208+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq tbutton(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 312+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 8+entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 8+entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 416+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE223:
+ .size show_help_pause, .-show_help_pause
+ .type show_help_xyzzy, @function
+show_help_xyzzy:
+.LFB224:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 104+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 208+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq tbutton(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 312+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 8+entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 8+entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 416+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE224:
+ .size show_help_xyzzy, .-show_help_xyzzy
+ .type show_help_cheat, @function
+show_help_cheat:
+.LFB225:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 104+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 208+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq tbutton(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 312+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 8+entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 8+entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 416+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE225:
+ .size show_help_cheat, .-show_help_cheat
+ .type show_help_safe, @function
+show_help_safe:
+.LFB226:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 104+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 208+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq tbutton(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 312+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ movq 8+entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 8+entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 416+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE226:
+ .size show_help_safe, .-show_help_safe
+ .type show_help_gameover, @function
+show_help_gameover:
+.LFB227:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 104+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 208+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq tbutton(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 312+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 8+entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_fname(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 8+entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq entry_name(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_hide@PLT
+ movq 416+button(%rip), %rax
+ movq %rax, %rdi
+ call gtk_widget_show@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE227:
+ .size show_help_gameover, .-show_help_gameover
+ .type callback_field, @function
+callback_field:
+.LFB228:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $48, %rsp
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movq %rdx, -40(%rbp)
+ movl state(%rip), %eax
+ testl %eax, %eax
+ jne .L73
+ movl timeout(%rip), %eax
+ testl %eax, %eax
+ je .L73
+ movl timeout(%rip), %eax
+ movl %eax, %edi
+ call g_source_remove@PLT
+.L73:
+ movq -40(%rbp), %rax
+ movq %rax, -8(%rbp)
+ movq -8(%rbp), %rax
+ movq 24(%rax), %rax
+ movq -8(%rbp), %rdx
+ movl 12(%rdx), %edx
+ movl %edx, (%rax)
+ movq -8(%rbp), %rax
+ movq 32(%rax), %rax
+ movq -8(%rbp), %rdx
+ movl 16(%rdx), %edx
+ movl %edx, (%rax)
+ movq -32(%rbp), %rax
+ movl 52(%rax), %eax
+ cmpl $1, %eax
+ je .L75
+ cmpl $3, %eax
+ je .L76
+ jmp .L74
+.L75:
+ movq -32(%rbp), %rax
+ movl (%rax), %eax
+ cmpl $4, %eax
+ jne .L80
+ movq -8(%rbp), %rax
+ movq 40(%rax), %rax
+ movl $1, (%rax)
+ jmp .L80
+.L76:
+ movq -32(%rbp), %rax
+ movl (%rax), %eax
+ cmpl $4, %eax
+ jne .L81
+ movq -8(%rbp), %rax
+ movq 40(%rax), %rax
+ movl $2, (%rax)
+ jmp .L81
+.L80:
+ nop
+ jmp .L74
+.L81:
+ nop
+.L74:
+ call gtk_main_quit@PLT
+ movl $0, %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE228:
+ .size callback_field, .-callback_field
+ .type callback_ebox, @function
+callback_ebox:
+.LFB229:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $48, %rsp
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movq %rdx, -40(%rbp)
+ movl state(%rip), %eax
+ testl %eax, %eax
+ jne .L83
+ movl timeout(%rip), %eax
+ testl %eax, %eax
+ je .L83
+ movl timeout(%rip), %eax
+ movl %eax, %edi
+ call g_source_remove@PLT
+.L83:
+ movq -40(%rbp), %rax
+ movq %rax, -8(%rbp)
+ movq -32(%rbp), %rax
+ movl 52(%rax), %eax
+ cmpl $1, %eax
+ je .L85
+ cmpl $3, %eax
+ jmp .L84
+.L85:
+ movq -32(%rbp), %rax
+ movl (%rax), %eax
+ cmpl $4, %eax
+ jne .L89
+ movq -8(%rbp), %rax
+ movq 16(%rax), %rax
+ movq -8(%rbp), %rdx
+ movl 8(%rdx), %edx
+ movl %edx, (%rax)
+.L89:
+ nop
+.L84:
+ call gtk_main_quit@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE229:
+ .size callback_ebox, .-callback_ebox
+ .type callback_button, @function
+callback_button:
+.LFB230:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movl state(%rip), %eax
+ testl %eax, %eax
+ jne .L91
+ movl timeout(%rip), %eax
+ testl %eax, %eax
+ je .L91
+ movl timeout(%rip), %eax
+ movl %eax, %edi
+ call g_source_remove@PLT
+.L91:
+ movq -32(%rbp), %rax
+ movq %rax, -8(%rbp)
+ movq -8(%rbp), %rax
+ movq 96(%rax), %rax
+ movq -8(%rbp), %rdx
+ movl 88(%rdx), %edx
+ movl %edx, (%rax)
+ call gtk_main_quit@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE230:
+ .size callback_button, .-callback_button
+ .type callback_tbutton, @function
+callback_tbutton:
+.LFB231:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $40, %rsp
+ .cfi_offset 3, -24
+ movq %rdi, -40(%rbp)
+ movq %rsi, -48(%rbp)
+ movl state(%rip), %eax
+ testl %eax, %eax
+ jne .L93
+ movl timeout(%rip), %eax
+ testl %eax, %eax
+ je .L93
+ movl timeout(%rip), %eax
+ movl %eax, %edi
+ call g_source_remove@PLT
+.L93:
+ movq -48(%rbp), %rax
+ movq %rax, -24(%rbp)
+ call gtk_toggle_button_get_type@PLT
+ movq %rax, %rdx
+ movq -40(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdi
+ call gtk_toggle_button_get_active@PLT
+ testl %eax, %eax
+ je .L94
+ movq -24(%rbp), %rax
+ movq 176(%rax), %rax
+ movq -24(%rbp), %rdx
+ movl 168(%rdx), %edx
+ movl %edx, (%rax)
+ movq -24(%rbp), %rax
+ leaq 88(%rax), %rbx
+ call gtk_button_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_button_set_label@PLT
+ jmp .L95
+.L94:
+ movq -24(%rbp), %rax
+ movq 176(%rax), %rax
+ movq -24(%rbp), %rdx
+ movl 172(%rdx), %edx
+ movl %edx, (%rax)
+ movq -24(%rbp), %rax
+ leaq 8(%rax), %rbx
+ call gtk_button_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rbx, %rsi
+ movq %rax, %rdi
+ call gtk_button_set_label@PLT
+.L95:
+ call gtk_main_quit@PLT
+ nop
+ addq $40, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE231:
+ .size callback_tbutton, .-callback_tbutton
+ .section .rodata
+.LC8:
+ .string "Error %i"
+ .text
+ .type callback_entry_fname, @function
+callback_entry_fname:
+.LFB232:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ pushq %rbx
+ subq $136, %rsp
+ .cfi_offset 3, -24
+ movq %rdi, -136(%rbp)
+ movq %rsi, -144(%rbp)
+ movq -144(%rbp), %rax
+ movq %rax, -24(%rbp)
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdi
+ call gtk_entry_get_text@PLT
+ movq %rax, -32(%rbp)
+ movq -24(%rbp), %rax
+ movq 104(%rax), %rsi
+ movq -24(%rbp), %rax
+ movq 96(%rax), %rax
+ movq -32(%rbp), %rdx
+ movq %rdx, %rcx
+ movl $0, %edx
+ movq %rax, %rdi
+ call alx_sscan_fname@PLT
+ movl %eax, -36(%rbp)
+ cmpl $0, -36(%rbp)
+ je .L97
+ movl -36(%rbp), %edx
+ leaq -128(%rbp), %rax
+ movl %edx, %ecx
+ leaq .LC8(%rip), %rdx
+ movl $80, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdx
+ leaq -128(%rbp), %rax
+ movq %rax, %rsi
+ movq %rdx, %rdi
+ call gtk_entry_set_text@PLT
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movzwl 106(%rax), %eax
+ movzwl %ax, %ebx
+ call gtk_editable_get_type@PLT
+ movq %rax, %rdx
+ movq -24(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movl %ebx, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call gtk_editable_select_region@PLT
+.L97:
+ call gtk_main_quit@PLT
+ nop
+ addq $136, %rsp
+ popq %rbx
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE232:
+ .size callback_entry_fname, .-callback_entry_fname
+ .section .rodata
+.LC9:
+ .string "%s"
+ .text
+ .type callback_entry_str, @function
+callback_entry_str:
+.LFB233:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $112, %rsp
+ movq %rdi, -104(%rbp)
+ movq %rsi, -112(%rbp)
+ movq -112(%rbp), %rax
+ movq %rax, -8(%rbp)
+ call gtk_entry_get_type@PLT
+ movq %rax, %rdx
+ movq -8(%rbp), %rax
+ movq (%rax), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call g_type_check_instance_cast@PLT
+ movq %rax, %rdi
+ call gtk_entry_get_text@PLT
+ movq %rax, -16(%rbp)
+ movq -8(%rbp), %rax
+ movl 104(%rax), %eax
+ movslq %eax, %rsi
+ movq -8(%rbp), %rax
+ movq 96(%rax), %rax
+ movq -16(%rbp), %rdx
+ movq %rdx, %rcx
+ leaq .LC9(%rip), %rdx
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ call gtk_main_quit@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE233:
+ .size callback_entry_str, .-callback_entry_str
+ .type callback_timeout, @function
+callback_timeout:
+.LFB234:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq -24(%rbp), %rax
+ movq %rax, -8(%rbp)
+ movq -8(%rbp), %rax
+ movq 8(%rax), %rax
+ movq -8(%rbp), %rdx
+ movl 4(%rdx), %edx
+ movl %edx, (%rax)
+ call gtk_main_quit@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE234:
+ .size callback_timeout, .-callback_timeout
+ .section .rodata
+ .align 8
+.LC3:
+ .long 0
+ .long 1072693248
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/player/tmp/player_iface.s b/modules/player/tmp/player_iface.s
new file mode 100644
index 0000000..01fc247
--- /dev/null
+++ b/modules/player/tmp/player_iface.s
@@ -0,0 +1,930 @@
+ .file "player_iface.c"
+ .comm player_iface_mode,4,4
+ .local player_iface_position
+ .comm player_iface_position,20,16
+ .local player_action
+ .comm player_action,4,4
+ .text
+ .globl player_iface_init
+ .type player_iface_init, @function
+player_iface_init:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl %edi, -4(%rbp)
+ movl %esi, -8(%rbp)
+ movl -4(%rbp), %eax
+ movl %eax, player_iface_position(%rip)
+ movl -8(%rbp), %eax
+ movl %eax, 4+player_iface_position(%rip)
+ movl player_iface_mode(%rip), %eax
+ cmpl $2, %eax
+ je .L3
+ cmpl $3, %eax
+ je .L4
+ cmpl $1, %eax
+ jmp .L2
+.L3:
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %eax
+ movl %edx, %esi
+ movl %eax, %edi
+ call player_tui_init@PLT
+ jmp .L2
+.L4:
+ leaq player_action(%rip), %rsi
+ leaq player_iface_position(%rip), %rdi
+ call player_gui_init@PLT
+ nop
+.L2:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size player_iface_init, .-player_iface_init
+ .globl player_iface_start
+ .type player_iface_start, @function
+player_iface_start:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $80, %rsp
+ movq %rdi, -72(%rbp)
+ movq %rsi, -80(%rbp)
+ leaq -32(%rbp), %rax
+ movl $1918989395, (%rax)
+ movw $14964, 4(%rax)
+ movb $0, 6(%rax)
+ leaq -64(%rbp), %rax
+ movabsq $2340781297665454128, %rcx
+ movq %rcx, (%rax)
+ movw $48, 8(%rax)
+ movl $0, 8+player_iface_position(%rip)
+ movl $0, 12+player_iface_position(%rip)
+ movl $0, 16+player_iface_position(%rip)
+.L12:
+ movl player_iface_mode(%rip), %eax
+ cmpl $2, %eax
+ je .L8
+ cmpl $3, %eax
+ je .L9
+ cmpl $1, %eax
+ jne .L7
+ leaq -64(%rbp), %rdx
+ leaq -32(%rbp), %rax
+ leaq player_action(%rip), %rcx
+ movq %rax, %rsi
+ leaq player_iface_position(%rip), %rdi
+ call player_clui_start@PLT
+ jmp .L7
+.L8:
+ leaq -64(%rbp), %rdx
+ leaq -32(%rbp), %rax
+ leaq player_action(%rip), %rcx
+ movq %rax, %rsi
+ leaq player_iface_position(%rip), %rdi
+ call player_tui_start@PLT
+ jmp .L7
+.L9:
+ leaq -64(%rbp), %rdx
+ leaq -32(%rbp), %rax
+ movq %rax, %rsi
+ leaq player_iface_position(%rip), %rdi
+ call player_gui_start@PLT
+ nop
+.L7:
+ call player_iface_act_start
+ movl player_action(%rip), %eax
+ cmpl $1, %eax
+ je .L11
+ movl player_action(%rip), %eax
+ cmpl $12, %eax
+ jne .L12
+.L11:
+ movl 8+player_iface_position(%rip), %edx
+ movq -72(%rbp), %rax
+ movl %edx, (%rax)
+ movl 12+player_iface_position(%rip), %edx
+ movq -80(%rbp), %rax
+ movl %edx, (%rax)
+ movl player_action(%rip), %eax
+ cmpl $1, %eax
+ je .L14
+ cmpl $12, %eax
+ je .L15
+ jmp .L13
+.L14:
+ movl $0, -4(%rbp)
+ jmp .L13
+.L15:
+ movl $-1, -4(%rbp)
+ nop
+.L13:
+ movl -4(%rbp), %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size player_iface_start, .-player_iface_start
+ .section .rodata
+.LC0:
+ .string "Mines: %i/%i"
+.LC1:
+ .string "%02i:%02i:%02i | %i"
+.LC2:
+ .string "%02i:%02i | %i"
+ .text
+ .globl player_iface
+ .type player_iface, @function
+player_iface:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $96, %rsp
+ movq %rdi, -72(%rbp)
+ movq %rsi, -80(%rbp)
+ movq %rdx, -88(%rbp)
+ movq -72(%rbp), %rax
+ movl 7984028(%rax), %eax
+ cmpl $5, %eax
+ ja .L18
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L20(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L20(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L20:
+ .long .L19-.L20
+ .long .L21-.L20
+ .long .L22-.L20
+ .long .L19-.L20
+ .long .L19-.L20
+ .long .L19-.L20
+ .text
+.L19:
+ movq -72(%rbp), %rax
+ movl 8(%rax), %ecx
+ movq -72(%rbp), %rax
+ movl 7984020(%rax), %edx
+ leaq -32(%rbp), %rax
+ movl %ecx, %r8d
+ movl %edx, %ecx
+ leaq .LC0(%rip), %rdx
+ movl $20, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ jmp .L18
+.L22:
+ leaq -32(%rbp), %rax
+ movabsq $4996267836634382663, %rdi
+ movq %rdi, (%rax)
+ movw $82, 8(%rax)
+ jmp .L18
+.L21:
+ leaq -32(%rbp), %rax
+ movabsq $2408978811056385881, %rdi
+ movq %rdi, (%rax)
+ movb $0, 8(%rax)
+ nop
+.L18:
+ movq -80(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl $-1, %eax
+ je .L23
+ movq -80(%rbp), %rax
+ movl 4(%rax), %ecx
+ movl $-1851608123, %edx
+ movl %ecx, %eax
+ imull %edx
+ leal (%rdx,%rcx), %eax
+ sarl $11, %eax
+ movl %eax, %edx
+ movl %ecx, %eax
+ sarl $31, %eax
+ subl %eax, %edx
+ movl %edx, %eax
+ movl %eax, -4(%rbp)
+ movq -80(%rbp), %rax
+ movl 4(%rax), %esi
+ movl $-1851608123, %edx
+ movl %esi, %eax
+ imull %edx
+ leal (%rdx,%rsi), %eax
+ sarl $11, %eax
+ movl %eax, %edx
+ movl %esi, %eax
+ sarl $31, %eax
+ movl %edx, %ecx
+ subl %eax, %ecx
+ imull $3600, %ecx, %eax
+ subl %eax, %esi
+ movl %esi, %ecx
+ movl $-2004318071, %edx
+ movl %ecx, %eax
+ imull %edx
+ leal (%rdx,%rcx), %eax
+ sarl $5, %eax
+ movl %eax, %edx
+ movl %ecx, %eax
+ sarl $31, %eax
+ subl %eax, %edx
+ movl %edx, %eax
+ movl %eax, -8(%rbp)
+ movq -80(%rbp), %rax
+ movl 4(%rax), %ecx
+ movl $-2004318071, %edx
+ movl %ecx, %eax
+ imull %edx
+ leal (%rdx,%rcx), %eax
+ sarl $5, %eax
+ movl %eax, %edx
+ movl %ecx, %eax
+ sarl $31, %eax
+ subl %eax, %edx
+ movl %edx, %eax
+ movl %eax, -12(%rbp)
+ movl -12(%rbp), %eax
+ imull $60, %eax, %eax
+ subl %eax, %ecx
+ movl %ecx, %eax
+ movl %eax, -12(%rbp)
+ movq -80(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl $3599, %eax
+ jle .L24
+ movq -80(%rbp), %rax
+ movl 8(%rax), %ecx
+ movl -12(%rbp), %edi
+ movl -8(%rbp), %esi
+ movl -4(%rbp), %edx
+ leaq -64(%rbp), %rax
+ subq $8, %rsp
+ pushq %rcx
+ movl %edi, %r9d
+ movl %esi, %r8d
+ movl %edx, %ecx
+ leaq .LC1(%rip), %rdx
+ movl $20, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ addq $16, %rsp
+ jmp .L26
+.L24:
+ movq -80(%rbp), %rax
+ movl 8(%rax), %esi
+ movl -12(%rbp), %ecx
+ movl -8(%rbp), %edx
+ leaq -64(%rbp), %rax
+ movl %esi, %r9d
+ movl %ecx, %r8d
+ movl %edx, %ecx
+ leaq .LC2(%rip), %rdx
+ movl $20, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ jmp .L26
+.L23:
+ leaq -64(%rbp), %rax
+ movl $4271950, (%rax)
+.L26:
+ movl player_iface_mode(%rip), %eax
+ cmpl $2, %eax
+ je .L28
+ cmpl $3, %eax
+ je .L29
+ cmpl $1, %eax
+ jne .L27
+ leaq -64(%rbp), %rcx
+ leaq -32(%rbp), %rdx
+ movq -72(%rbp), %rax
+ leaq player_action(%rip), %r8
+ leaq player_iface_position(%rip), %rsi
+ movq %rax, %rdi
+ call player_clui@PLT
+ jmp .L27
+.L28:
+ leaq -64(%rbp), %rcx
+ leaq -32(%rbp), %rdx
+ movq -72(%rbp), %rax
+ leaq player_action(%rip), %r8
+ leaq player_iface_position(%rip), %rsi
+ movq %rax, %rdi
+ call player_tui@PLT
+ jmp .L27
+.L29:
+ leaq -64(%rbp), %rcx
+ leaq -32(%rbp), %rdx
+ movq -72(%rbp), %rax
+ leaq player_iface_position(%rip), %rsi
+ movq %rax, %rdi
+ call player_gui@PLT
+ nop
+.L27:
+ movq -88(%rbp), %rax
+ movq %rax, %rdi
+ call player_iface_act
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size player_iface, .-player_iface
+ .globl player_iface_save_name
+ .type player_iface_save_name, @function
+player_iface_save_name:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movl %edx, -20(%rbp)
+ movl player_iface_mode(%rip), %eax
+ cmpl $2, %eax
+ je .L33
+ cmpl $3, %eax
+ je .L34
+ cmpl $1, %eax
+ je .L35
+ jmp .L36
+.L35:
+ movl -20(%rbp), %edx
+ movq -16(%rbp), %rcx
+ movq -8(%rbp), %rax
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call player_clui_save_name@PLT
+ jmp .L32
+.L33:
+ movl -20(%rbp), %edx
+ movq -16(%rbp), %rcx
+ movq -8(%rbp), %rax
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call player_tui_save_name@PLT
+ jmp .L32
+.L34:
+ movl -20(%rbp), %edx
+ movq -16(%rbp), %rcx
+ movq -8(%rbp), %rax
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call player_gui_save_name@PLT
+ nop
+.L32:
+.L36:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size player_iface_save_name, .-player_iface_save_name
+ .globl player_iface_score_name
+ .type player_iface_score_name, @function
+player_iface_score_name:
+.LFB4:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movl %esi, -12(%rbp)
+ movl player_iface_mode(%rip), %eax
+ cmpl $2, %eax
+ je .L39
+ cmpl $3, %eax
+ je .L40
+ cmpl $1, %eax
+ je .L41
+ jmp .L42
+.L41:
+ movl -12(%rbp), %edx
+ movq -8(%rbp), %rax
+ movl %edx, %esi
+ movq %rax, %rdi
+ call player_clui_score_name@PLT
+ jmp .L38
+.L39:
+ movl -12(%rbp), %edx
+ movq -8(%rbp), %rax
+ movl %edx, %esi
+ movq %rax, %rdi
+ call player_tui_score_name@PLT
+ jmp .L38
+.L40:
+ movl -12(%rbp), %edx
+ movq -8(%rbp), %rax
+ movl %edx, %esi
+ movq %rax, %rdi
+ call player_gui_score_name@PLT
+ nop
+.L38:
+.L42:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE4:
+ .size player_iface_score_name, .-player_iface_score_name
+ .globl player_iface_cleanup
+ .type player_iface_cleanup, @function
+player_iface_cleanup:
+.LFB5:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl player_iface_mode(%rip), %eax
+ cmpl $2, %eax
+ je .L45
+ cmpl $3, %eax
+ je .L46
+ cmpl $1, %eax
+ jmp .L44
+.L45:
+ call player_tui_cleanup@PLT
+ jmp .L44
+.L46:
+ call player_gui_cleanup@PLT
+ nop
+.L44:
+ movq stdout(%rip), %rax
+ movq %rax, %rdi
+ call fflush@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE5:
+ .size player_iface_cleanup, .-player_iface_cleanup
+ .type player_iface_act, @function
+player_iface_act:
+.LFB6:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movl player_action(%rip), %eax
+ cmpl $17, %eax
+ ja .L58
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L51(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L51(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L51:
+ .long .L58-.L51
+ .long .L50-.L51
+ .long .L50-.L51
+ .long .L50-.L51
+ .long .L50-.L51
+ .long .L52-.L51
+ .long .L52-.L51
+ .long .L52-.L51
+ .long .L52-.L51
+ .long .L52-.L51
+ .long .L52-.L51
+ .long .L52-.L51
+ .long .L52-.L51
+ .long .L53-.L51
+ .long .L54-.L51
+ .long .L55-.L51
+ .long .L56-.L51
+ .long .L57-.L51
+ .text
+.L50:
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call player_iface_act_play
+ jmp .L49
+.L52:
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call player_iface_act_game
+ jmp .L49
+.L53:
+ call player_iface_move_up
+ jmp .L49
+.L54:
+ call player_iface_move_down
+ jmp .L49
+.L55:
+ call player_iface_move_right
+ jmp .L49
+.L56:
+ call player_iface_move_left
+ jmp .L49
+.L57:
+ call highlight_cursor
+ nop
+.L49:
+.L58:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE6:
+ .size player_iface_act, .-player_iface_act
+ .type player_iface_act_start, @function
+player_iface_act_start:
+.LFB7:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl player_action(%rip), %eax
+ cmpl $17, %eax
+ ja .L68
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L62(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L62(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L62:
+ .long .L68-.L62
+ .long .L69-.L62
+ .long .L68-.L62
+ .long .L68-.L62
+ .long .L68-.L62
+ .long .L68-.L62
+ .long .L68-.L62
+ .long .L68-.L62
+ .long .L68-.L62
+ .long .L68-.L62
+ .long .L68-.L62
+ .long .L68-.L62
+ .long .L69-.L62
+ .long .L63-.L62
+ .long .L64-.L62
+ .long .L65-.L62
+ .long .L66-.L62
+ .long .L67-.L62
+ .text
+.L63:
+ call player_iface_move_up
+ jmp .L60
+.L64:
+ call player_iface_move_down
+ jmp .L60
+.L65:
+ call player_iface_move_right
+ jmp .L60
+.L66:
+ call player_iface_move_left
+ jmp .L60
+.L67:
+ call highlight_cursor
+ jmp .L60
+.L69:
+ nop
+.L60:
+.L68:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE7:
+ .size player_iface_act_start, .-player_iface_act_start
+ .type player_iface_act_play, @function
+player_iface_act_play:
+.LFB8:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq %rdi, -8(%rbp)
+ movl player_action(%rip), %eax
+ cmpl $2, %eax
+ je .L72
+ cmpl $2, %eax
+ jg .L73
+ cmpl $1, %eax
+ je .L74
+ jmp .L71
+.L73:
+ cmpl $3, %eax
+ je .L75
+ cmpl $4, %eax
+ je .L76
+ jmp .L71
+.L74:
+ movl 8+player_iface_position(%rip), %ecx
+ movl 12+player_iface_position(%rip), %edx
+ movq -8(%rbp), %rax
+ movslq %edx, %rdx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl $1, 4(%rax,%rdx,4)
+ jmp .L71
+.L72:
+ movl 8+player_iface_position(%rip), %ecx
+ movl 12+player_iface_position(%rip), %edx
+ movq -8(%rbp), %rax
+ movslq %edx, %rdx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl $2, 4(%rax,%rdx,4)
+ jmp .L71
+.L75:
+ movl 8+player_iface_position(%rip), %ecx
+ movl 12+player_iface_position(%rip), %edx
+ movq -8(%rbp), %rax
+ movslq %edx, %rdx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl $3, 4(%rax,%rdx,4)
+ jmp .L71
+.L76:
+ movl 8+player_iface_position(%rip), %ecx
+ movl 12+player_iface_position(%rip), %edx
+ movq -8(%rbp), %rax
+ movslq %edx, %rdx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl $4, 4(%rax,%rdx,4)
+ nop
+.L71:
+ movq -8(%rbp), %rax
+ movl $1, (%rax)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE8:
+ .size player_iface_act_play, .-player_iface_act_play
+ .type player_iface_act_game, @function
+player_iface_act_game:
+.LFB9:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq %rdi, -8(%rbp)
+ movl player_action(%rip), %eax
+ subl $5, %eax
+ cmpl $7, %eax
+ ja .L88
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L80(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L80(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L80:
+ .long .L79-.L80
+ .long .L81-.L80
+ .long .L82-.L80
+ .long .L83-.L80
+ .long .L84-.L80
+ .long .L85-.L80
+ .long .L86-.L80
+ .long .L87-.L80
+ .text
+.L79:
+ movq -8(%rbp), %rax
+ movl $2, (%rax)
+ jmp .L78
+.L81:
+ movq -8(%rbp), %rax
+ movl $3, (%rax)
+ jmp .L78
+.L82:
+ movq -8(%rbp), %rax
+ movl $4, (%rax)
+ jmp .L78
+.L83:
+ movq -8(%rbp), %rax
+ movl $5, (%rax)
+ jmp .L78
+.L84:
+ movq -8(%rbp), %rax
+ movl $6, (%rax)
+ jmp .L78
+.L85:
+ movq -8(%rbp), %rax
+ movl $7, (%rax)
+ jmp .L78
+.L86:
+ movq -8(%rbp), %rax
+ movl $8, (%rax)
+ jmp .L78
+.L87:
+ movq -8(%rbp), %rax
+ movl $9, (%rax)
+ nop
+.L78:
+.L88:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE9:
+ .size player_iface_act_game, .-player_iface_act_game
+ .type player_iface_move_up, @function
+player_iface_move_up:
+.LFB10:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl 8+player_iface_position(%rip), %eax
+ testl %eax, %eax
+ je .L90
+ movl 8+player_iface_position(%rip), %eax
+ subl $1, %eax
+ movl %eax, 8+player_iface_position(%rip)
+ jmp .L92
+.L90:
+ movl player_iface_position(%rip), %eax
+ subl $1, %eax
+ movl %eax, 8+player_iface_position(%rip)
+.L92:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE10:
+ .size player_iface_move_up, .-player_iface_move_up
+ .type player_iface_move_down, @function
+player_iface_move_down:
+.LFB11:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl 8+player_iface_position(%rip), %eax
+ movl player_iface_position(%rip), %edx
+ subl $1, %edx
+ cmpl %edx, %eax
+ je .L94
+ movl 8+player_iface_position(%rip), %eax
+ addl $1, %eax
+ movl %eax, 8+player_iface_position(%rip)
+ jmp .L96
+.L94:
+ movl $0, 8+player_iface_position(%rip)
+.L96:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE11:
+ .size player_iface_move_down, .-player_iface_move_down
+ .type player_iface_move_right, @function
+player_iface_move_right:
+.LFB12:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl 12+player_iface_position(%rip), %eax
+ movl 4+player_iface_position(%rip), %edx
+ subl $1, %edx
+ cmpl %edx, %eax
+ je .L98
+ movl 12+player_iface_position(%rip), %eax
+ addl $1, %eax
+ movl %eax, 12+player_iface_position(%rip)
+ jmp .L100
+.L98:
+ movl $0, 12+player_iface_position(%rip)
+.L100:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE12:
+ .size player_iface_move_right, .-player_iface_move_right
+ .type player_iface_move_left, @function
+player_iface_move_left:
+.LFB13:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl 12+player_iface_position(%rip), %eax
+ testl %eax, %eax
+ je .L102
+ movl 12+player_iface_position(%rip), %eax
+ subl $1, %eax
+ movl %eax, 12+player_iface_position(%rip)
+ jmp .L104
+.L102:
+ movl 4+player_iface_position(%rip), %eax
+ subl $1, %eax
+ movl %eax, 12+player_iface_position(%rip)
+.L104:
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE13:
+ .size player_iface_move_left, .-player_iface_move_left
+ .type highlight_cursor, @function
+highlight_cursor:
+.LFB14:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl 16+player_iface_position(%rip), %eax
+ testl %eax, %eax
+ sete %al
+ movzbl %al, %eax
+ movl %eax, 16+player_iface_position(%rip)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE14:
+ .size highlight_cursor, .-highlight_cursor
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/player/tmp/player_tui.s b/modules/player/tmp/player_tui.s
new file mode 100644
index 0000000..3e952d5
--- /dev/null
+++ b/modules/player/tmp/player_tui.s
@@ -0,0 +1,3117 @@
+ .file "player_tui.c"
+ .comm flag_color,1,1
+ .local win_board
+ .comm win_board,8,8
+ .local win_help
+ .comm win_help,8,8
+ .local last_help
+ .comm last_help,4,4
+ .text
+ .globl player_tui_init
+ .type player_tui_init, @function
+player_tui_init:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $48, %rsp
+ movl %edi, -36(%rbp)
+ movl %esi, -40(%rbp)
+ call alx_resume_curses@PLT
+ movb $0, flag_color(%rip)
+ call has_colors@PLT
+ testb %al, %al
+ je .L2
+ movb $1, flag_color(%rip)
+ movl $7, %edx
+ movl $4, %esi
+ movl $1, %edi
+ call init_pair@PLT
+ movl $7, %edx
+ movl $2, %esi
+ movl $2, %edi
+ call init_pair@PLT
+ movl $7, %edx
+ movl $1, %esi
+ movl $3, %edi
+ call init_pair@PLT
+ movl $7, %edx
+ movl $4, %esi
+ movl $4, %edi
+ call init_pair@PLT
+ movl $7, %edx
+ movl $1, %esi
+ movl $5, %edi
+ call init_pair@PLT
+ movl $7, %edx
+ movl $6, %esi
+ movl $6, %edi
+ call init_pair@PLT
+ movl $7, %edx
+ movl $0, %esi
+ movl $7, %edi
+ call init_pair@PLT
+ movl $7, %edx
+ movl $0, %esi
+ movl $8, %edi
+ call init_pair@PLT
+ movl $7, %edx
+ movl $0, %esi
+ movl $9, %edi
+ call init_pair@PLT
+ movl $0, %edx
+ movl $7, %esi
+ movl $10, %edi
+ call init_pair@PLT
+ movl $0, %edx
+ movl $7, %esi
+ movl $11, %edi
+ call init_pair@PLT
+ movl $0, %edx
+ movl $1, %esi
+ movl $12, %edi
+ call init_pair@PLT
+ movl $0, %edx
+ movl $4, %esi
+ movl $13, %edi
+ call init_pair@PLT
+ movl $0, %edx
+ movl $1, %esi
+ movl $14, %edi
+ call init_pair@PLT
+ movl $0, %edx
+ movl $1, %esi
+ movl $15, %edi
+ call init_pair@PLT
+ movl $1, %edx
+ movl $0, %esi
+ movl $16, %edi
+ call init_pair@PLT
+ movl $1, %edx
+ movl $3, %esi
+ movl $17, %edi
+ call init_pair@PLT
+ movl $-1, %edx
+ movl $-1, %esi
+ movl $18, %edi
+ call init_pair@PLT
+.L2:
+ movl -36(%rbp), %eax
+ addl $2, %eax
+ movl %eax, -4(%rbp)
+ movl -40(%rbp), %eax
+ addl %eax, %eax
+ addl $3, %eax
+ movl %eax, -8(%rbp)
+ movl $0, -12(%rbp)
+ movl $11, -16(%rbp)
+ movl -16(%rbp), %ecx
+ movl -12(%rbp), %edx
+ movl -8(%rbp), %esi
+ movl -4(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, win_board(%rip)
+ movl $24, -20(%rbp)
+ movl $10, -24(%rbp)
+ movl $0, -28(%rbp)
+ movl $0, -32(%rbp)
+ movl -32(%rbp), %ecx
+ movl -28(%rbp), %edx
+ movl -24(%rbp), %esi
+ movl -20(%rbp), %eax
+ movl %eax, %edi
+ call newwin@PLT
+ movq %rax, win_help(%rip)
+ movq win_board(%rip), %rax
+ movl $1, %esi
+ movq %rax, %rdi
+ call keypad@PLT
+ call noecho@PLT
+ movq win_board(%rip), %rax
+ movl $100, %esi
+ movq %rax, %rdi
+ call wtimeout@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size player_tui_init, .-player_tui_init
+ .globl player_tui_start
+ .type player_tui_start, @function
+player_tui_start:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ movq %rcx, -32(%rbp)
+ call show_help_start
+ movq -24(%rbp), %rdx
+ movq -16(%rbp), %rcx
+ movq -8(%rbp), %rax
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call show_board_start
+ call usr_input
+ movl %eax, %edx
+ movq -32(%rbp), %rax
+ movl %edx, (%rax)
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size player_tui_start, .-player_tui_start
+ .globl player_tui
+ .type player_tui, @function
+player_tui:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $48, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ movq %rcx, -32(%rbp)
+ movq %r8, -40(%rbp)
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call show_help
+ movq -32(%rbp), %rcx
+ movq -24(%rbp), %rdx
+ movq -16(%rbp), %rsi
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call show_board
+ call usr_input
+ movl %eax, %edx
+ movq -40(%rbp), %rax
+ movl %edx, (%rax)
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size player_tui, .-player_tui
+ .section .rodata
+.LC0:
+ .string "File name:"
+ .text
+ .globl player_tui_save_name
+ .type player_tui_save_name, @function
+player_tui_save_name:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $48, %rsp
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movl %edx, -36(%rbp)
+ movl $60, -4(%rbp)
+ movl $10, -8(%rbp)
+ movl -8(%rbp), %ecx
+ movl -4(%rbp), %edx
+ movq -32(%rbp), %rsi
+ movq -24(%rbp), %rax
+ subq $8, %rsp
+ pushq $0
+ leaq .LC0(%rip), %r9
+ movl %ecx, %r8d
+ movl %edx, %ecx
+ movl $0, %edx
+ movq %rax, %rdi
+ movl $0, %eax
+ call alx_w_getfname@PLT
+ addq $16, %rsp
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size player_tui_save_name, .-player_tui_save_name
+ .section .rodata
+.LC1:
+ .string "Your name:"
+ .text
+ .globl player_tui_score_name
+ .type player_tui_score_name, @function
+player_tui_score_name:
+.LFB4:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movl %esi, -28(%rbp)
+ movl $60, -4(%rbp)
+ movl $10, -8(%rbp)
+ movl -8(%rbp), %ecx
+ movl -4(%rbp), %edx
+ movl -28(%rbp), %esi
+ movq -24(%rbp), %rax
+ movl $0, %r9d
+ leaq .LC1(%rip), %r8
+ movq %rax, %rdi
+ movl $0, %eax
+ call alx_w_getstr@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE4:
+ .size player_tui_score_name, .-player_tui_score_name
+ .globl player_tui_cleanup
+ .type player_tui_cleanup, @function
+player_tui_cleanup:
+.LFB5:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq win_board(%rip), %rax
+ movq %rax, %rdi
+ call alx_win_del@PLT
+ movq win_help(%rip), %rax
+ movq %rax, %rdi
+ call alx_win_del@PLT
+ call alx_pause_curses@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE5:
+ .size player_tui_cleanup, .-player_tui_cleanup
+ .type show_board_start, @function
+show_board_start:
+.LFB6:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ movq win_board(%rip), %rax
+ movq %rax, %rdi
+ call werase@PLT
+ movq win_board(%rip), %rax
+ subq $8, %rsp
+ pushq $0
+ pushq $0
+ pushq $0
+ movl $0, %r9d
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wborder@PLT
+ addq $32, %rsp
+ movq win_board(%rip), %rax
+ movq -16(%rbp), %rdx
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call alx_ncur_prn_title@PLT
+ movq win_board(%rip), %rax
+ movq -24(%rbp), %rdx
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call alx_ncur_prn_subtitle@PLT
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call board_loop_start
+ movq -8(%rbp), %rax
+ movl 12(%rax), %eax
+ addl $1, %eax
+ leal (%rax,%rax), %edx
+ movq -8(%rbp), %rax
+ movl 8(%rax), %eax
+ leal 1(%rax), %ecx
+ movq win_board(%rip), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ movq win_board(%rip), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE6:
+ .size show_board_start, .-show_board_start
+ .type board_loop_start, @function
+board_loop_start:
+.LFB7:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $48, %rsp
+ movq %rdi, -40(%rbp)
+ movl $43, -12(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L10
+.L13:
+ movl -4(%rbp), %eax
+ addl $1, %eax
+ movl %eax, -16(%rbp)
+ movl $0, -8(%rbp)
+ jmp .L11
+.L12:
+ movl -8(%rbp), %eax
+ addl $1, %eax
+ addl %eax, %eax
+ movl %eax, -20(%rbp)
+ movl -12(%rbp), %edx
+ movl -20(%rbp), %ecx
+ movl -16(%rbp), %eax
+ movl %ecx, %esi
+ movl %eax, %edi
+ call show_char
+ addl $1, -8(%rbp)
+.L11:
+ movq -40(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jg .L12
+ addl $1, -4(%rbp)
+.L10:
+ movq -40(%rbp), %rax
+ movl (%rax), %eax
+ cmpl -4(%rbp), %eax
+ jg .L13
+ movq -40(%rbp), %rax
+ movl 16(%rax), %eax
+ testl %eax, %eax
+ je .L15
+ movq -40(%rbp), %rdx
+ movl -12(%rbp), %eax
+ movq %rdx, %rsi
+ movl %eax, %edi
+ call highlight_cursor
+.L15:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE7:
+ .size board_loop_start, .-board_loop_start
+ .type highlight_cursor_start, @function
+highlight_cursor_start:
+.LFB8:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq -24(%rbp), %rax
+ movl 8(%rax), %eax
+ addl $1, %eax
+ movl %eax, -4(%rbp)
+ movq -24(%rbp), %rax
+ movl 12(%rax), %eax
+ addl $1, %eax
+ addl %eax, %eax
+ movl %eax, -8(%rbp)
+ movl $43, -12(%rbp)
+ movl $17, -16(%rbp)
+ movzbl flag_color(%rip), %eax
+ testb %al, %al
+ je .L17
+ movl -16(%rbp), %eax
+ cltq
+ salq $8, %rax
+ orq $2097152, %rax
+ movq %rax, %rcx
+ movq win_board(%rip), %rax
+ movl $0, %edx
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call wattr_on@PLT
+.L17:
+ movl -8(%rbp), %eax
+ leal -1(%rax), %edx
+ movq win_board(%rip), %rax
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L19
+ movq win_board(%rip), %rax
+ movl $60, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L19:
+ movq win_board(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L21
+ movl -12(%rbp), %eax
+ movslq %eax, %rdx
+ movq win_board(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L21:
+ movl -8(%rbp), %eax
+ leal 1(%rax), %edx
+ movq win_board(%rip), %rax
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L23
+ movq win_board(%rip), %rax
+ movl $62, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L23:
+ movzbl flag_color(%rip), %eax
+ testb %al, %al
+ je .L25
+ movl -16(%rbp), %eax
+ cltq
+ salq $8, %rax
+ orq $2097152, %rax
+ movq %rax, %rcx
+ movq win_board(%rip), %rax
+ movl $0, %edx
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call wattr_off@PLT
+.L25:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE8:
+ .size highlight_cursor_start, .-highlight_cursor_start
+ .type show_board, @function
+show_board:
+.LFB9:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq %rdx, -24(%rbp)
+ movq %rcx, -32(%rbp)
+ movq win_board(%rip), %rax
+ movq %rax, %rdi
+ call werase@PLT
+ movq win_board(%rip), %rax
+ subq $8, %rsp
+ pushq $0
+ pushq $0
+ pushq $0
+ movl $0, %r9d
+ movl $0, %r8d
+ movl $0, %ecx
+ movl $0, %edx
+ movl $0, %esi
+ movq %rax, %rdi
+ call wborder@PLT
+ addq $32, %rsp
+ movq win_board(%rip), %rax
+ movq -24(%rbp), %rdx
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call alx_ncur_prn_title@PLT
+ movq win_board(%rip), %rax
+ movq -32(%rbp), %rdx
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call alx_ncur_prn_subtitle@PLT
+ movq -16(%rbp), %rdx
+ movq -8(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call board_loop
+ movq -16(%rbp), %rax
+ movl 12(%rax), %eax
+ addl $1, %eax
+ leal (%rax,%rax), %edx
+ movq -16(%rbp), %rax
+ movl 8(%rax), %eax
+ leal 1(%rax), %ecx
+ movq win_board(%rip), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ movq win_board(%rip), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE9:
+ .size show_board, .-show_board
+ .type board_loop, @function
+board_loop:
+.LFB10:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $48, %rsp
+ movq %rdi, -40(%rbp)
+ movq %rsi, -48(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L28
+.L38:
+ movl -4(%rbp), %eax
+ addl $1, %eax
+ movl %eax, -12(%rbp)
+ movl $0, -8(%rbp)
+ jmp .L29
+.L31:
+ movl -8(%rbp), %eax
+ addl $1, %eax
+ addl %eax, %eax
+ movl %eax, -16(%rbp)
+ movq -40(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ addq $998004, %rdx
+ movl (%rax,%rdx,4), %eax
+ cmpl $1, %eax
+ jne .L30
+ movq -40(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl 12(%rax,%rdx,4), %eax
+ movl %eax, %edi
+ call set_char
+ movl %eax, -20(%rbp)
+ movl -20(%rbp), %edx
+ movl -16(%rbp), %ecx
+ movl -12(%rbp), %eax
+ movl %ecx, %esi
+ movl %eax, %edi
+ call show_char
+.L30:
+ addl $1, -8(%rbp)
+.L29:
+ movq -40(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jg .L31
+ movl $0, -8(%rbp)
+ jmp .L32
+.L34:
+ movl -8(%rbp), %eax
+ addl $1, %eax
+ addl %eax, %eax
+ movl %eax, -16(%rbp)
+ movq -40(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ addq $998004, %rdx
+ movl (%rax,%rdx,4), %eax
+ cmpl $1, %eax
+ je .L33
+ movq -40(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl 12(%rax,%rdx,4), %eax
+ movl %eax, %edi
+ call set_char
+ movl %eax, -20(%rbp)
+ movl -20(%rbp), %edx
+ movl -16(%rbp), %ecx
+ movl -12(%rbp), %eax
+ movl %ecx, %esi
+ movl %eax, %edi
+ call show_char
+.L33:
+ addl $1, -8(%rbp)
+.L32:
+ movq -40(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jg .L34
+ movl $0, -8(%rbp)
+ jmp .L35
+.L37:
+ movl -8(%rbp), %eax
+ addl $1, %eax
+ addl %eax, %eax
+ movl %eax, -16(%rbp)
+ movq -40(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ addq $998004, %rdx
+ movl (%rax,%rdx,4), %eax
+ cmpl $-1, %eax
+ jne .L36
+ movq -40(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl 12(%rax,%rdx,4), %eax
+ movl %eax, %edi
+ call set_char
+ movl %eax, -20(%rbp)
+ movl -20(%rbp), %edx
+ movl -16(%rbp), %ecx
+ movl -12(%rbp), %eax
+ movl %ecx, %esi
+ movl %eax, %edi
+ call show_char
+.L36:
+ addl $1, -8(%rbp)
+.L35:
+ movq -40(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jg .L37
+ addl $1, -4(%rbp)
+.L28:
+ movq -40(%rbp), %rax
+ movl (%rax), %eax
+ cmpl -4(%rbp), %eax
+ jg .L38
+ movq -48(%rbp), %rax
+ movl 16(%rax), %eax
+ testl %eax, %eax
+ je .L40
+ movq -48(%rbp), %rax
+ movl 8(%rax), %ecx
+ movq -48(%rbp), %rax
+ movl 12(%rax), %edx
+ movq -40(%rbp), %rax
+ movslq %edx, %rdx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl 12(%rax,%rdx,4), %eax
+ movl %eax, %edi
+ call set_char
+ movl %eax, -20(%rbp)
+ movq -48(%rbp), %rdx
+ movl -20(%rbp), %eax
+ movq %rdx, %rsi
+ movl %eax, %edi
+ call highlight_cursor
+.L40:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE10:
+ .size board_loop, .-board_loop
+ .type highlight_cursor, @function
+highlight_cursor:
+.LFB11:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movl %edi, -20(%rbp)
+ movq %rsi, -32(%rbp)
+ movq -32(%rbp), %rax
+ movl 8(%rax), %eax
+ addl $1, %eax
+ movl %eax, -4(%rbp)
+ movq -32(%rbp), %rax
+ movl 12(%rax), %eax
+ addl $1, %eax
+ addl %eax, %eax
+ movl %eax, -8(%rbp)
+ movl $17, -12(%rbp)
+ movzbl flag_color(%rip), %eax
+ testb %al, %al
+ je .L42
+ movl -12(%rbp), %eax
+ cltq
+ salq $8, %rax
+ orq $2097152, %rax
+ movq %rax, %rcx
+ movq win_board(%rip), %rax
+ movl $0, %edx
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call wattr_on@PLT
+.L42:
+ movl -8(%rbp), %eax
+ leal -1(%rax), %edx
+ movq win_board(%rip), %rax
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L44
+ movq win_board(%rip), %rax
+ movl $60, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L44:
+ movq win_board(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L46
+ movl -20(%rbp), %eax
+ movslq %eax, %rdx
+ movq win_board(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L46:
+ movl -8(%rbp), %eax
+ leal 1(%rax), %edx
+ movq win_board(%rip), %rax
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L48
+ movq win_board(%rip), %rax
+ movl $62, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L48:
+ movzbl flag_color(%rip), %eax
+ testb %al, %al
+ je .L50
+ movl -12(%rbp), %eax
+ cltq
+ salq $8, %rax
+ orq $2097152, %rax
+ movq %rax, %rcx
+ movq win_board(%rip), %rax
+ movl $0, %edx
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call wattr_off@PLT
+.L50:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE11:
+ .size highlight_cursor, .-highlight_cursor
+ .type set_char, @function
+set_char:
+.LFB12:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl %edi, -20(%rbp)
+ cmpl $17, -20(%rbp)
+ ja .L52
+ movl -20(%rbp), %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L54(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L54(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L54:
+ .long .L53-.L54
+ .long .L55-.L54
+ .long .L56-.L54
+ .long .L57-.L54
+ .long .L58-.L54
+ .long .L59-.L54
+ .long .L60-.L54
+ .long .L61-.L54
+ .long .L62-.L54
+ .long .L63-.L54
+ .long .L64-.L54
+ .long .L65-.L54
+ .long .L66-.L54
+ .long .L67-.L54
+ .long .L68-.L54
+ .long .L69-.L54
+ .long .L70-.L54
+ .long .L71-.L54
+ .text
+.L53:
+ movl $35, -4(%rbp)
+ jmp .L52
+.L55:
+ movl $43, -4(%rbp)
+ jmp .L52
+.L56:
+ movl $42, -4(%rbp)
+ jmp .L52
+.L57:
+ movl $45, -4(%rbp)
+ jmp .L52
+.L58:
+ movl $118, -4(%rbp)
+ jmp .L52
+.L59:
+ movl $32, -4(%rbp)
+ jmp .L52
+.L60:
+ movl $49, -4(%rbp)
+ jmp .L52
+.L61:
+ movl $50, -4(%rbp)
+ jmp .L52
+.L62:
+ movl $51, -4(%rbp)
+ jmp .L52
+.L63:
+ movl $52, -4(%rbp)
+ jmp .L52
+.L64:
+ movl $53, -4(%rbp)
+ jmp .L52
+.L65:
+ movl $54, -4(%rbp)
+ jmp .L52
+.L66:
+ movl $55, -4(%rbp)
+ jmp .L52
+.L67:
+ movl $56, -4(%rbp)
+ jmp .L52
+.L68:
+ movl $33, -4(%rbp)
+ jmp .L52
+.L69:
+ movl $70, -4(%rbp)
+ jmp .L52
+.L70:
+ movl $63, -4(%rbp)
+ jmp .L52
+.L71:
+ movl $102, -4(%rbp)
+ nop
+.L52:
+ movl -4(%rbp), %eax
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE12:
+ .size set_char, .-set_char
+ .type show_char, @function
+show_char:
+.LFB13:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movl %edi, -20(%rbp)
+ movl %esi, -24(%rbp)
+ movl %edx, -28(%rbp)
+ movl -28(%rbp), %eax
+ subl $32, %eax
+ cmpl $86, %eax
+ ja .L74
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L76(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L76(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L76:
+ .long .L75-.L76
+ .long .L77-.L76
+ .long .L74-.L76
+ .long .L78-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L79-.L76
+ .long .L80-.L76
+ .long .L74-.L76
+ .long .L80-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L81-.L76
+ .long .L82-.L76
+ .long .L83-.L76
+ .long .L84-.L76
+ .long .L85-.L76
+ .long .L86-.L76
+ .long .L87-.L76
+ .long .L88-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L89-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L90-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L91-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L74-.L76
+ .long .L79-.L76
+ .text
+.L81:
+ movl $1, -4(%rbp)
+ jmp .L92
+.L82:
+ movl $2, -4(%rbp)
+ jmp .L92
+.L83:
+ movl $3, -4(%rbp)
+ jmp .L92
+.L84:
+ movl $4, -4(%rbp)
+ jmp .L92
+.L85:
+ movl $5, -4(%rbp)
+ jmp .L92
+.L86:
+ movl $6, -4(%rbp)
+ jmp .L92
+.L87:
+ movl $7, -4(%rbp)
+ jmp .L92
+.L88:
+ movl $8, -4(%rbp)
+ jmp .L92
+.L75:
+ movl $9, -4(%rbp)
+ jmp .L92
+.L79:
+ movl $10, -4(%rbp)
+ jmp .L92
+.L80:
+ movl $11, -4(%rbp)
+ jmp .L92
+.L91:
+ movl $12, -4(%rbp)
+ jmp .L92
+.L89:
+ movl $13, -4(%rbp)
+ jmp .L92
+.L90:
+ movl $14, -4(%rbp)
+ jmp .L92
+.L77:
+ movl $15, -4(%rbp)
+ jmp .L92
+.L78:
+ movl $16, -4(%rbp)
+ jmp .L92
+.L74:
+ movl $16, -4(%rbp)
+ nop
+.L92:
+ movzbl flag_color(%rip), %eax
+ testb %al, %al
+ je .L93
+ movl -4(%rbp), %eax
+ cltq
+ salq $8, %rax
+ orq $2097152, %rax
+ movq %rax, %rcx
+ movq win_board(%rip), %rax
+ movl $0, %edx
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call wattr_on@PLT
+.L93:
+ movl -24(%rbp), %eax
+ leal -1(%rax), %edx
+ movq win_board(%rip), %rax
+ movl -20(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L95
+ movq win_board(%rip), %rax
+ movl $32, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L95:
+ movq win_board(%rip), %rax
+ movl -24(%rbp), %edx
+ movl -20(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L97
+ movl -28(%rbp), %eax
+ movslq %eax, %rdx
+ movq win_board(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L97:
+ movl -24(%rbp), %eax
+ leal 1(%rax), %edx
+ movq win_board(%rip), %rax
+ movl -20(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L99
+ movq win_board(%rip), %rax
+ movl $32, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L99:
+ movzbl flag_color(%rip), %eax
+ testb %al, %al
+ je .L101
+ movl -4(%rbp), %eax
+ cltq
+ salq $8, %rax
+ orq $2097152, %rax
+ movq %rax, %rcx
+ movq win_board(%rip), %rax
+ movl $0, %edx
+ movq %rcx, %rsi
+ movq %rax, %rdi
+ call wattr_off@PLT
+.L101:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE13:
+ .size show_char, .-show_char
+ .type usr_input, @function
+usr_input:
+.LFB14:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq win_board(%rip), %rax
+ movq %rax, %rdi
+ call wgetch@PLT
+ movl %eax, -8(%rbp)
+ movl -8(%rbp), %eax
+ cmpl $106, %eax
+ je .L104
+ cmpl $106, %eax
+ jg .L105
+ cmpl $48, %eax
+ je .L106
+ cmpl $48, %eax
+ jg .L107
+ cmpl $13, %eax
+ je .L108
+ cmpl $13, %eax
+ jg .L109
+ cmpl $8, %eax
+ je .L110
+ cmpl $10, %eax
+ je .L108
+ jmp .L103
+.L109:
+ cmpl $32, %eax
+ je .L111
+ cmpl $43, %eax
+ je .L108
+ jmp .L103
+.L107:
+ cmpl $51, %eax
+ je .L112
+ cmpl $51, %eax
+ jg .L113
+ cmpl $49, %eax
+ je .L114
+ cmpl $50, %eax
+ je .L115
+ jmp .L103
+.L113:
+ cmpl $102, %eax
+ je .L116
+ cmpl $104, %eax
+ je .L117
+ cmpl $99, %eax
+ je .L118
+ jmp .L103
+.L105:
+ cmpl $120, %eax
+ je .L119
+ cmpl $120, %eax
+ jg .L120
+ cmpl $112, %eax
+ je .L121
+ cmpl $112, %eax
+ jg .L122
+ cmpl $107, %eax
+ je .L123
+ cmpl $108, %eax
+ je .L124
+ jmp .L103
+.L122:
+ cmpl $113, %eax
+ je .L125
+ cmpl $115, %eax
+ je .L126
+ jmp .L103
+.L120:
+ cmpl $259, %eax
+ je .L123
+ cmpl $259, %eax
+ jg .L127
+ cmpl $257, %eax
+ je .L121
+ cmpl $258, %eax
+ je .L104
+ jmp .L103
+.L127:
+ cmpl $261, %eax
+ je .L124
+ cmpl $261, %eax
+ jl .L117
+ cmpl $263, %eax
+ je .L110
+ jmp .L103
+.L108:
+ movl $1, -4(%rbp)
+ jmp .L128
+.L111:
+ movl $2, -4(%rbp)
+ jmp .L128
+.L116:
+ movl $3, -4(%rbp)
+ jmp .L128
+.L110:
+ movl $4, -4(%rbp)
+ jmp .L128
+.L121:
+ movl $5, -4(%rbp)
+ jmp .L128
+.L126:
+ movl $6, -4(%rbp)
+ jmp .L128
+.L119:
+ movq win_board(%rip), %rax
+ movl $1000, %esi
+ movq %rax, %rdi
+ call wtimeout@PLT
+ movq win_board(%rip), %rax
+ movq %rax, %rdi
+ call wgetch@PLT
+ movl %eax, -8(%rbp)
+ cmpl $121, -8(%rbp)
+ jne .L129
+ movq win_board(%rip), %rax
+ movq %rax, %rdi
+ call wgetch@PLT
+ movl %eax, -8(%rbp)
+ cmpl $122, -8(%rbp)
+ jne .L129
+ movq win_board(%rip), %rax
+ movq %rax, %rdi
+ call wgetch@PLT
+ movl %eax, -8(%rbp)
+ cmpl $122, -8(%rbp)
+ jne .L129
+ movq win_board(%rip), %rax
+ movq %rax, %rdi
+ call wgetch@PLT
+ movl %eax, -8(%rbp)
+ cmpl $121, -8(%rbp)
+ jne .L129
+ movl $7, -4(%rbp)
+.L129:
+ movq win_board(%rip), %rax
+ movl $100, %esi
+ movq %rax, %rdi
+ call wtimeout@PLT
+ jmp .L128
+.L106:
+ movl $8, -4(%rbp)
+ jmp .L128
+.L114:
+ movl $9, -4(%rbp)
+ jmp .L128
+.L115:
+ movl $10, -4(%rbp)
+ jmp .L128
+.L112:
+ movl $11, -4(%rbp)
+ jmp .L128
+.L125:
+ movl $12, -4(%rbp)
+ jmp .L128
+.L117:
+ movl $16, -4(%rbp)
+ jmp .L128
+.L104:
+ movl $14, -4(%rbp)
+ jmp .L128
+.L123:
+ movl $13, -4(%rbp)
+ jmp .L128
+.L124:
+ movl $15, -4(%rbp)
+ jmp .L128
+.L118:
+ movl $17, -4(%rbp)
+ jmp .L128
+.L103:
+ movl $0, -4(%rbp)
+ nop
+.L128:
+ movl -4(%rbp), %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE14:
+ .size usr_input, .-usr_input
+ .type show_help, @function
+show_help:
+.LFB15:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq -8(%rbp), %rax
+ movl 7984028(%rax), %edx
+ movl last_help(%rip), %eax
+ cmpl %eax, %edx
+ je .L141
+ movq win_help(%rip), %rax
+ movq %rax, %rdi
+ call werase@PLT
+ movq -8(%rbp), %rax
+ movl 7984028(%rax), %eax
+ cmpl $5, %eax
+ ja .L133
+ movl %eax, %eax
+ leaq 0(,%rax,4), %rdx
+ leaq .L135(%rip), %rax
+ movl (%rdx,%rax), %eax
+ movslq %eax, %rdx
+ leaq .L135(%rip), %rax
+ addq %rdx, %rax
+ jmp *%rax
+ .section .rodata
+ .align 4
+ .align 4
+.L135:
+ .long .L134-.L135
+ .long .L136-.L135
+ .long .L137-.L135
+ .long .L138-.L135
+ .long .L139-.L135
+ .long .L140-.L135
+ .text
+.L134:
+ call show_help_play
+ jmp .L133
+.L138:
+ call show_help_pause
+ jmp .L133
+.L140:
+ call show_help_xyzzy
+ jmp .L133
+.L139:
+ call show_help_cheat
+ jmp .L133
+.L136:
+ call show_help_safe
+ jmp .L133
+.L137:
+ call show_help_gameover
+ nop
+.L133:
+ movq win_help(%rip), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movq -8(%rbp), %rax
+ movl 7984028(%rax), %eax
+ movl %eax, last_help(%rip)
+.L141:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE15:
+ .size show_help, .-show_help
+ .section .rodata
+.LC2:
+ .string "Move:"
+.LC3:
+ .string "Cursor:"
+.LC4:
+ .string " %c"
+.LC5:
+ .string "Step:"
+.LC6:
+ .string " Enter / %c"
+.LC7:
+ .string "Quit:"
+ .text
+ .type show_help_start, @function
+show_help_start:
+.LFB16:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq win_help(%rip), %rax
+ movq %rax, %rdi
+ call werase@PLT
+ movl $0, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -8(%rbp), %edx
+ leal 1(%rdx), %eax
+ movl %eax, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %ecx
+ movl %ecx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L144
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC2(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L144:
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L146
+ movq win_help(%rip), %rax
+ movl $104, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L146:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L148
+ movq win_help(%rip), %rax
+ movl $106, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L148:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L150
+ movq win_help(%rip), %rax
+ movl $107, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L150:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L152
+ movq win_help(%rip), %rax
+ movl $108, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L152:
+ addl $1, -4(%rbp)
+ movl $1, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L154
+ movq 352+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L154:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L156
+ movq 368+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L156:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L158
+ movq 360+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L158:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L160
+ movq 344+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L160:
+ addl $1, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L162
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC3(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L162:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $99, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L164
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC5(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L164:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $43, %r8d
+ leaq .LC6(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L166
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L166:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $113, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movq win_help(%rip), %rax
+ movq %rax, %rdi
+ call wrefresh@PLT
+ movl $7, last_help(%rip)
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE16:
+ .size show_help_start, .-show_help_start
+ .section .rodata
+.LC8:
+ .string "Flag:"
+.LC9:
+ .string " Space"
+.LC10:
+ .string "Possible:"
+.LC11:
+ .string "rm flag:"
+.LC12:
+ .string " Backspace"
+.LC13:
+ .string "Pause:"
+.LC14:
+ .string " Break / %c"
+.LC15:
+ .string "Save:"
+ .text
+ .type show_help_play, @function
+show_help_play:
+.LFB17:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl $0, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -8(%rbp), %edx
+ leal 1(%rdx), %eax
+ movl %eax, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %ecx
+ movl %ecx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L169
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC2(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L169:
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L171
+ movq win_help(%rip), %rax
+ movl $104, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L171:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L173
+ movq win_help(%rip), %rax
+ movl $106, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L173:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L175
+ movq win_help(%rip), %rax
+ movl $107, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L175:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L177
+ movq win_help(%rip), %rax
+ movl $108, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L177:
+ addl $1, -4(%rbp)
+ movl $1, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L179
+ movq 352+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L179:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L181
+ movq 368+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L181:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L183
+ movq 360+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L183:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L185
+ movq 344+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L185:
+ addl $1, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L187
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC3(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L187:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $99, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L189
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC5(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L189:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $43, %r8d
+ leaq .LC6(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L191
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC8(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L191:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ leaq .LC9(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L193
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC10(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L193:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $102, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L195
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC11(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L195:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ leaq .LC12(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L197
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC13(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L197:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $112, %r8d
+ leaq .LC14(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L199
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC15(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L199:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $115, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L201
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L201:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $113, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE17:
+ .size show_help_play, .-show_help_play
+ .section .rodata
+.LC16:
+ .string "Continue:"
+ .text
+ .type show_help_pause, @function
+show_help_pause:
+.LFB18:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl $0, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L204
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC3(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L204:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $99, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L206
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC16(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L206:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $112, %r8d
+ leaq .LC14(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L208
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC15(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L208:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $115, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L210
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L210:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $113, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE18:
+ .size show_help_pause, .-show_help_pause
+ .section .rodata
+.LC17:
+ .string "XYZZY:"
+.LC18:
+ .string "%c"
+.LC19:
+ .string "XYZZY off:"
+ .text
+ .type show_help_xyzzy, @function
+show_help_xyzzy:
+.LFB19:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl $0, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -8(%rbp), %edx
+ leal 1(%rdx), %eax
+ movl %eax, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %ecx
+ movl %ecx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L213
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC17(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L213:
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %esi
+ movl $49, %r8d
+ leaq .LC18(%rip), %rcx
+ movq %rax, %rdi
+ movl $0, %eax
+ call mvwprintw@PLT
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %esi
+ movl $50, %r8d
+ leaq .LC18(%rip), %rcx
+ movq %rax, %rdi
+ movl $0, %eax
+ call mvwprintw@PLT
+ addl $1, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L215
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC19(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L215:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $48, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -8(%rbp), %edx
+ leal 1(%rdx), %eax
+ movl %eax, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %ecx
+ movl %ecx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L217
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC2(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L217:
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L219
+ movq win_help(%rip), %rax
+ movl $104, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L219:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L221
+ movq win_help(%rip), %rax
+ movl $106, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L221:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L223
+ movq win_help(%rip), %rax
+ movl $107, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L223:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L225
+ movq win_help(%rip), %rax
+ movl $108, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L225:
+ addl $1, -4(%rbp)
+ movl $1, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L227
+ movq 352+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L227:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L229
+ movq 368+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L229:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L231
+ movq 360+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L231:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L233
+ movq 344+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L233:
+ addl $1, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L235
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC3(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L235:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $99, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L237
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC5(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L237:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $43, %r8d
+ leaq .LC6(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L239
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC8(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L239:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ leaq .LC9(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L241
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC10(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L241:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $102, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L243
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC11(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L243:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ leaq .LC12(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L245
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC15(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L245:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $115, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L247
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L247:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $113, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE19:
+ .size show_help_xyzzy, .-show_help_xyzzy
+ .type show_help_cheat, @function
+show_help_cheat:
+.LFB20:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl $0, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -8(%rbp), %edx
+ leal 1(%rdx), %eax
+ movl %eax, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %ecx
+ movl %ecx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L250
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC2(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L250:
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L252
+ movq win_help(%rip), %rax
+ movl $104, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L252:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L254
+ movq win_help(%rip), %rax
+ movl $106, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L254:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L256
+ movq win_help(%rip), %rax
+ movl $107, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L256:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L258
+ movq win_help(%rip), %rax
+ movl $108, %esi
+ movq %rax, %rdi
+ call waddch@PLT
+.L258:
+ addl $1, -4(%rbp)
+ movl $1, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L260
+ movq 352+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L260:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L262
+ movq 368+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L262:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L264
+ movq 360+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L264:
+ addl $2, -8(%rbp)
+ movq win_help(%rip), %rax
+ movl -8(%rbp), %edx
+ movl -4(%rbp), %ecx
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L266
+ movq 344+acs_map(%rip), %rdx
+ movq win_help(%rip), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call waddch@PLT
+.L266:
+ addl $1, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L268
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC3(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L268:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $99, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L270
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC5(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L270:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $43, %r8d
+ leaq .LC6(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L272
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC8(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L272:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ leaq .LC9(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L274
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC10(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L274:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $102, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L276
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC11(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L276:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ leaq .LC12(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L278
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC15(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L278:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $115, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L280
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L280:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $113, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE20:
+ .size show_help_cheat, .-show_help_cheat
+ .type show_help_safe, @function
+show_help_safe:
+.LFB21:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl $0, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L283
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC15(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L283:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $115, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L285
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L285:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $113, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE21:
+ .size show_help_safe, .-show_help_safe
+ .type show_help_gameover, @function
+show_help_gameover:
+.LFB22:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl $0, -4(%rbp)
+ movl $0, -8(%rbp)
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rcx
+ movl -8(%rbp), %edx
+ movl %eax, %esi
+ movq %rcx, %rdi
+ call wmove@PLT
+ cmpl $-1, %eax
+ je .L288
+ movq win_help(%rip), %rax
+ movl $-1, %edx
+ leaq .LC7(%rip), %rsi
+ movq %rax, %rdi
+ call waddnstr@PLT
+.L288:
+ movl -4(%rbp), %eax
+ leal 1(%rax), %edx
+ movl %edx, -4(%rbp)
+ movq win_help(%rip), %rdi
+ movl -8(%rbp), %edx
+ movl $113, %r8d
+ leaq .LC4(%rip), %rcx
+ movl %eax, %esi
+ movl $0, %eax
+ call mvwprintw@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE22:
+ .size show_help_gameover, .-show_help_gameover
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/save/Makefile b/modules/save/Makefile
index 9faa46b..614a58c 100644
--- a/modules/save/Makefile
+++ b/modules/save/Makefile
@@ -4,16 +4,16 @@
# directories
-OBJ_DIR = $(SAVE_DIR)/obj/
+TMP_DIR = $(SAVE_DIR)/tmp/
# target: dependencies
# action
all:
- $(Q)cd $(OBJ_DIR) && $(MAKE) && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) && cd ..
clean:
- $(Q)cd $(OBJ_DIR) && $(MAKE) clean && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) clean && cd ..
################################################################################
######## End of file ###########################################################
diff --git a/modules/save/obj/Makefile b/modules/save/tmp/Makefile
index 016a57b..07807b1 100644
--- a/modules/save/obj/Makefile
+++ b/modules/save/tmp/Makefile
@@ -4,16 +4,16 @@
# directories
-GAME_INC_DIR = $(GAME_DIR)/inc/
-PLAY_INC_DIR = $(PLAY_DIR)/inc/
+GAME_INC_DIR = $(GAME_DIR)/inc/
+PLAY_INC_DIR = $(PLAY_DIR)/inc/
-INC_DIR = $(SAVE_DIR)/inc/
-SRC_DIR = $(SAVE_DIR)/src/
+INC_DIR = $(SAVE_DIR)/inc/
+SRC_DIR = $(SAVE_DIR)/src/
# dependencies
-_ALL = save.o score.o
-ALL = $(_ALL) save_mod.o
+_ALL = save.o score.o
+ALL = $(_ALL) save_mod.o
SAVE_INC_PLAY = player_iface.h
SAVE_INC_GAME = game.h
@@ -45,18 +45,24 @@ all: $(ALL)
save_mod.o: $(_ALL)
$(Q)$(LD) -r $^ -o $@
- @echo "\tLD $@"
+ @echo " LD $@"
@echo ""
-save.o: $(SAVE_DEPS)
- $(Q)$(CC) $(CFLAGS) $(SAVE_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
+save.s: $(SAVE_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(SAVE_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+save.o: save.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
-score.o: $(SCORE_DEPS)
- $(Q)$(CC) $(CFLAGS) $(SCORE_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
+score.s: $(SCORE_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(SCORE_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+score.o: score.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
clean:
- $(Q)rm -f *.o
+ $(Q)rm -f *.o *.s
diff --git a/modules/save/tmp/save.s b/modules/save/tmp/save.s
new file mode 100644
index 0000000..5ac0e7f
--- /dev/null
+++ b/modules/save/tmp/save.s
@@ -0,0 +1,685 @@
+ .file "save.c"
+ .comm home_path,4096,32
+ .comm user_game_path,4096,32
+ .comm saved_path,4096,32
+ .comm saved_name,4096,32
+ .section .rodata
+.LC0:
+ .string "HOME"
+.LC1:
+ .string "%s/"
+.LC2:
+ .string ".mine-sweeper/"
+.LC3:
+ .string "%s/%s/"
+.LC4:
+ .string ".mine-sweeper/saved/"
+.LC5:
+ .string ""
+.LC6:
+ .string "err = EACCES"
+.LC7:
+ .string "WTF?!"
+ .text
+ .globl save_init
+ .type save_init, @function
+save_init:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ leaq .LC0(%rip), %rdi
+ call getenv@PLT
+ movq %rax, %rcx
+ leaq .LC1(%rip), %rdx
+ movl $4096, %esi
+ leaq home_path(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq .LC2(%rip), %r8
+ leaq home_path(%rip), %rcx
+ leaq .LC3(%rip), %rdx
+ movl $4096, %esi
+ leaq user_game_path(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq .LC4(%rip), %r8
+ leaq home_path(%rip), %rcx
+ leaq .LC3(%rip), %rdx
+ movl $4096, %esi
+ leaq saved_path(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ movzbl .LC5(%rip), %eax
+ movb %al, saved_name(%rip)
+ movl $448, %esi
+ leaq user_game_path(%rip), %rdi
+ call mkdir@PLT
+ movl %eax, -4(%rbp)
+ cmpl $0, -4(%rbp)
+ jne .L2
+ movl $448, %esi
+ leaq saved_path(%rip), %rdi
+ call mkdir@PLT
+ jmp .L9
+.L2:
+ call __errno_location@PLT
+ movl (%rax), %eax
+ cmpl $13, %eax
+ je .L5
+ cmpl $17, %eax
+ je .L8
+ jmp .L7
+.L5:
+ leaq .LC6(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movl $1, %edi
+ call exit@PLT
+.L7:
+ leaq .LC7(%rip), %rdi
+ movl $0, %eax
+ call printf@PLT
+ movl $1, %edi
+ call exit@PLT
+.L8:
+ nop
+.L9:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size save_init, .-save_init
+ .globl save_clr
+ .type save_clr, @function
+save_clr:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ leaq .LC4(%rip), %r8
+ leaq home_path(%rip), %rcx
+ leaq .LC3(%rip), %rdx
+ movl $4096, %esi
+ leaq saved_path(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size save_clr, .-save_clr
+ .section .rodata
+.LC8:
+ .string "%s/%s"
+.LC9:
+ .string "r"
+.LC10:
+ .string "mine-sweeper saved game"
+.LC11:
+ .string " rows %i"
+.LC12:
+ .string " cols %i"
+.LC13:
+ .string " mines %i"
+.LC14:
+ .string " gnd"
+.LC15:
+ .string " %i"
+.LC16:
+ .string ",%i"
+.LC17:
+ .string " usr"
+.LC18:
+ .string " flags %i"
+.LC19:
+ .string " cleared %i"
+ .text
+ .globl load_game_file
+ .type load_game_file, @function
+load_game_file:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $4112, %rsp
+ leaq -4112(%rbp), %rax
+ leaq saved_name(%rip), %r8
+ leaq saved_path(%rip), %rcx
+ leaq .LC8(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq -4112(%rbp), %rax
+ leaq .LC9(%rip), %rsi
+ movq %rax, %rdi
+ call fopen@PLT
+ movq %rax, -16(%rbp)
+ cmpq $0, -16(%rbp)
+ je .L21
+ movq -16(%rbp), %rax
+ leaq .LC10(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -16(%rbp), %rax
+ leaq game_board(%rip), %rdx
+ leaq .LC11(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -16(%rbp), %rax
+ leaq 4+game_board(%rip), %rdx
+ leaq .LC12(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -16(%rbp), %rax
+ leaq 8+game_board(%rip), %rdx
+ leaq .LC13(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -16(%rbp), %rax
+ leaq .LC14(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movl $0, -4(%rbp)
+ jmp .L13
+.L16:
+ movl -4(%rbp), %eax
+ cltq
+ imulq $3996, %rax, %rdx
+ leaq game_board(%rip), %rax
+ addq %rdx, %rax
+ leaq 12(%rax), %rdx
+ movq -16(%rbp), %rax
+ leaq .LC15(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movl $1, -8(%rbp)
+ jmp .L14
+.L15:
+ movl -8(%rbp), %eax
+ movslq %eax, %rdx
+ movl -4(%rbp), %eax
+ cltq
+ imulq $999, %rax, %rax
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ addq %rdx, %rax
+ leaq 12(%rax), %rdx
+ movq -16(%rbp), %rax
+ leaq .LC16(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ addl $1, -8(%rbp)
+.L14:
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jg .L15
+ addl $1, -4(%rbp)
+.L13:
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jg .L16
+ movq -16(%rbp), %rax
+ leaq .LC17(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movl $0, -4(%rbp)
+ jmp .L17
+.L20:
+ movl -4(%rbp), %eax
+ cltq
+ imulq $3996, %rax, %rax
+ leaq 3992016(%rax), %rdx
+ leaq game_board(%rip), %rax
+ addq %rax, %rdx
+ movq -16(%rbp), %rax
+ leaq .LC15(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movl $1, -8(%rbp)
+ jmp .L18
+.L19:
+ movl -8(%rbp), %eax
+ movslq %eax, %rdx
+ movl -4(%rbp), %eax
+ cltq
+ imulq $999, %rax, %rax
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ addq %rax, %rdx
+ movq -16(%rbp), %rax
+ leaq .LC16(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ addl $1, -8(%rbp)
+.L18:
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jg .L19
+ addl $1, -4(%rbp)
+.L17:
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jg .L20
+ movq -16(%rbp), %rax
+ leaq 7984020+game_board(%rip), %rdx
+ leaq .LC18(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -16(%rbp), %rax
+ leaq 7984024+game_board(%rip), %rdx
+ leaq .LC19(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -16(%rbp), %rax
+ movq %rax, %rdi
+ call fclose@PLT
+.L21:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size load_game_file, .-load_game_file
+ .section .rodata
+.LC20:
+ .string "%s"
+.LC21:
+ .string "%s/%s%s%s"
+.LC22:
+ .string ".mine"
+.LC23:
+ .string "%s%s%s"
+.LC24:
+ .string "w"
+.LC25:
+ .string "mine-sweeper saved game\n"
+.LC26:
+ .string "rows %i\n"
+.LC27:
+ .string "cols %i\n"
+.LC28:
+ .string "mines %i\n"
+.LC29:
+ .string "gnd\n"
+.LC30:
+ .string "%i"
+.LC31:
+ .string "usr\n"
+.LC32:
+ .string "flags %i\n"
+.LC33:
+ .string "cleared %i\n"
+ .text
+ .globl save_game_file
+ .type save_game_file, @function
+save_game_file:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $12352, %rsp
+ movq %rdi, -12344(%rbp)
+ cmpq $0, -12344(%rbp)
+ je .L23
+ leaq -12320(%rbp), %rax
+ leaq saved_name(%rip), %rcx
+ leaq .LC20(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+.L23:
+ call save_clr
+ movl $1702257011, saved_name(%rip)
+ movw $100, 4+saved_name(%rip)
+ movzbl .LC5(%rip), %eax
+ movb %al, -12326(%rbp)
+ movq -12344(%rbp), %rax
+ movl $4096, %edx
+ leaq saved_name(%rip), %rsi
+ movq %rax, %rdi
+ call player_iface_save_name@PLT
+ movb $1, -9(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L24
+.L29:
+ cmpq $0, -12344(%rbp)
+ jne .L25
+ leaq -12326(%rbp), %rcx
+ leaq -4128(%rbp), %rax
+ subq $8, %rsp
+ leaq .LC22(%rip), %rdx
+ pushq %rdx
+ movq %rcx, %r9
+ leaq saved_name(%rip), %r8
+ leaq saved_path(%rip), %rcx
+ leaq .LC21(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ addq $16, %rsp
+ jmp .L26
+.L25:
+ leaq -12326(%rbp), %rsi
+ movq -12344(%rbp), %rdx
+ leaq -4128(%rbp), %rax
+ subq $8, %rsp
+ leaq .LC22(%rip), %rcx
+ pushq %rcx
+ movq %rsi, %r9
+ leaq saved_name(%rip), %r8
+ movq %rdx, %rcx
+ leaq .LC21(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ addq $16, %rsp
+.L26:
+ leaq -4128(%rbp), %rax
+ leaq .LC9(%rip), %rsi
+ movq %rax, %rdi
+ call fopen@PLT
+ movq %rax, -24(%rbp)
+ cmpq $0, -24(%rbp)
+ je .L27
+ movq -24(%rbp), %rax
+ movq %rax, %rdi
+ call fclose@PLT
+ movb $95, -12326(%rbp)
+ movl -4(%rbp), %ecx
+ movl $1374389535, %edx
+ movl %ecx, %eax
+ imull %edx
+ sarl $5, %edx
+ movl %ecx, %eax
+ sarl $31, %eax
+ movl %edx, %ecx
+ subl %eax, %ecx
+ movl $1717986919, %edx
+ movl %ecx, %eax
+ imull %edx
+ sarl $2, %edx
+ movl %ecx, %eax
+ sarl $31, %eax
+ subl %eax, %edx
+ movl %edx, %eax
+ sall $2, %eax
+ addl %edx, %eax
+ addl %eax, %eax
+ subl %eax, %ecx
+ movl %ecx, %edx
+ movl %edx, %eax
+ addl $48, %eax
+ movb %al, -12325(%rbp)
+ movl -4(%rbp), %ecx
+ movl $1717986919, %edx
+ movl %ecx, %eax
+ imull %edx
+ sarl $2, %edx
+ movl %ecx, %eax
+ sarl $31, %eax
+ movl %edx, %ecx
+ subl %eax, %ecx
+ movl $1717986919, %edx
+ movl %ecx, %eax
+ imull %edx
+ sarl $2, %edx
+ movl %ecx, %eax
+ sarl $31, %eax
+ subl %eax, %edx
+ movl %edx, %eax
+ sall $2, %eax
+ addl %edx, %eax
+ addl %eax, %eax
+ subl %eax, %ecx
+ movl %ecx, %edx
+ movl %edx, %eax
+ addl $48, %eax
+ movb %al, -12324(%rbp)
+ movl -4(%rbp), %ecx
+ movl $1717986919, %edx
+ movl %ecx, %eax
+ imull %edx
+ sarl $2, %edx
+ movl %ecx, %eax
+ sarl $31, %eax
+ subl %eax, %edx
+ movl %edx, %eax
+ sall $2, %eax
+ addl %edx, %eax
+ addl %eax, %eax
+ subl %eax, %ecx
+ movl %ecx, %edx
+ movl %edx, %eax
+ addl $48, %eax
+ movb %al, -12323(%rbp)
+ movb $0, -12322(%rbp)
+ jmp .L28
+.L27:
+ movb $0, -9(%rbp)
+ leaq -12326(%rbp), %rdx
+ leaq -8224(%rbp), %rax
+ leaq .LC22(%rip), %r9
+ movq %rdx, %r8
+ leaq saved_name(%rip), %rcx
+ leaq .LC23(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq -8224(%rbp), %rax
+ movq %rax, %rcx
+ leaq .LC20(%rip), %rdx
+ movl $4096, %esi
+ leaq saved_name(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+.L28:
+ addl $1, -4(%rbp)
+.L24:
+ cmpb $0, -9(%rbp)
+ jne .L29
+ leaq -4128(%rbp), %rax
+ leaq .LC24(%rip), %rsi
+ movq %rax, %rdi
+ call fopen@PLT
+ movq %rax, -24(%rbp)
+ cmpq $0, -24(%rbp)
+ je .L30
+ movq -24(%rbp), %rax
+ movq %rax, %rcx
+ movl $24, %edx
+ movl $1, %esi
+ leaq .LC25(%rip), %rdi
+ call fwrite@PLT
+ movl game_board(%rip), %edx
+ movq -24(%rbp), %rax
+ leaq .LC26(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movl 4+game_board(%rip), %edx
+ movq -24(%rbp), %rax
+ leaq .LC27(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movl 8+game_board(%rip), %edx
+ movq -24(%rbp), %rax
+ leaq .LC28(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -24(%rbp), %rax
+ movq %rax, %rcx
+ movl $4, %edx
+ movl $1, %esi
+ leaq .LC29(%rip), %rdi
+ call fwrite@PLT
+ movl $0, -4(%rbp)
+ jmp .L31
+.L34:
+ movl -4(%rbp), %eax
+ cltq
+ imulq $3996, %rax, %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %edx
+ movq -24(%rbp), %rax
+ leaq .LC30(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movl $1, -8(%rbp)
+ jmp .L32
+.L33:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq 12+game_board(%rip), %rax
+ movl (%rdx,%rax), %edx
+ movq -24(%rbp), %rax
+ leaq .LC16(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ addl $1, -8(%rbp)
+.L32:
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jg .L33
+ movq -24(%rbp), %rax
+ movq %rax, %rsi
+ movl $10, %edi
+ call fputc@PLT
+ addl $1, -4(%rbp)
+.L31:
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jg .L34
+ movq -24(%rbp), %rax
+ movq %rax, %rcx
+ movl $4, %edx
+ movl $1, %esi
+ leaq .LC31(%rip), %rdi
+ call fwrite@PLT
+ movl $0, -4(%rbp)
+ jmp .L35
+.L38:
+ movl -4(%rbp), %eax
+ cltq
+ imulq $3996, %rax, %rdx
+ leaq 3992016+game_board(%rip), %rax
+ movl (%rdx,%rax), %edx
+ movq -24(%rbp), %rax
+ leaq .LC30(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movl $1, -8(%rbp)
+ jmp .L36
+.L37:
+ movl -8(%rbp), %eax
+ cltq
+ movl -4(%rbp), %edx
+ movslq %edx, %rdx
+ imulq $999, %rdx, %rdx
+ addq %rdx, %rax
+ addq $998004, %rax
+ leaq 0(,%rax,4), %rdx
+ leaq game_board(%rip), %rax
+ movl (%rdx,%rax), %edx
+ movq -24(%rbp), %rax
+ leaq .LC16(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ addl $1, -8(%rbp)
+.L36:
+ movl 4+game_board(%rip), %eax
+ cmpl -8(%rbp), %eax
+ jg .L37
+ movq -24(%rbp), %rax
+ movq %rax, %rsi
+ movl $10, %edi
+ call fputc@PLT
+ addl $1, -4(%rbp)
+.L35:
+ movl game_board(%rip), %eax
+ cmpl -4(%rbp), %eax
+ jg .L38
+ movl 7984020+game_board(%rip), %edx
+ movq -24(%rbp), %rax
+ leaq .LC32(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movl 7984024+game_board(%rip), %edx
+ movq -24(%rbp), %rax
+ leaq .LC33(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -24(%rbp), %rax
+ movq %rax, %rdi
+ call fclose@PLT
+.L30:
+ cmpq $0, -12344(%rbp)
+ je .L40
+ leaq -12320(%rbp), %rax
+ movq %rax, %rcx
+ leaq .LC20(%rip), %rdx
+ movl $4096, %esi
+ leaq saved_name(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+.L40:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size save_game_file, .-save_game_file
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/save/tmp/score.s b/modules/save/tmp/score.s
new file mode 100644
index 0000000..5775f4c
--- /dev/null
+++ b/modules/save/tmp/score.s
@@ -0,0 +1,740 @@
+ .file "score.c"
+ .comm var_path,4096,32
+ .comm var_hiscores_path,4096,32
+ .comm var_boards_beginner_path,4096,32
+ .comm var_boards_intermediate_path,4096,32
+ .comm var_boards_expert_path,4096,32
+ .comm var_boards_custom_path,4096,32
+ .comm var_hiscores_beginner_name,4096,32
+ .comm var_hiscores_intermediate_name,4096,32
+ .comm var_hiscores_expert_name,4096,32
+ .section .rodata
+.LC0:
+ .string "mine-sweeper/"
+.LC1:
+ .string "/var/local/"
+.LC2:
+ .string "%s/%s/"
+.LC3:
+ .string "hiscores/"
+.LC4:
+ .string "hiscores/boards_beginner/"
+.LC5:
+ .string "hiscores/boards_intermediate/"
+.LC6:
+ .string "hiscores/boards_expert/"
+.LC7:
+ .string "hiscores/boards_custom/"
+ .text
+ .globl score_init
+ .type score_init, @function
+score_init:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ leaq .LC0(%rip), %r8
+ leaq .LC1(%rip), %rcx
+ leaq .LC2(%rip), %rdx
+ movl $4096, %esi
+ leaq var_path(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq .LC3(%rip), %r8
+ leaq var_path(%rip), %rcx
+ leaq .LC2(%rip), %rdx
+ movl $4096, %esi
+ leaq var_hiscores_path(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq .LC4(%rip), %r8
+ leaq var_path(%rip), %rcx
+ leaq .LC2(%rip), %rdx
+ movl $4096, %esi
+ leaq var_boards_beginner_path(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq .LC5(%rip), %r8
+ leaq var_path(%rip), %rcx
+ leaq .LC2(%rip), %rdx
+ movl $4096, %esi
+ leaq var_boards_intermediate_path(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq .LC6(%rip), %r8
+ leaq var_path(%rip), %rcx
+ leaq .LC2(%rip), %rdx
+ movl $4096, %esi
+ leaq var_boards_expert_path(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq .LC7(%rip), %r8
+ leaq var_path(%rip), %rcx
+ leaq .LC2(%rip), %rdx
+ movl $4096, %esi
+ leaq var_boards_custom_path(%rip), %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ movabsq $8315178109744933224, %rax
+ movq %rax, var_hiscores_beginner_name(%rip)
+ movabsq $7308900644254212703, %rax
+ movq %rax, 8+var_hiscores_beginner_name(%rip)
+ movl $1768762994, 16+var_hiscores_beginner_name(%rip)
+ movw $25966, 20+var_hiscores_beginner_name(%rip)
+ movb $0, 22+var_hiscores_beginner_name(%rip)
+ movabsq $8315178109744933224, %rax
+ movq %rax, var_hiscores_intermediate_name(%rip)
+ movabsq $7308623550362839391, %rax
+ movq %rax, 8+var_hiscores_intermediate_name(%rip)
+ movabsq $7596779159723010404, %rax
+ movq %rax, 16+var_hiscores_intermediate_name(%rip)
+ movw $25966, 24+var_hiscores_intermediate_name(%rip)
+ movb $0, 26+var_hiscores_intermediate_name(%rip)
+ movabsq $8315178109744933224, %rax
+ movq %rax, var_hiscores_expert_name(%rip)
+ movabsq $3347426203047322975, %rax
+ movq %rax, 8+var_hiscores_expert_name(%rip)
+ movl $1701734765, 16+var_hiscores_expert_name(%rip)
+ movb $0, 20+var_hiscores_expert_name(%rip)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size score_init, .-score_init
+ .section .rodata
+.LC8:
+ .string "%s/%s"
+.LC9:
+ .string "a"
+.LC10:
+ .string "name\t%s\n"
+.LC11:
+ .string "date\t%i\n"
+.LC12:
+ .string "{\n"
+.LC13:
+ .string "\tisdst\t%i\n"
+.LC14:
+ .string "\tyday\t%i\n"
+.LC15:
+ .string "\twday\t%i\n"
+.LC16:
+ .string "\tyear\t%i\n"
+.LC17:
+ .string "\tmon\t%i\n"
+.LC18:
+ .string "\tmday\t%i\n"
+.LC19:
+ .string "\thour\t%i\n"
+.LC20:
+ .string "\tmin\t%i\n"
+.LC21:
+ .string "\tsec\t%i\n"
+.LC22:
+ .string "}\n"
+.LC23:
+ .string "time\t%i\n"
+.LC24:
+ .string "clicks\t%i\n"
+.LC25:
+ .string "file\t%s\n"
+ .text
+ .globl save_score
+ .type save_score, @function
+save_score:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $5168, %rsp
+ movq %rdi, -5160(%rbp)
+ movq -5160(%rbp), %rax
+ movl (%rax), %eax
+ cmpl $1, %eax
+ je .L4
+ cmpl $2, %eax
+ je .L5
+ testl %eax, %eax
+ jne .L3
+ leaq -4112(%rbp), %rax
+ leaq var_hiscores_beginner_name(%rip), %r8
+ leaq var_hiscores_path(%rip), %rcx
+ leaq .LC8(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ jmp .L3
+.L4:
+ leaq -4112(%rbp), %rax
+ leaq var_hiscores_intermediate_name(%rip), %r8
+ leaq var_hiscores_path(%rip), %rcx
+ leaq .LC8(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ jmp .L3
+.L5:
+ leaq -4112(%rbp), %rax
+ leaq var_hiscores_expert_name(%rip), %r8
+ leaq var_hiscores_path(%rip), %rcx
+ leaq .LC8(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ nop
+.L3:
+ movl $0, %edi
+ call time@PLT
+ movq %rax, -4120(%rbp)
+ leaq -4120(%rbp), %rax
+ movq %rax, %rdi
+ call localtime@PLT
+ movq %rax, -8(%rbp)
+ leaq -5152(%rbp), %rax
+ movl $1024, %esi
+ movq %rax, %rdi
+ call player_iface_score_name@PLT
+ leaq -4112(%rbp), %rax
+ leaq .LC9(%rip), %rsi
+ movq %rax, %rdi
+ call fopen@PLT
+ movq %rax, -16(%rbp)
+ cmpq $0, -16(%rbp)
+ je .L7
+ movq -16(%rbp), %rax
+ movq %rax, %rsi
+ movl $10, %edi
+ call fputc@PLT
+ leaq -5152(%rbp), %rdx
+ movq -16(%rbp), %rax
+ leaq .LC10(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -4120(%rbp), %rax
+ movl %eax, %edx
+ movq -16(%rbp), %rax
+ leaq .LC11(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -16(%rbp), %rax
+ movq %rax, %rcx
+ movl $2, %edx
+ movl $1, %esi
+ leaq .LC12(%rip), %rdi
+ call fwrite@PLT
+ movq -8(%rbp), %rax
+ movl 32(%rax), %edx
+ movq -16(%rbp), %rax
+ leaq .LC13(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -8(%rbp), %rax
+ movl 28(%rax), %edx
+ movq -16(%rbp), %rax
+ leaq .LC14(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -8(%rbp), %rax
+ movl 24(%rax), %edx
+ movq -16(%rbp), %rax
+ leaq .LC15(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -8(%rbp), %rax
+ movl 20(%rax), %edx
+ movq -16(%rbp), %rax
+ leaq .LC16(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -8(%rbp), %rax
+ movl 16(%rax), %edx
+ movq -16(%rbp), %rax
+ leaq .LC17(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -8(%rbp), %rax
+ movl 12(%rax), %edx
+ movq -16(%rbp), %rax
+ leaq .LC18(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -8(%rbp), %rax
+ movl 8(%rax), %edx
+ movq -16(%rbp), %rax
+ leaq .LC19(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -8(%rbp), %rax
+ movl 4(%rax), %edx
+ movq -16(%rbp), %rax
+ leaq .LC20(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -8(%rbp), %rax
+ movl (%rax), %edx
+ movq -16(%rbp), %rax
+ leaq .LC21(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -16(%rbp), %rax
+ movq %rax, %rcx
+ movl $2, %edx
+ movl $1, %esi
+ leaq .LC22(%rip), %rdi
+ call fwrite@PLT
+ movq -5160(%rbp), %rax
+ movl 4(%rax), %edx
+ movq -16(%rbp), %rax
+ leaq .LC23(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -5160(%rbp), %rax
+ movl 8(%rax), %edx
+ movq -16(%rbp), %rax
+ leaq .LC24(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -16(%rbp), %rax
+ leaq saved_name(%rip), %rdx
+ leaq .LC25(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call fprintf@PLT
+ movq -16(%rbp), %rax
+ movq %rax, %rdi
+ call fclose@PLT
+ jmp .L8
+.L7:
+ movl $1, %edi
+ call exit@PLT
+.L8:
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size save_score, .-save_score
+ .section .rodata
+.LC26:
+ .string "%s%s"
+.LC27:
+ .string "%s"
+ .text
+ .globl snprint_scores
+ .type snprint_scores, @function
+snprint_scores:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $2101264, %rsp
+ movq %rdi, -2101256(%rbp)
+ movl %esi, -2101260(%rbp)
+ leaq -4096(%rbp), %rax
+ leaq var_hiscores_beginner_name(%rip), %r8
+ leaq var_hiscores_path(%rip), %rcx
+ leaq .LC8(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq -4096(%rbp), %rdx
+ movl -2101260(%rbp), %ecx
+ movq -2101256(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call snprint_scores_file
+ leaq -4096(%rbp), %rax
+ leaq var_hiscores_intermediate_name(%rip), %r8
+ leaq var_hiscores_path(%rip), %rcx
+ leaq .LC8(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq -4096(%rbp), %rdx
+ movl -2101260(%rbp), %ecx
+ leaq -1052672(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call snprint_scores_file
+ movl -2101260(%rbp), %eax
+ movslq %eax, %rsi
+ leaq -1052672(%rbp), %rcx
+ movq -2101256(%rbp), %rdx
+ leaq -2101248(%rbp), %rax
+ movq %rcx, %r8
+ movq %rdx, %rcx
+ leaq .LC26(%rip), %rdx
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ movl -2101260(%rbp), %eax
+ movslq %eax, %rsi
+ leaq -2101248(%rbp), %rdx
+ movq -2101256(%rbp), %rax
+ movq %rdx, %rcx
+ leaq .LC27(%rip), %rdx
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq -4096(%rbp), %rax
+ leaq var_hiscores_expert_name(%rip), %r8
+ leaq var_hiscores_path(%rip), %rcx
+ leaq .LC8(%rip), %rdx
+ movl $4096, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ leaq -4096(%rbp), %rdx
+ movl -2101260(%rbp), %ecx
+ leaq -1052672(%rbp), %rax
+ movl %ecx, %esi
+ movq %rax, %rdi
+ call snprint_scores_file
+ movl -2101260(%rbp), %eax
+ movslq %eax, %rsi
+ leaq -1052672(%rbp), %rcx
+ movq -2101256(%rbp), %rdx
+ leaq -2101248(%rbp), %rax
+ movq %rcx, %r8
+ movq %rdx, %rcx
+ leaq .LC26(%rip), %rdx
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ movl -2101260(%rbp), %eax
+ movslq %eax, %rsi
+ leaq -2101248(%rbp), %rdx
+ movq -2101256(%rbp), %rax
+ movq %rdx, %rcx
+ leaq .LC27(%rip), %rdx
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size snprint_scores, .-snprint_scores
+ .section .rodata
+.LC28:
+ .string "r"
+.LC29:
+ .string "%[^\n]s"
+.LC30:
+ .string " "
+ .align 8
+.LC31:
+ .string "_______________________________________________________\n%s\n\nname\tdate\t\tclicks\ttime\t\tfile\n\n"
+.LC32:
+ .string "name\t%s "
+.LC33:
+ .string "date\t%*i "
+.LC34:
+ .string "{ "
+.LC35:
+ .string "\tisdst\t%*i "
+.LC36:
+ .string "\tyday\t%*i "
+.LC37:
+ .string "\twday\t%*i "
+.LC38:
+ .string "\tyear\t%i "
+.LC39:
+ .string "\tmon\t%i "
+.LC40:
+ .string "\tmday\t%i "
+.LC41:
+ .string "\thour\t%*i "
+.LC42:
+ .string "\tmin\t%*i "
+.LC43:
+ .string "\tsec\t%*i "
+.LC44:
+ .string "} "
+.LC45:
+ .string "time\t%i "
+.LC46:
+ .string "clicks\t%i "
+.LC47:
+ .string "file\t%s "
+ .align 8
+.LC48:
+ .string "%s%s\n\t%4i/%2i/%2i\t%i\t%i:%02i:%02i\t\t%s\n\n"
+ .text
+ .type snprint_scores_file, @function
+snprint_scores_file:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $1054816, %rsp
+ movq %rdi, -1054792(%rbp)
+ movl %esi, -1054796(%rbp)
+ movq %rdx, -1054808(%rbp)
+ movq -1054808(%rbp), %rax
+ leaq .LC28(%rip), %rsi
+ movq %rax, %rdi
+ call fopen@PLT
+ movq %rax, -8(%rbp)
+ cmpq $0, -8(%rbp)
+ je .L14
+ leaq -1049632(%rbp), %rdx
+ movq -8(%rbp), %rax
+ leaq .LC29(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -8(%rbp), %rax
+ leaq .LC30(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movl -1054796(%rbp), %eax
+ movslq %eax, %rsi
+ leaq -1049632(%rbp), %rdx
+ movq -1054792(%rbp), %rax
+ movq %rdx, %rcx
+ leaq .LC31(%rip), %rdx
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ jmp .L12
+.L13:
+ movq -8(%rbp), %rdx
+ movl -12(%rbp), %eax
+ movq %rdx, %rsi
+ movl %eax, %edi
+ call ungetc@PLT
+ leaq -1050656(%rbp), %rdx
+ movq -8(%rbp), %rax
+ leaq .LC32(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -8(%rbp), %rax
+ leaq .LC33(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -8(%rbp), %rax
+ leaq .LC34(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -8(%rbp), %rax
+ leaq .LC35(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -8(%rbp), %rax
+ leaq .LC36(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -8(%rbp), %rax
+ leaq .LC37(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ leaq -1050660(%rbp), %rdx
+ movq -8(%rbp), %rax
+ leaq .LC38(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ leaq -1050664(%rbp), %rdx
+ movq -8(%rbp), %rax
+ leaq .LC39(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ leaq -1050668(%rbp), %rdx
+ movq -8(%rbp), %rax
+ leaq .LC40(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -8(%rbp), %rax
+ leaq .LC41(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -8(%rbp), %rax
+ leaq .LC42(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -8(%rbp), %rax
+ leaq .LC43(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movq -8(%rbp), %rax
+ leaq .LC44(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ leaq -1050672(%rbp), %rdx
+ movq -8(%rbp), %rax
+ leaq .LC45(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ leaq -1050676(%rbp), %rdx
+ movq -8(%rbp), %rax
+ leaq .LC46(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ leaq -1054784(%rbp), %rdx
+ movq -8(%rbp), %rax
+ leaq .LC47(%rip), %rsi
+ movq %rax, %rdi
+ movl $0, %eax
+ call __isoc99_fscanf@PLT
+ movl -1050660(%rbp), %eax
+ addl $1900, %eax
+ movl %eax, -1050660(%rbp)
+ movl -1050672(%rbp), %ecx
+ movl $-1851608123, %edx
+ movl %ecx, %eax
+ imull %edx
+ leal (%rdx,%rcx), %eax
+ sarl $11, %eax
+ movl %eax, %edx
+ movl %ecx, %eax
+ sarl $31, %eax
+ subl %eax, %edx
+ movl %edx, %eax
+ movl %eax, -16(%rbp)
+ movl -1050672(%rbp), %esi
+ movl $-1851608123, %edx
+ movl %esi, %eax
+ imull %edx
+ leal (%rdx,%rsi), %eax
+ sarl $11, %eax
+ movl %eax, %edx
+ movl %esi, %eax
+ sarl $31, %eax
+ movl %edx, %ecx
+ subl %eax, %ecx
+ imull $3600, %ecx, %eax
+ movl %esi, %ecx
+ subl %eax, %ecx
+ movl $-2004318071, %edx
+ movl %ecx, %eax
+ imull %edx
+ leal (%rdx,%rcx), %eax
+ sarl $5, %eax
+ movl %eax, %edx
+ movl %ecx, %eax
+ sarl $31, %eax
+ subl %eax, %edx
+ movl %edx, %eax
+ movl %eax, -20(%rbp)
+ movl -1050672(%rbp), %ecx
+ movl $-2004318071, %edx
+ movl %ecx, %eax
+ imull %edx
+ leal (%rdx,%rcx), %eax
+ sarl $5, %eax
+ movl %eax, %edx
+ movl %ecx, %eax
+ sarl $31, %eax
+ subl %eax, %edx
+ movl %edx, %eax
+ movl %eax, -24(%rbp)
+ movl -24(%rbp), %eax
+ imull $60, %eax, %eax
+ subl %eax, %ecx
+ movl %ecx, %eax
+ movl %eax, -24(%rbp)
+ movl -1050676(%rbp), %esi
+ movl -1050668(%rbp), %ecx
+ movl -1050664(%rbp), %eax
+ leal 1(%rax), %r10d
+ movl -1050660(%rbp), %r9d
+ leaq -1050656(%rbp), %r8
+ movq -1054792(%rbp), %rdx
+ leaq -1048608(%rbp), %rax
+ subq $8, %rsp
+ leaq -1054784(%rbp), %rdi
+ pushq %rdi
+ movl -24(%rbp), %edi
+ pushq %rdi
+ movl -20(%rbp), %edi
+ pushq %rdi
+ movl -16(%rbp), %edi
+ pushq %rdi
+ pushq %rsi
+ pushq %rcx
+ pushq %r10
+ movq %rdx, %rcx
+ leaq .LC48(%rip), %rdx
+ movl $1048576, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+ addq $64, %rsp
+ leaq -1048608(%rbp), %rdx
+ movq -1054792(%rbp), %rax
+ movq %rdx, %rcx
+ leaq .LC27(%rip), %rdx
+ movl $1048576, %esi
+ movq %rax, %rdi
+ movl $0, %eax
+ call snprintf@PLT
+.L12:
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call _IO_getc@PLT
+ movl %eax, -12(%rbp)
+ cmpl $-1, -12(%rbp)
+ jne .L13
+ movq -8(%rbp), %rax
+ movq %rax, %rdi
+ call fclose@PLT
+.L14:
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size snprint_scores_file, .-snprint_scores_file
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/modules/tmp/Makefile b/modules/tmp/Makefile
new file mode 100644
index 0000000..cc37aab
--- /dev/null
+++ b/modules/tmp/Makefile
@@ -0,0 +1,47 @@
+# -*- MakeFile -*-
+
+# MACRO = substitute with this
+
+# directories
+
+ABOUT_TMP_DIR = $(ABOUT_DIR)/tmp/
+CTRL_TMP_DIR = $(CTRL_DIR)/tmp/
+GAME_TMP_DIR = $(GAME_DIR)/tmp/
+MENU_TMP_DIR = $(MENU_DIR)/tmp/
+PLAY_TMP_DIR = $(PLAY_DIR)/tmp/
+SAVE_TMP_DIR = $(SAVE_DIR)/tmp/
+XYZZY_TMP_DIR = $(XYZZY_DIR)/tmp/
+
+# dependencies
+
+ALL = modules.o
+
+MODS_OBJ_ABOUT = about_mod.o
+MODS_OBJ_CTRL = ctrl_mod.o
+MODS_OBJ_GAME = game_mod.o
+MODS_OBJ_MENU = menu_mod.o
+MODS_OBJ_PLAY = player_mod.o
+MODS_OBJ_SAVE = save_mod.o
+MODS_OBJ_XYZZY = xyzzy_mod.o
+MODS_OBJS = $(patsubst %,$(ABOUT_TMP_DIR)/%,$(MODS_OBJ_ABOUT)) \
+ $(patsubst %,$(CTRL_TMP_DIR)/%,$(MODS_OBJ_CTRL)) \
+ $(patsubst %,$(GAME_TMP_DIR)/%,$(MODS_OBJ_GAME)) \
+ $(patsubst %,$(MENU_TMP_DIR)/%,$(MODS_OBJ_MENU)) \
+ $(patsubst %,$(PLAY_TMP_DIR)/%,$(MODS_OBJ_PLAY)) \
+ $(patsubst %,$(SAVE_TMP_DIR)/%,$(MODS_OBJ_SAVE)) \
+ $(patsubst %,$(XYZZY_TMP_DIR)/%,$(MODS_OBJ_XYZZY))
+
+# target: dependencies
+# action
+
+all: $(ALL)
+
+
+modules.o: $(MODS_OBJS)
+ $(Q)$(LD) -r $^ -o $@
+ @echo " LD $@"
+ @echo ""
+
+
+clean:
+ $(Q)rm -f *.o
diff --git a/modules/xyzzy/Makefile b/modules/xyzzy/Makefile
index ce6871e..8cc4244 100644
--- a/modules/xyzzy/Makefile
+++ b/modules/xyzzy/Makefile
@@ -4,16 +4,16 @@
# directories
-OBJ_DIR = $(XYZZY_DIR)/obj/
+TMP_DIR = $(XYZZY_DIR)/tmp/
# target: dependencies
# action
all:
- $(Q)cd $(OBJ_DIR) && $(MAKE) && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) && cd ..
clean:
- $(Q)cd $(OBJ_DIR) && $(MAKE) clean && cd ..
+ $(Q)cd $(TMP_DIR) && $(MAKE) clean && cd ..
################################################################################
######## End of file ###########################################################
diff --git a/modules/xyzzy/obj/Makefile b/modules/xyzzy/tmp/Makefile
index 2d96e2b..5ad3b0c 100644
--- a/modules/xyzzy/obj/Makefile
+++ b/modules/xyzzy/tmp/Makefile
@@ -12,7 +12,7 @@ SRC_DIR = $(XYZZY_DIR)/src/
# dependencies
_ALL = xyzzy.o
-ALL = $(_ALL) xyzzy_mod.o
+ALL = $(_ALL) xyzzy_mod.o
XYZZY_INC_GAME = game_iface.h
XYZZY_INC = xyzzy.h
@@ -30,14 +30,17 @@ all: $(ALL)
xyzzy_mod.o: $(_ALL)
$(Q)$(LD) -r $^ -o $@
- @echo "\tLD $@"
+ @echo " LD $@"
@echo ""
-xyzzy.o: $(XYZZY_DEPS)
- $(Q)$(CC) $(CFLAGS) $(XYZZY_INC_DIRS) -c $< -o $@
- @echo "\tCC $@"
+xyzzy.s: $(XYZZY_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(XYZZY_INC_DIRS) -S $< -o $@
+ @echo " CC $@"
+xyzzy.o: xyzzy.s
+ $(Q)$(AS) $< -o $@
+ @echo " AS $@"
clean:
- $(Q)rm -f *.o
+ $(Q)rm -f *.o *.s
diff --git a/modules/xyzzy/tmp/xyzzy.s b/modules/xyzzy/tmp/xyzzy.s
new file mode 100644
index 0000000..9e87bbd
--- /dev/null
+++ b/modules/xyzzy/tmp/xyzzy.s
@@ -0,0 +1,234 @@
+ .file "xyzzy.c"
+ .local x
+ .comm x,4,4
+ .local step_notflag
+ .comm step_notflag,1,1
+ .text
+ .globl xyzzy_init
+ .type xyzzy_init, @function
+xyzzy_init:
+.LFB0:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movl $0, x(%rip)
+ movb $1, step_notflag(%rip)
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE0:
+ .size xyzzy_init, .-xyzzy_init
+ .globl xyzzy_lin
+ .type xyzzy_lin, @function
+xyzzy_lin:
+.LFB1:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movl x(%rip), %eax
+ testl %eax, %eax
+ jne .L3
+ movl $1, x(%rip)
+.L3:
+ movzbl step_notflag(%rip), %eax
+ testb %al, %al
+ je .L4
+ movq -16(%rbp), %rdx
+ movq -8(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call xyzzy_step_all
+ jmp .L5
+.L4:
+ movq -16(%rbp), %rdx
+ movq -8(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call xyzzy_flag_all
+ movl x(%rip), %eax
+ subl $1, %eax
+ movl %eax, x(%rip)
+.L5:
+ movzbl step_notflag(%rip), %eax
+ movzbl %al, %eax
+ testl %eax, %eax
+ setne %al
+ xorl $1, %eax
+ movzbl %al, %eax
+ andl $1, %eax
+ movb %al, step_notflag(%rip)
+ movl x(%rip), %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE1:
+ .size xyzzy_lin, .-xyzzy_lin
+ .globl xyzzy_p
+ .type xyzzy_p, @function
+xyzzy_p:
+.LFB2:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $32, %rsp
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movq -24(%rbp), %rax
+ movl (%rax), %edx
+ movq -24(%rbp), %rax
+ movl 4(%rax), %eax
+ imull %edx, %eax
+ movl %eax, -4(%rbp)
+ movl x(%rip), %eax
+ testl %eax, %eax
+ jne .L8
+ movl -4(%rbp), %eax
+ movl %eax, %edx
+ shrl $31, %edx
+ addl %edx, %eax
+ sarl %eax
+ movl %eax, x(%rip)
+.L8:
+ movq -32(%rbp), %rdx
+ movq -24(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call xyzzy_lin
+ movl x(%rip), %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE2:
+ .size xyzzy_p, .-xyzzy_p
+ .globl xyzzy_step_all
+ .type xyzzy_step_all, @function
+xyzzy_step_all:
+.LFB3:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L11
+.L15:
+ movl $0, -8(%rbp)
+ jmp .L12
+.L14:
+ movq -24(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ addq $998004, %rdx
+ movl (%rax,%rdx,4), %eax
+ cmpl $1, %eax
+ jne .L13
+ movq -32(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl $1, 4(%rax,%rdx,4)
+.L13:
+ addl $1, -8(%rbp)
+.L12:
+ movq -24(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jg .L14
+ addl $1, -4(%rbp)
+.L11:
+ movq -24(%rbp), %rax
+ movl (%rax), %eax
+ cmpl -4(%rbp), %eax
+ jg .L15
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE3:
+ .size xyzzy_step_all, .-xyzzy_step_all
+ .globl xyzzy_flag_all
+ .type xyzzy_flag_all, @function
+xyzzy_flag_all:
+.LFB4:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ movq %rdi, -24(%rbp)
+ movq %rsi, -32(%rbp)
+ movl $0, -4(%rbp)
+ jmp .L17
+.L21:
+ movl $0, -8(%rbp)
+ jmp .L18
+.L20:
+ movq -24(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ addq $998004, %rdx
+ movl (%rax,%rdx,4), %eax
+ cmpl $1, %eax
+ jne .L19
+ movq -32(%rbp), %rax
+ movl -8(%rbp), %edx
+ movslq %edx, %rdx
+ movl -4(%rbp), %ecx
+ movslq %ecx, %rcx
+ imulq $999, %rcx, %rcx
+ addq %rcx, %rdx
+ movl $2, 4(%rax,%rdx,4)
+.L19:
+ addl $1, -8(%rbp)
+.L18:
+ movq -24(%rbp), %rax
+ movl 4(%rax), %eax
+ cmpl -8(%rbp), %eax
+ jg .L20
+ addl $1, -4(%rbp)
+.L17:
+ movq -24(%rbp), %rax
+ movl (%rax), %eax
+ cmpl -4(%rbp), %eax
+ jg .L21
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE4:
+ .size xyzzy_flag_all, .-xyzzy_flag_all
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits
diff --git a/share/README.txt b/share/README.txt
index ebdf9c3..c399fe2 100644
--- a/share/README.txt
+++ b/share/README.txt
@@ -46,7 +46,7 @@ site:
COMPILE:
- linux:
$ make
- - windows (MSYS):
+ - windows (MSYS2):
$ make OS=win
INSTALL:
diff --git a/obj/Makefile b/tmp/Makefile
index 70823a4..c34a266 100644
--- a/obj/Makefile
+++ b/tmp/Makefile
@@ -59,14 +59,17 @@ MAIN_INC_DIRS = -I $(LIBALX_INC_DIR) \
all: $(ALL)
-main.o: $(MAIN_DEPS)
- $(Q)$(CC) $(CFLAGS) $(MAIN_INC_DIRS) -c $< -o $@
+main.s: $(MAIN_DEPS)
+ $(Q)$(CC) $(CFLAGS) $(MAIN_INC_DIRS) -S $< -o $@
@echo "\tCC $@"
+main.o: main.s
+ $(Q)$(AS) $< -o $@
+ @echo "\tAS $@"
@echo ""
clean:
- $(Q)rm -f *.o
+ $(Q)rm -f *.o *.s
################################################################################
######## End of file ###########################################################
diff --git a/tmp/main.s b/tmp/main.s
new file mode 100644
index 0000000..512c7cb
--- /dev/null
+++ b/tmp/main.s
@@ -0,0 +1,99 @@
+ .file "main.c"
+ .text
+ .globl main
+ .type main, @function
+main:
+.LFB206:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movl %edi, -4(%rbp)
+ movq %rsi, -16(%rbp)
+ leaq -16(%rbp), %rdx
+ leaq -4(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call init_all
+ movl $0, %edi
+ call print_share_file@PLT
+ call getchar@PLT
+ call start_switch@PLT
+ call menu_iface@PLT
+ call cleanup
+ movl $0, %eax
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE206:
+ .size main, .-main
+ .globl init_all
+ .type init_all, @function
+init_all:
+.LFB207:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ subq $16, %rsp
+ movq %rdi, -8(%rbp)
+ movq %rsi, -16(%rbp)
+ movq -16(%rbp), %rdx
+ movq -8(%rbp), %rax
+ movq %rdx, %rsi
+ movq %rax, %rdi
+ call gtk_init_check@PLT
+ call alx_start_curses@PLT
+ call alx_pause_curses@PLT
+ call menu_iface_init@PLT
+ call game_init@PLT
+ call about_init@PLT
+ call save_init@PLT
+ call score_init@PLT
+ movl $0, start_mode(%rip)
+ movb $0, flag_exit(%rip)
+ movl $2, menu_iface_mode(%rip)
+ movl $2, player_iface_mode(%rip)
+ movq -16(%rbp), %rax
+ movq (%rax), %rdx
+ movq -8(%rbp), %rax
+ movl (%rax), %eax
+ movq %rdx, %rsi
+ movl %eax, %edi
+ call parser@PLT
+ call menu_iface_init_iface@PLT
+ nop
+ leave
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE207:
+ .size init_all, .-init_all
+ .globl cleanup
+ .type cleanup, @function
+cleanup:
+.LFB208:
+ .cfi_startproc
+ pushq %rbp
+ .cfi_def_cfa_offset 16
+ .cfi_offset 6, -16
+ movq %rsp, %rbp
+ .cfi_def_cfa_register 6
+ call menu_iface_cleanup@PLT
+ call alx_resume_curses@PLT
+ call alx_end_curses@PLT
+ nop
+ popq %rbp
+ .cfi_def_cfa 7, 8
+ ret
+ .cfi_endproc
+.LFE208:
+ .size cleanup, .-cleanup
+ .ident "GCC: (Debian 6.3.0-18+deb9u1) 6.3.0 20170516"
+ .section .note.GNU-stack,"",@progbits