Function at 0x1400112ad
Capabilities:
Execute command
Manipulate console buffer

Disassembly:
jmp 0x140011950
push rbp
push rsi
push rdi
sub rsp, 0x760
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0x140
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x14001f008]
xor rax, rbp
mov qword [rbp + 0x738], rax
lea rcx, [0x1400250aa]
call fcn.1400113ca
mov dword [rbp + 8], 0x14
mov dword [rbp + 0xc], 0
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
lea rdx, [rbp + 8]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorInfo]
xor ecx, ecx
call fcn.140011ef0
mov ecx, eax
call qword [sym.imp.ucrtbased.dll_srand]
mov ecx, 0x18
call qword [sym.imp.ucrtbased.dll_malloc]
mov qword [rbp + 0x28], rax
mov byte [rbp + 0x3a4], 1
mov dword [rbp + 0x3c4], 0xd
mov dword [rbp + 0x3e4], 0
movzx eax, byte [rbp + 0x3a4]
test eax, eax
je 0x140011cd6
cmp dword [rbp + 0x3c4], 0xd
jne 0x140011ad1
lea rcx, [0x14001beac]
call qword [sym.imp.ucrtbased.dll_system]
call fcn.1400111fe
mov dword [rbp + 0x404], 0
jmp 0x140011a35
mov eax, dword [rbp + 0x404]
inc eax
mov dword [rbp + 0x404], eax
cmp dword [rbp + 0x404], 0xa
jge 0x140011a50
movsxd rax, dword [rbp + 0x404]
imul rax, rax, 0x10
mov byte [rbp + rax + 0x50], 0
jmp 0x140011a27
mov dword [rbp + 0x424], 0
jmp 0x140011a6a
mov eax, dword [rbp + 0x424]
inc eax
mov dword [rbp + 0x424], eax
cmp dword [rbp + 0x424], 0x14
jge 0x140011a88
movsxd rax, dword [rbp + 0x424]
imul rax, rax, 0x20
mov byte [rbp + rax + 0x110], 0
jmp 0x140011a5c
mov rax, qword [rbp + 0x28]
mov dword [rax + 4], 0xb
mov rax, qword [rbp + 0x28]
mov dword [rax + 8], 0xc
mov rax, qword [rbp + 0x28]
mov dword [rax + 0xc], 5
mov rax, qword [rbp + 0x28]
mov dword [rax + 0x10], 1
mov rax, qword [rbp + 0x28]
mov dword [rax + 0x14], 0
mov rax, qword [rbp + 0x28]
mov byte [rax], 1
mov dl, 1
mov rcx, qword [rbp + 0x28]
call fcn.1400111e5
mov rax, qword [rbp + 0x28]
movzx eax, byte [rax]
test eax, eax
je 0x140011b6d
mov rcx, qword [rbp + 0x28]
call fcn.14001112c
lea rdx, [rbp + 0x50]
mov rcx, qword [rbp + 0x28]
call fcn.140011415
lea rcx, [rbp + 0x50]
call fcn.1400112c6
lea rcx, [rbp + 0x110]
call fcn.14001137a
lea rcx, [rbp + 0x110]
call fcn.140011389
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0x50]
mov rcx, qword [rbp + 0x28]
call fcn.1400113b6
lea rax, [rbp + 0x710]
mov rdi, rax
mov rsi, qword [rbp + 0x28]
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rcx, [rbp + 0x710]
call fcn.14001140b
mov rax, qword [rbp + 0x28]
cmp dword [rax + 0xc], 0
jg 0x140011b5d
mov rax, qword [rbp + 0x28]
mov byte [rax], 0
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140011ad1
mov rax, qword [rbp + 0x28]
mov eax, dword [rax + 0x14]
cmp dword [rbp + 0x3e4], eax
jge 0x140011b89
mov rax, qword [rbp + 0x28]
mov eax, dword [rax + 0x14]
mov dword [rbp + 0x3e4], eax
lea rcx, [0x14001beac]
call qword [sym.imp.ucrtbased.dll_system]
mov eax, 0x23
mov word [rbp + 0x444], ax
mov eax, 0xa
mov word [rbp + 0x446], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x444]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
lea rcx, str.Game_Over_
call fcn.1400111b8
mov eax, 0x1a
mov word [rbp + 0x464], ax
mov eax, 0xb
mov word [rbp + 0x466], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x464]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
lea rcx, str.Replay_:_Enter___Exit_:_Esc
call fcn.1400111b8
mov eax, 0x23
mov word [rbp + 0x484], ax
mov eax, 0xe
mov word [rbp + 0x486], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x484]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
mov rax, qword [rbp + 0x28]
mov edx, dword [rax + 0x14]
lea rcx, str.Score_:__5d
call fcn.1400111b8
mov eax, 0x1e
mov word [rbp + 0x4a4], ax
mov eax, 0xf
mov word [rbp + 0x4a6], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x4a4]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
mov edx, dword [rbp + 0x3e4]
lea rcx, str.High_Score_:__5d
call fcn.1400111b8
lea rcx, str._n_n_n_n_n_n_n_n_n_n
call fcn.1400111b8
call qword [sym.imp.ucrtbased.dll__getch]
mov dword [rbp + 0x3c4], eax
cmp dword [rbp + 0x3c4], 0xd
jne 0x140011cc1
jmp 0x1400119ed
cmp dword [rbp + 0x3c4], 0x1b
jne 0x140011cd1
mov byte [rbp + 0x3a4], 0
jmp 0x1400119ed
mov rcx, qword [rbp + 0x28]
call qword [sym.imp.ucrtbased.dll_free]
xor eax, eax
mov edi, eax
lea rcx, [rbp - 0x20]
lea rdx, [0x14001be30]
call fcn.140011357
mov eax, edi
mov rcx, qword [rbp + 0x738]
xor rcx, rbp
call fcn.1400111d1
lea rsp, [rbp + 0x740]
pop rdi
pop rsi
pop rbp
ret