Function at 0x42bac0
Capabilities:
Manipulate console buffer

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
mov esi, eax
push ebx
sub esp, 0x40
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_CreateEventW]
sub esp, 0x10
mov ebx, eax
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x28]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_RegisterWaitForSingleObject]
mov dword [esp + 0x14], 8
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 8], 0x42bd50
mov dword [esp + 4], esi
mov dword [ebp - 0x34], eax
call eax
sub esp, 0x18
mov edi, eax
call fcn.0057d110
mov dword [eax], 0x58f03f
mov dword [eax + 4], 0x497
xor eax, eax
cmp edi, 1
sete al
mov dword [esp + 8], edi
mov dword [esp], eax
mov dword [esp + 4], str.Expected_RegisterWaitForSingleObject_to_return_TRUE__got__d_n
call fcn.00427ef0
mov dword [esp], 0x64
call dword [sym.imp.kernel32.dll_Sleep]
mov eax, 1
mov dword [ebp - 0x1c], 1
mov word [ebp - 0x20], ax
sub esp, 4
lea eax, [ebp - 0x24]
mov dword [ebp - 0x18], 0xd0001
mov dword [ebp - 0x14], 0xd000d
mov dword [ebp - 0x10], 0
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x20]
mov dword [esp + 8], 1
mov dword [esp + 4], eax
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_WriteConsoleInputW]
sub esp, 0x10
mov edi, eax
call fcn.0057d110
mov dword [eax], 0x58f03f
mov dword [eax + 4], 0x4a2
xor eax, eax
cmp edi, 1
sete al
mov dword [esp + 8], edi
mov dword [esp], eax
mov dword [esp + 4], str.Expected_WriteConsoleInputW_to_return_TRUE__got__d_n
call fcn.00427ef0
mov eax, dword [sym.imp.kernel32.dll_WaitForSingleObject]
mov dword [esp + 4], 0xffffffff
mov dword [esp], ebx
mov dword [ebp - 0x30], eax
call eax
sub esp, 8
mov edi, eax
call fcn.0057d110
mov dword [eax], 0x58f03f
mov dword [eax + 4], 0x4a4
xor eax, eax
test edi, edi
sete al
mov dword [esp + 4], str.Expected_the_handle_to_be_signaled_n
mov dword [esp], eax
call fcn.00427ef0
mov eax, dword [ebp - 0x28]
mov edi, dword [sym.imp.kernel32.dll_UnregisterWait]
mov dword [esp], eax
call edi
sub esp, 4
mov dword [ebp - 0x2c], eax
call fcn.0057d110
mov dword [eax], 0x58f03f
mov dword [eax + 4], 0x4a8
mov eax, 1
mov edx, dword fs:[0x18]
mov ecx, dword [edx + 0x34]
mov edx, dword [ebp - 0x2c]
test edx, edx
jne 0x42bc69
xor eax, eax
cmp ecx, 0x3e5
sete al
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x58fae0
mov dword [esp], eax
call fcn.00427ef0
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_FlushConsoleInputBuffer]
lea eax, [ebp - 0x28]
sub esp, 4
mov dword [esp + 0xc], ebx
mov dword [esp + 4], esi
mov dword [esp + 0x14], 8
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 8], 0x42bd50
mov dword [esp], eax
mov eax, dword [ebp - 0x34]
call eax
sub esp, 0x18
mov dword [esp], ebx
mov dword [esp + 4], 0x64
mov eax, dword [ebp - 0x30]
call eax
sub esp, 8
mov esi, eax
call fcn.0057d110
mov dword [eax], 0x58f03f
mov dword [eax + 4], 0x4af
xor eax, eax
cmp esi, 0x102
sete al
mov dword [esp + 4], str.Expected_the_wait_to_time_out_n
mov dword [esp], eax
call fcn.00427ef0
mov eax, dword [ebp - 0x28]
mov dword [esp], eax
call edi
sub esp, 4
mov esi, eax
call fcn.0057d110
mov dword [eax], 0x58f03f
mov dword [eax + 4], 0x4b1
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp], esi
mov dword [esp + 4], 0x58fae0
mov dword [esp + 8], eax
call fcn.00427ef0
mov dword [esp], ebx
call dword [sym.imp.kernel32.dll_CloseHandle]
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret