Function at 0x42b7b0
Capabilities:
Manipulate console buffer

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push ecx
push ebx
push esi
mov esi, ecx
push edi
cmp byte [esi + 0x1319], 0
lea eax, [esi + 0x1330]
lea ebx, [esi + 0x132c]
lea edi, [esi + 0x1328]
je 0x42b828
mov eax, dword [esi + 0x1324]
mov ecx, dword [esi + 0x1320]
mov edx, dword [esi + 0x131c]
mov dword [esi + 0x1330], eax
shr eax, 0x1f
xor al, 1
mov dword [ebx], ecx
movzx eax, al
push eax
shr ecx, 0x1f
mov dword [edi], edx
xor cl, 1
movzx eax, cl
mov ecx, dword [esi + 0x1884]
push eax
shr edx, 0x1f
xor dl, 1
movzx eax, dl
push eax
lea eax, [esi + 0x1330]
push eax
push ebx
push edi
call fcn.0042b4c0
mov ecx, dword [edi]
jmp 0x42b858
mov ecx, dword [esi + 0x1884]
push 0
push 0
push 0
push eax
push ebx
push edi
call fcn.0042b4c0
mov eax, dword [ebx]
mov ecx, dword [edi]
mov dword [esi + 0x1320], eax
mov eax, dword [esi + 0x1330]
mov dword [esi + 0x131c], ecx
mov dword [esi + 0x1324], eax
push 0xfffffffffffffff5
mov dword [esi + 0x1878], ecx
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
cmp eax, 0xffffffff
je 0x42b879
xor ecx, ecx
push ecx
push eax
mov dword [esp + 0x14], ecx
call dword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
push dword [esi + 0x1878]
push 0x439470
call fcn.00401070
add esp, 8
push 0xfffffffffffffff5
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
cmp eax, 0xffffffff
je 0x42b8ac
mov dword [esp + 0xc], 0x30000
push dword [esp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
mov edx, dword [edi]
mov eax, str.HHHH
shl edx, 4
sub edx, dword [edi]
add edx, dword [ebx]
mov ecx, edx
shl ecx, 4
sub ecx, edx
mov edx, 0x465418
add ecx, dword [esi + 0x1330]
cmp byte [ecx + esi + 0x1888], 0
cmove eax, edx
push eax
push 0x439450
call fcn.00401070
mov eax, dword [edi]
add esp, 8
cmp eax, 9
ja case.default.0x42b8f0
jmp dword [eax*4 + 0x42ba50]
mov ecx, esi
call fcn.0042ba80
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.0042ec30
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.0042fcd0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.004303a0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.004307d0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.00430b10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.00431f80
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.00432f10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cmp byte [esi + 0x1319], 0
je 0x42b980
mov edi, dword [esi + 0x1320]
test edi, edi
jns 0x42b982
mov edi, dword [ebx]
mov ebx, dword [sym.imp.KERNEL32.dll_GetStdHandle]
push 0xfffffffffffffff5
mov dword [esi + 0x187c], edi
call ebx
cmp eax, 0xffffffff
je 0x42b9aa
mov dword [esp + 0xc], 0x10000
push dword [esp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
push dword [esi + 0x187c]
push 0x439470
call fcn.00401070
add esp, 8
test edi, edi
jne case.default.0x42b8f0
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cmp byte [esi + 0x1319], 0
je 0x42b9de
mov edi, dword [esi + 0x1324]
test edi, edi
jns 0x42b9e4
mov edi, dword [esi + 0x1330]
push 0xfffffffffffffff5
mov dword [esi + 0x1880], edi
call ebx
cmp eax, 0xffffffff
je 0x42ba06
mov dword [esp + 0xc], 0x20000
push dword [esp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
push dword [esi + 0x1880]
push 0x439470
call fcn.00401070
add esp, 8
sub edi, 0
je 0x42ba31
sub edi, 1
jne case.default.0x42b8f0
mov ecx, esi
call fcn.00433480
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.00433110
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, esi
call fcn.00433860
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret