Function at 0x1800181b0
Capabilities:
Manipulate console buffer

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
lea ebx, [r9 + 0x615]
mov r15d, r9d
mov dword [rsp + 0x40], ebx
mov r14, r8
mov r13, rdx
mov r12, rcx
cmp r9d, ebx
jae 0x180018508
mov ebp, dword [rsp + 0x98]
lea rdi, [0x18007b2d0]
xor esi, esi
nop dword [rax]
cmp r15d, 0xdc
ja 0x180018381
je 0x180018378
mov eax, r15d
sub eax, 0x17
je 0x180018319
sub eax, 0x18
je 0x180018308
sub eax, 0x69
je 0x18001829a
cmp eax, 0x2c
jne 0x1800184f8
mov rcx, qword [r14 + 0x10]
mov rdx, qword [r14 + 0x18]
cmp rcx, rdx
jae 0x18001825f
lea rax, [rcx + 1]
mov qword [r14 + 0x10], rax
mov rax, r14
cmp rdx, 0x10
jb 0x180018257
mov rax, qword [r14]
mov word [rax + rcx], 0x20
jmp 0x180018271
xor r8d, r8d
mov r9b, 0x20
mov rcx, r14
lea edx, [r8 + 1]
call fcn.180001d90
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [r12 + r8], 0
jne 0x180018280
mov rdx, r12
mov rcx, r14
call fcn.18001eff0
jmp 0x1800184f8
xor r8d, r8d
xor edx, edx
mov ecx, 0xa0
call fcn.180011080
cmp eax, 1
je 0x18001852d
movsxd rcx, dword [0x18007b248]
test ecx, ecx
je 0x18001852d
lea eax, [rcx + 4]
mov r8, rcx
movsxd r9, eax
lea rdx, [rdi + rcx*4]
mov r10d, 0x18
cmp r8, r9
jge 0x1800182f9
mov rcx, r9
mov rax, rdx
sub rcx, r8
cmp dword [rax], 1
jne 0x1800182ef
mov qword [rax - 4], 1
add rax, 4
sub rcx, 1
jne 0x1800182e2
add rdx, 0x30
sub r10, 1
jne 0x1800182d4
jmp 0x1800184f8
mov qword [r14 + 0x10], rsi
mov qword [r14 + 0x18], rsi
mov qword [r14 + 0x20], rsi
jmp 0x1800184f8
mov r8, 0xffffffffffffffff
inc r8
cmp byte [r8 + r13], 0
jne 0x180018320
mov rdx, r13
mov rcx, r14
call fcn.18001eff0
mov rcx, qword [r14 + 0x10]
mov rdx, qword [r14 + 0x18]
cmp rcx, rdx
jae 0x180018361
lea rax, [rcx + 1]
mov qword [r14 + 0x10], rax
mov rax, r14
cmp rdx, 0x10
jb 0x180018356
mov rax, qword [r14]
mov word [rax + rcx], 0x3a
jmp 0x1800184f8
xor r8d, r8d
mov r9b, 0x3a
mov rcx, r14
lea edx, [r8 + 1]
call fcn.180001d90
jmp 0x1800184f8
mov dword [r14 + 0x28], esi
jmp 0x1800184f8
mov eax, r15d
sub eax, 0x145
je 0x1800183e7
sub eax, 0x2c
je 0x1800183bc
sub eax, 0x18
je 0x1800183af
cmp eax, 0x69
jne 0x1800184f8
mov ecx, dword [0x180064008]
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1800184f8
mov qword [r14 + 0x30], rsi
mov qword [r14 + 0x38], rsi
jmp 0x1800184f8
cmp qword [0x180067ef8], 0x10
lea rdx, [0x180067ee0]
mov r8, qword [0x180067ef0]
mov rcx, r14
cmovae rdx, qword [0x180067ee0]
call fcn.18001eff0
jmp 0x1800184f8
dec dword [0x18007b248]
mov edi, 0x103
cmp edi, 0x7f7a
ja 0x1800184bf
je 0x1800184aa
mov eax, edi
sub eax, 0xa2
je 0x1800184cc
sub eax, 0x61
je 0x18001849e
cmp eax, 0x4eb9
jne 0x1800184cc
imul ecx, ebp, 7
mov eax, 0x6bca1af3
mov ebx, 7
inc ecx
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x13
sub ecx, eax
cmp ecx, 7
setl sil
add esi, 0xc
nop
lea rax, [rsp + 0x98]
mov dword [rsp + 0x30], ebp
mov r9d, 0x7f
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x30]
mov dword [rsp + 0x98], ebx
xor edx, edx
xor ecx, ecx
call fcn.18001f380
inc ebx
cmp ebx, esi
jle 0x180018450
mov r9d, 0xc7
mov dword [rsp + 0x38], ebp
lea r8, [rsp + 0x38]
xor edx, edx
xor ecx, ecx
call fcn.1800190f0
xor esi, esi
jmp 0x1800184cc
mov dword [0x18007b2b0], 0
jmp 0x1800184cc
mov edx, dword [0x18007b2b0]
mov rcx, qword [0x18007b2a8]
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
jmp 0x1800184cc
test sil, sil
jne 0x1800184de
cmp edi, 0xedf0
je 0x1800184de
add edi, 0x7e77
cmp edi, 0x2f6ca
jbe 0x1800183f2
xor edx, edx
xor ecx, ecx
mov r8d, 0xb9
call fcn.18001a9b0
mov ebx, dword [rsp + 0x40]
lea rdi, [0x18007b2d0]
add r15d, 0xad
cmp r15d, ebx
jb 0x180018200
mov eax, dword [rsp + 0x98]
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov eax, esi
jmp 0x18001850f