Function at 0x140011262
Capabilities:
Manipulate console buffer

Disassembly:
jmp 0x140011ad0
push rbp
push rdi
sub rsp, 0x3c8
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0x8a
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
lea rcx, [0x14002a0a6]
call fcn.140011410
movsx eax, byte [0x140023b1c]
cmp eax, 0x31
jne 0x140011b9d
mov dword [rbp + 4], 0
jmp 0x140011b1d
mov eax, dword [rbp + 4]
inc eax
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 0xc
jge 0x140011b9d
mov dword [rbp + 0x24], 0
jmp 0x140011b34
mov eax, dword [rbp + 0x24]
inc eax
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0x16
jge 0x140011b98
mov eax, dword [rbp + 4]
lea eax, [rax + rax + 5]
mov word [rbp + 0x44], ax
mov eax, dword [rbp + 0x24]
inc eax
mov word [rbp + 0x46], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x44]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
movsxd rax, dword [rbp + 4]
imul rax, rax, 0x58
lea rcx, [0x1400236c0]
add rcx, rax
mov rax, rcx
movsxd rcx, dword [rbp + 0x24]
movsxd rax, dword [rax + rcx*4]
lea rcx, [0x140023380]
lea rax, [rcx + rax*4]
mov rcx, rax
call qword [sym.imp.ucrtbased.dll_puts]
jmp 0x140011b2c
jmp 0x140011b15
movsx eax, byte [0x140023b1c]
cmp eax, 0x32
jne 0x140011d1b
mov dword [rbp + 0x64], 0
jmp 0x140011bbe
mov eax, dword [rbp + 0x64]
inc eax
mov dword [rbp + 0x64], eax
cmp dword [rbp + 0x64], 0xc
jge 0x140011d1b
mov dword [rbp + 0x84], 0
jmp 0x140011be2
mov eax, dword [rbp + 0x84]
inc eax
mov dword [rbp + 0x84], eax
cmp dword [rbp + 0x84], 0x16
jge 0x140011d16
cmp dword [rbp + 0x64], 0
jne 0x140011c4c
mov eax, dword [0x140023b14]
cmp dword [rbp + 0x84], eax
jne 0x140011c4c
mov eax, dword [rbp + 0x64]
lea eax, [rax + rax + 5]
mov word [rbp + 0xa4], ax
mov eax, dword [rbp + 0x84]
inc eax
mov word [rbp + 0xa6], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0xa4]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
lea rcx, [0x14001ff64]
call qword [sym.imp.ucrtbased.dll_puts]
jmp 0x140011d11
cmp dword [rbp + 0x64], 0xb
jne 0x140011ca6
mov eax, dword [0x140023b18]
cmp dword [rbp + 0x84], eax
jne 0x140011ca6
mov eax, dword [rbp + 0x64]
lea eax, [rax + rax + 5]
mov word [rbp + 0xc4], ax
mov eax, dword [rbp + 0x84]
inc eax
mov word [rbp + 0xc6], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0xc4]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
lea rcx, [0x14001ff68]
call qword [sym.imp.ucrtbased.dll_puts]
jmp 0x140011d11
mov eax, dword [rbp + 0x64]
lea eax, [rax + rax + 5]
mov word [rbp + 0xe4], ax
mov eax, dword [rbp + 0x84]
inc eax
mov word [rbp + 0xe6], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0xe4]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
movsxd rax, dword [rbp + 0x64]
imul rax, rax, 0x58
lea rcx, [0x1400236c0]
add rcx, rax
mov rax, rcx
movsxd rcx, dword [rbp + 0x84]
movsxd rax, dword [rax + rcx*4]
lea rcx, [0x140023380]
lea rax, [rcx + rax*4]
mov rcx, rax
call qword [sym.imp.ucrtbased.dll_puts]
jmp 0x140011bd4
jmp 0x140011bb6
mov eax, 0x37
mov word [rbp + 0x104], ax
mov eax, 3
mov word [rbp + 0x106], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x104]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
lea rcx, str.Tetris_Ver_7.0
call qword [sym.imp.ucrtbased.dll_puts]
mov eax, 0x37
mov word [rbp + 0x124], ax
mov eax, 5
mov word [rbp + 0x126], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x124]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
lea rcx, [0x14001ff88]
call qword [sym.imp.ucrtbased.dll_puts]
mov eax, 0x37
mov word [rbp + 0x144], ax
mov eax, 6
mov word [rbp + 0x146], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x144]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
lea rcx, [0x14001ffb0]
call qword [sym.imp.ucrtbased.dll_puts]
mov eax, 0x37
mov word [rbp + 0x164], ax
mov eax, 0xa
mov word [rbp + 0x166], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x164]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
lea rcx, [0x14001ffe0]
call qword [sym.imp.ucrtbased.dll_puts]
mov eax, 0x37
mov word [rbp + 0x184], ax
mov eax, 0xd
mov word [rbp + 0x186], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x184]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
lea rcx, str.____________________
call qword [sym.imp.ucrtbased.dll_puts]
mov eax, 0x38
mov word [rbp + 0x1a4], ax
mov eax, 0xe
mov word [rbp + 0x1a6], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x1a4]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
mov edx, dword [0x140023390]
lea rcx, str.LEVEL__d
call fcn.1400111e5
mov eax, 0x38
mov word [rbp + 0x1c4], ax
mov eax, 0x10
mov word [rbp + 0x1c6], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x1c4]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
mov edx, dword [0x140023af0]
lea rcx, str.SCORE__d
call fcn.1400111e5
mov eax, 0x38
mov word [rbp + 0x1e4], ax
mov eax, 0x12
mov word [rbp + 0x1e6], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x1e4]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
mov edx, dword [0x140023af8]
lea rcx, [0x140020060]
call fcn.1400111e5
mov eax, 0x37
mov word [rbp + 0x204], ax
mov eax, 0x13
mov word [rbp + 0x206], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x204]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
lea rcx, str.____________________
call qword [sym.imp.ucrtbased.dll_puts]
lea rcx, [rbp - 0x20]
lea rdx, [0x14001e0b0]
call fcn.14001139d
lea rsp, [rbp + 0x3a8]
pop rdi
pop rbp
ret