Function at 0x1400113b6
Capabilities:
Manipulate console buffer

Disassembly:
jmp 0x140012030
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
sub rsp, 0x230
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0x54
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x258]
lea rcx, [0x140025177]
call fcn.1400113ca
mov dword [rbp + 4], 0
jmp 0x140012084
mov eax, dword [rbp + 4]
inc eax
mov dword [rbp + 4], eax
cmp dword [rbp + 4], 0xa
jge 0x14001229a
movsxd rax, dword [rbp + 4]
imul rax, rax, 0x10
mov rcx, qword [rbp + 0x238]
movzx eax, byte [rcx + rax]
test eax, eax
jne 0x1400120a7
jmp 0x14001207c
mov dword [rbp + 0x24], 0
jmp 0x1400120b8
mov eax, dword [rbp + 0x24]
inc eax
mov dword [rbp + 0x24], eax
cmp dword [rbp + 0x24], 0x14
jge 0x140012295
movsxd rax, dword [rbp + 0x24]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
movzx eax, byte [rcx + rax]
test eax, eax
jne 0x1400120db
jmp 0x1400120b0
movsxd rax, dword [rbp + 0x24]
imul rax, rax, 0x20
lea rcx, [rbp + 0x1e0]
mov rdx, qword [rbp + 0x240]
mov rdi, rcx
lea rsi, [rdx + rax]
mov ecx, 0x20
rep movsb byte [rdi], byte [rsi]
movsxd rax, dword [rbp + 4]
imul rax, rax, 0x10
lea rcx, [rbp + 0x1b0]
mov rdx, qword [rbp + 0x238]
mov rdi, rcx
lea rsi, [rdx + rax]
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp + 0x1b0]
call fcn.140011145
movzx eax, al
test eax, eax
je 0x140012290
movsxd rax, dword [rbp + 0x24]
imul rax, rax, 0x20
movsxd rcx, dword [rbp + 4]
imul rcx, rcx, 0x10
mov rdx, qword [rbp + 0x240]
mov rdi, qword [rbp + 0x238]
mov ecx, dword [rdi + rcx + 0xc]
mov eax, dword [rdx + rax + 0xc]
sub eax, ecx
movsxd rcx, dword [rbp + 0x24]
imul rcx, rcx, 0x20
mov rdx, qword [rbp + 0x240]
mov dword [rdx + rcx + 0xc], eax
movsxd rax, dword [rbp + 4]
imul rax, rax, 0x10
mov rcx, qword [rbp + 0x238]
movzx eax, word [rcx + rax + 4]
mov word [rbp + 0x44], ax
movsxd rax, dword [rbp + 4]
imul rax, rax, 0x10
mov rcx, qword [rbp + 0x238]
movzx eax, word [rcx + rax + 8]
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]
lea rcx, [0x14001c704]
call fcn.1400111b8
movsxd rax, dword [rbp + 4]
imul rax, rax, 0x10
mov rcx, qword [rbp + 0x238]
mov byte [rcx + rax], 0
movsxd rax, dword [rbp + 0x24]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
cmp dword [rcx + rax + 0xc], 0
jg 0x14001228b
movsxd rax, dword [rbp + 0x24]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
movzx eax, word [rcx + rax + 4]
mov word [rbp + 0x64], ax
movsxd rax, dword [rbp + 0x24]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
movzx eax, word [rcx + rax + 8]
mov word [rbp + 0x66], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov edx, dword [rbp + 0x64]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
lea rcx, [0x14001c6fc]
call fcn.1400111b8
movsxd rax, dword [rbp + 0x24]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x230]
mov ecx, dword [rcx + 0x14]
mov rdx, qword [rbp + 0x240]
add ecx, dword [rdx + rax + 0x18]
mov eax, ecx
mov rcx, qword [rbp + 0x230]
mov dword [rcx + 0x14], eax
movsxd rax, dword [rbp + 0x24]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
mov byte [rcx + rax], 0
jmp 0x1400120b0
jmp 0x1400120b0
jmp 0x14001207c
mov dword [rbp + 0x84], 0
jmp 0x1400122b4
mov eax, dword [rbp + 0x84]
inc eax
mov dword [rbp + 0x84], eax
cmp dword [rbp + 0x84], 0x14
jge 0x1400124a4
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
movzx eax, byte [rcx + rax]
test eax, eax
jne 0x1400122dd
jmp 0x1400122a6
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
mov eax, dword [rcx + rax + 0x1c]
mov dword [rbp + 0x204], eax
cmp dword [rbp + 0x204], 1
je 0x140012314
cmp dword [rbp + 0x204], 2
je 0x1400123dc
jmp 0x14001249f
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
cmp dword [rcx + rax + 4], 0xf
jg 0x1400123d7
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
movzx eax, word [rcx + rax + 4]
mov word [rbp + 0xa4], ax
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
movzx eax, word [rcx + rax + 8]
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, [0x14001c6fc]
call fcn.1400111b8
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x230]
mov rdx, qword [rbp + 0x240]
mov eax, dword [rdx + rax + 0x10]
mov ecx, dword [rcx + 0xc]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rbp + 0x230]
mov dword [rcx + 0xc], eax
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
mov byte [rcx + rax], 0
jmp 0x14001249f
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
cmp dword [rcx + rax + 4], 0x11
jg 0x14001249f
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
movzx eax, word [rcx + rax + 4]
mov word [rbp + 0xc4], ax
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
movzx eax, word [rcx + rax + 8]
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, [0x14001c6fc]
call fcn.1400111b8
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x230]
mov rdx, qword [rbp + 0x240]
mov eax, dword [rdx + rax + 0x10]
mov ecx, dword [rcx + 0xc]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rbp + 0x230]
mov dword [rcx + 0xc], eax
movsxd rax, dword [rbp + 0x84]
imul rax, rax, 0x20
mov rcx, qword [rbp + 0x240]
mov byte [rcx + rax], 0
jmp 0x1400122a6
lea rcx, [rbp - 0x20]
lea rdx, [0x14001c5d0]
call fcn.140011357
lea rsp, [rbp + 0x210]
pop rdi
pop rsi
pop rbp
ret