Function at 0x1400046f0
Capabilities:
Manipulate console buffer

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x4030]
mov eax, 0x4130
call fcn.140099f10
sub rsp, rax
mov rax, qword [0x1400b5528]
xor rax, rsp
mov qword [rbp + 0x4020], rax
movzx eax, byte [rcx + 0x11c]
lea r14, [rbp + 0x20]
mov ebx, dword [rcx + 0x118]
mov r13, rcx
movzx edi, byte [rcx + 0x11d]
mov r15, r9
movzx esi, byte [rcx + 0x11e]
mov qword [rbp - 8], rdx
xor edx, edx
mov dword [r9], edx
mov r12d, edx
mov rcx, qword [0x1400b8010]
mov dword [rsp + 0x34], edx
mov edx, 0xffffffff
mov dword [rsp + 0x4c], r8d
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x38], ebx
mov byte [rsp + 0x30], dil
mov byte [rsp + 0x31], sil
mov qword [rsp + 0x40], r14
call qword [sym.imp.KERNEL32.DLL_WaitForSingleObject]
test eax, eax
jne 0x140006631
xor r11d, r11d
mov eax, 0x2000
mov dword [rsp + 0x78], r11d
cmp dword [rsp + 0x4c], r11d
jbe 0x14000654f
mov edx, dword [rsp + 0x4c]
mov eax, r11d
mov qword [rbp - 0x70], rax
nop dword [rax]
nop dword [rax + rax]
mov rcx, qword [rbp - 8]
add rax, rax
cmp dword [0x1400b5598], 0
movups xmm0, xmmword [rcx + rax*8]
movups xmmword [rbp - 0x68], xmm0
mov eax, dword [rbp - 0x68]
jne 0x140004920
test eax, eax
je 0x140004920
mov rbx, qword [rbp - 0x60]
mov r9d, eax
mov dword [rsp + 0x28], r11d
mov r8, rbx
xor edx, edx
mov qword [rsp + 0x20], r11
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.DLL_MultiByteToWideChar]
mov r12d, eax
test eax, eax
je 0x140006541
lea r14d, [rax*2 + 2]
xor edx, edx
mov eax, edx
mov dword [rsp + 0x3c], r14d
mov edi, 0x2000
cmp r14d, edi
seta al
mov dword [rsp + 0x34], eax
jbe 0x140004854
mov ecx, r14d
test r14d, r14d
je 0x14000484a
call qword [sub.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rsp + 0x40], rax
jmp 0x140004859
mov rax, rdx
mov qword [rsp + 0x40], rdx
jmp 0x140004859
mov rax, qword [rsp + 0x40]
mov r9d, dword [rbp - 0x68]
mov r8, rbx
mov dword [rsp + 0x28], r12d
xor edx, edx
mov ecx, 0xfde9
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.DLL_MultiByteToWideChar]
test eax, eax
je 0x1400064fd
mov r14, qword [rsp + 0x40]
xor r11d, r11d
mov edi, r11d
mov r8d, 0x2000
mov ebx, r12d
sub ebx, edi
cmp ebx, r8d
cmova ebx, r8d
cmp dword [r15], 0
jne 0x1400048d7
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x2c]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x1400048ce
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov r8d, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140004890
cmp dword [rsp + 0x3c], r8d
jbe 0x14000490f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
mov dword [rsp + 0x34], r11d
mov dword [rax], ebx
lea rax, [rbp + 0x20]
mov qword [rsp + 0x40], rax
mov ebx, dword [rsp + 0x38]
mov r12d, r11d
movzx edi, byte [rsp + 0x30]
jmp 0x140004ce6
mov ecx, r11d
mov dword [rsp + 0x3c], ecx
test eax, eax
je 0x140004cea
nop
mov rdx, qword [rbp - 0x60]
mov r10d, dword [rsp + 0x48]
mov eax, ecx
movzx edx, byte [rax + rdx]
movzx eax, dl
test r10b, r10b
jne 0x140004986
not al
movzx eax, al
bsr r8d, eax
je 0x1400049c3
cmp r8d, 7
jne 0x140004961
mov r9d, edx
mov dword [rsp + 0x38], edx
jmp 0x1400049ce
cmp r8d, 5
ja 0x1400049c3
mov ecx, 8
mov r9d, 0xff
sub ecx, r8d
mov r10d, 6
sar r9d, cl
and r9d, edx
sub r10b, r8b
jmp 0x14000499f
and al, 0xc0
cmp al, 0x80
jne 0x1400049b8
mov r9d, edx
mov eax, ebx
and r9d, 0x3f
shl eax, 6
add r10b, 0xff
or r9d, eax
mov ecx, dword [rsp + 0x3c]
mov dword [rsp + 0x38], r9d
mov dword [rsp + 0x48], r10d
test r10b, r10b
jne 0x140004ccd
jmp 0x1400049ce
dec ecx
mov byte [rsp + 0x48], 0
mov dword [rsp + 0x3c], ecx
mov r9d, 0xfffd
mov dword [rsp + 0x38], r9d
test sil, sil
jne 0x140004a08
cmp r9d, 0x1b
je 0x1400049fb
cmp r9d, 0x9b
jne 0x140004dc6
mov sil, 4
mov byte [r13 + 0x11f], 0
mov byte [rsp + 0x31], sil
jmp 0x140004ccd
mov sil, 2
mov byte [rsp + 0x31], sil
jmp 0x140004ccd
cmp sil, 2
jne 0x140005052
lea eax, [r9 - 0x1b]
cmp eax, 0x48
ja case.0x140004a38.28
lea rdx, [0x140000000]
movzx eax, byte [rdx + rax + 0x6654]
mov ecx, dword [rdx + rax*4 + 0x6638]
add rcx, rdx
jmp rcx
mov sil, 4
mov byte [r13 + 0x11f], 0
jmp 0x140004cc4
mov sil, 8
jmp 0x140004cc4
mov edi, r11d
mov eax, 0x2000
nop word [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140004aa4
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x1c]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x140004a9c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140004a60
cmp dword [rsp + 0x34], 0
je 0x140004adc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
cmp dword [r15], 0
mov r12d, r11d
movzx edi, word [reloc.WS2_32.dll_getsockopt]
mov dword [rsp + 0x50], 0
jne 0x140004cbc
mov rcx, qword [r13 + 0x110]
movzx edx, di
call qword [sym.imp.KERNEL32.DLL_SetConsoleTextAttribute]
test eax, eax
je 0x140006425
mov ebx, dword [rsp + 0x50]
mov edx, ebx
mov rcx, qword [r13 + 0x110]
call qword [sym.imp.KERNEL32.DLL_SetConsoleCursorPosition]
test eax, eax
je 0x140006425
nop dword [rax + rax]
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp + 8]
call qword [sym.imp.KERNEL32.DLL_GetConsoleScreenBufferInfo]
test eax, eax
je 0x140006425
movsx eax, word [rbp + 8]
mov edx, 0x20
movsx r8d, word [rbp + 0xa]
mov r9d, ebx
mov rcx, qword [r13 + 0x110]
imul r8d, eax
lea rax, [rsp + 0x54]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.DLL_FillConsoleOutputCharacterW]
test eax, eax
je 0x140004b9f
mov r8d, dword [rsp + 0x54]
lea rax, [rsp + 0x54]
mov rcx, qword [r13 + 0x110]
mov r9d, ebx
movzx edx, di
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.DLL_FillConsoleOutputAttribute]
test eax, eax
jne 0x140004bb8
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0x57
je 0x140004b30
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
jmp 0x140004cbc
movsx eax, word [rbp + 8]
xor r11d, r11d
movsx edx, word [rbp + 0x18]
mov ecx, r11d
mov dword [0x1400b55b0], eax
movsx eax, word [rbp + 0x14]
sub edx, eax
mov dword [0x1400b559c], r11d
movsx eax, word [rbp + 0xe]
inc edx
sub eax, edx
mov dword [0x1400b55a0], edx
inc eax
test eax, eax
jle 0x140004bf5
mov dword [0x1400b559c], eax
mov ecx, eax
movsx r8d, word [rbp + 0xa]
lea eax, [rdx + rcx]
cmp eax, r8d
jle 0x140004c0d
mov ecx, r8d
sub ecx, edx
mov dword [0x1400b559c], ecx
test ecx, ecx
jns 0x140004cbc
mov dword [0x1400b559c], r11d
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop dword [rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140004c74
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x18]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x140004c6c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140004c30
cmp dword [rsp + 0x34], 0
je 0x140004cac
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
mov r12d, r11d
mov r8, r15
mov dl, 1
mov rcx, r13
call fcn.1400044e0
movzx edi, byte [rsp + 0x30]
xor sil, sil
mov byte [rsp + 0x31], sil
mov ecx, dword [rsp + 0x3c]
mov ebx, dword [rsp + 0x38]
inc ecx
mov r11d, 0
mov dword [rsp + 0x3c], ecx
cmp ecx, dword [rbp - 0x68]
jb 0x140004930
mov edx, dword [rsp + 0x4c]
mov ecx, dword [rsp + 0x78]
mov rax, qword [rbp - 0x70]
inc ecx
mov r14, qword [rsp + 0x40]
inc rax
mov dword [rsp + 0x78], ecx
mov qword [rbp - 0x70], rax
cmp ecx, edx
jae 0x14000654a
jmp 0x1400047c0
mov edi, r11d
mov eax, 0x2000
nop dword [rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140004d64
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x10]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x140004d5c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140004d20
cmp dword [rsp + 0x34], 0
je 0x140004d9c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
mov r8, r15
mov dl, 1
mov rcx, r13
mov r12d, r11d
call fcn.140004610
jmp 0x140004cbc
xor sil, sil
lea eax, [r9 - 0x40]
mov byte [rsp + 0x31], sil
cmp eax, 0x1f
jbe case.0x140004a38.27
cmp r9d, 0xffff
jbe 0x140004dda
mov eax, 0xfffd
mov dword [rsp + 0x38], eax
jmp 0x140004dee
cmp r9d, 0xa
je 0x140004f7e
cmp r9d, 0xd
je 0x140004eaf
mov edx, 0x2000
mov eax, r12d
mov ecx, edx
sub rcx, rax
cmp rcx, 1
jae 0x140004e8f
mov edi, r11d
nop dword [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, edx
cmova ebx, edx
cmp dword [r15], 0
jne 0x140004e54
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0xc]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x140004e4c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov edx, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140004e10
cmp dword [rsp + 0x34], 0
je 0x140004e8c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
mov r12d, r11d
mov ebx, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x3c]
mov eax, r12d
inc r12d
xor dil, dil
mov byte [rsp + 0x30], dil
mov word [rbp + rax*2 + 0x20], bx
jmp 0x140004cd1
cmp dil, 0xa
je 0x140004f70
mov edx, 0x2000
mov eax, r12d
mov ecx, edx
sub rcx, rax
cmp rcx, 1
jae 0x140004f64
mov edi, r11d
nop dword [rax]
nop word [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, edx
cmova ebx, edx
cmp dword [r15], 0
jne 0x140004f24
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x58]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x140004f1c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov edx, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140004ee0
cmp dword [rsp + 0x34], 0
je 0x140004f5c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
mov r9d, dword [rsp + 0x38]
mov r12d, r11d
mov eax, r12d
inc r12d
mov word [rbp + rax*2 + 0x20], r9w
movzx edi, r9b
mov byte [rsp + 0x30], r9b
jmp case.0x140004a38.27
cmp dil, 0xd
je 0x140004eb9
mov edx, 0x2000
mov eax, r12d
mov ecx, edx
sub rcx, rax
cmp rcx, 2
jae 0x140005026
mov edi, r11d
mov ebx, r12d
sub ebx, edi
cmp ebx, edx
cmova ebx, edx
cmp dword [r15], 0
jne 0x140004fe6
mov rcx, qword [r13 + 0x110]
lea r9, [rbp]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x140004fde
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov edx, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140004fa2
cmp dword [rsp + 0x34], 0
je 0x14000501e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
mov r9d, dword [rsp + 0x38]
mov r12d, r11d
mov eax, r12d
mov ecx, 0xd
inc r12d
mov byte [rsp + 0x30], r9b
movzx edi, r9b
mov word [rbp + rax*2 + 0x20], cx
mov ecx, 0xa
mov word [rbp + r12*2 + 0x20], cx
inc r12d
jmp case.0x140004a38.27
test sil, 4
je 0x140006451
test sil, 0x10
jne 0x140006433
lea eax, [r9 - 0x30]
cmp eax, 9
ja 0x14000510c
movzx eax, byte [r13 + 0x11f]
mov ebx, dword [rsp + 0x38]
test sil, 0x20
jne 0x1400050c2
cmp al, 4
jb 0x140005097
or sil, 0x10
mov byte [rsp + 0x31], sil
jmp 0x140004cd1
or sil, 0x20
inc al
mov byte [rsp + 0x31], sil
movzx ecx, al
lea eax, [r9 - 0x30]
mov byte [r13 + 0x11f], cl
mov word [r13 + rcx*2 + 0x11e], ax
mov ecx, dword [rsp + 0x3c]
jmp 0x140004cd1
lea rdx, [rax*2]
movzx eax, word [rdx + r13 + 0x11e]
lea ecx, [rax + rax*4]
add ecx, ecx
cmp ecx, 0xffff
jbe 0x1400050f2
mov ecx, dword [rsp + 0x3c]
or sil, 0x10
mov byte [rsp + 0x31], sil
jmp 0x140004cd1
sub cx, 0x30
add cx, r9w
mov word [rdx + r13 + 0x11e], cx
mov ecx, dword [rsp + 0x3c]
jmp 0x140004cd1
cmp r9d, 0x3b
jne 0x14000515e
test sil, 0x20
je 0x140005126
and sil, 0xdf
mov byte [rsp + 0x31], sil
jmp 0x140004ccd
movzx eax, byte [r13 + 0x11f]
mov ebx, dword [rsp + 0x38]
cmp al, 4
jb 0x140005144
or sil, 0x10
mov byte [rsp + 0x31], sil
jmp 0x140004cd1
inc al
movzx eax, al
mov byte [r13 + 0x11f], al
mov word [r13 + rax*2 + 0x11e], r11w
jmp 0x140004cd1
cmp r9d, 0x3f
jne 0x140005186
test sil, 0x20
jne 0x140005178
cmp byte [r13 + 0x11f], 0
je 0x140004ccd
or sil, 0x10
mov byte [rsp + 0x31], sil
jmp 0x140004ccd
lea eax, [r9 - 0x40]
cmp eax, 0x3e
ja 0x140005178
movzx edx, byte [r13 + 0x11f]
test dl, dl
jne 0x1400051a1
cmp r9d, 0x5b
je 0x140005178
lea eax, [r9 - 0x41]
cmp eax, 0x34
ja case.0x1400051c9.73
lea r8, [0x140000000]
movzx eax, byte [r8 + rax + 0x66e0]
mov ecx, dword [r8 + rax*4 + 0x66a0]
add rcx, r8
jmp rcx
mov edi, r11d
mov eax, 0x2000
nop dword [rax]
nop word [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140005224
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x54]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x14000521c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x1400051e0
cmp dword [rsp + 0x34], 0
je 0x14000525c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
cmp byte [r13 + 0x11f], 0
mov r12d, r11d
je 0x140005273
movzx ebx, word [r13 + 0x120]
jmp 0x140005278
mov ebx, 1
cmp dword [r15], 0
jne 0x140004cbc
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp + 8]
call qword [sym.imp.KERNEL32.DLL_GetConsoleScreenBufferInfo]
test eax, eax
jne 0x1400052a0
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
movsx eax, word [rbp + 0x14]
movsx r8d, word [rbp + 0x18]
movsx r10d, word [rbp + 8]
sub r8d, eax
mov ecx, dword [0x1400b559c]
inc r8d
movsx edx, word [rbp + 0xe]
mov dword [0x1400b55b0], r10d
mov dword [0x1400b55a0], r8d
cmp ecx, 0xffffffff
jne 0x1400052d5
mov ecx, edx
jmp 0x1400052e1
mov eax, edx
sub eax, r8d
inc eax
cmp ecx, eax
cmovl ecx, eax
movsx r9d, word [rbp + 0xa]
lea eax, [r8 + rcx]
cmp eax, r9d
jle 0x1400052f5
mov ecx, r9d
sub ecx, r8d
test ecx, ecx
mov r9d, 0
cmovs ecx, r9d
sub edx, ebx
mov dword [0x1400b559c], ecx
cmp edx, ecx
jge 0x140005311
mov edx, ecx
jmp 0x14000531c
lea eax, [r8 + rcx]
cmp edx, eax
jl 0x14000531c
lea edx, [rax - 1]
movsx eax, word [rbp + 0xc]
test eax, eax
jns 0x140005329
mov eax, r9d
jmp 0x140005332
cmp eax, r10d
jl 0x140005332
lea eax, [r10 - 1]
mov rcx, qword [r13 + 0x110]
mov word [rsp + 0x58], ax
mov word [rsp + 0x5a], dx
mov edx, dword [rsp + 0x58]
call qword [sym.imp.KERNEL32.DLL_SetConsoleCursorPosition]
test eax, eax
jne 0x140004cbc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0x57
je 0x140005282
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop word [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x1400053c4
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x50]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x1400053bc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140005380
cmp dword [rsp + 0x34], 0
je 0x1400053fc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
cmp byte [r13 + 0x11f], 0
mov r12d, r11d
je 0x140005413
movzx ebx, word [r13 + 0x120]
jmp 0x140005418
mov ebx, 1
cmp dword [r15], 0
jne 0x140004cbc
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp + 8]
call qword [sym.imp.KERNEL32.DLL_GetConsoleScreenBufferInfo]
test eax, eax
jne 0x140005440
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
movsx eax, word [rbp + 0x14]
movsx edx, word [rbp + 0x18]
movsx r10d, word [rbp + 8]
sub edx, eax
mov ecx, dword [0x1400b559c]
inc edx
movsx r8d, word [rbp + 0xe]
mov dword [0x1400b55b0], r10d
mov dword [0x1400b55a0], edx
cmp ecx, 0xffffffff
jne 0x140005473
mov ecx, r8d
jmp 0x14000547f
mov eax, r8d
sub eax, edx
inc eax
cmp ecx, eax
cmovl ecx, eax
movsx r9d, word [rbp + 0xa]
lea eax, [rdx + rcx]
cmp eax, r9d
jle 0x140005491
mov ecx, r9d
sub ecx, edx
test ecx, ecx
mov r9d, 0
cmovs ecx, r9d
add r8d, ebx
mov dword [0x1400b559c], ecx
cmp r8d, ecx
jge 0x1400054b0
mov r8d, ecx
jmp 0x1400054bc
lea eax, [rdx + rcx]
cmp r8d, eax
jl 0x1400054bc
lea r8d, [rax - 1]
movsx eax, word [rbp + 0xc]
test eax, eax
jns 0x1400054c9
mov eax, r9d
jmp 0x1400054d2
cmp eax, r10d
jl 0x1400054d2
lea eax, [r10 - 1]
mov rcx, qword [r13 + 0x110]
mov word [rsp + 0x5c], ax
mov word [rsp + 0x5e], r8w
mov edx, dword [rsp + 0x5c]
call qword [sym.imp.KERNEL32.DLL_SetConsoleCursorPosition]
test eax, eax
jne 0x140004cbc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0x57
je 0x140005422
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop dword [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140005564
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x4c]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x14000555c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140005520
cmp dword [rsp + 0x34], 0
je 0x14000559c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
cmp byte [r13 + 0x11f], 0
mov r12d, r11d
je 0x1400055b3
movzx ebx, word [r13 + 0x120]
jmp 0x1400055b8
mov ebx, 1
cmp dword [r15], 0
jne 0x140004cbc
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp + 8]
call qword [sym.imp.KERNEL32.DLL_GetConsoleScreenBufferInfo]
test eax, eax
jne 0x1400055e0
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
movsx eax, word [rbp + 0x14]
movsx r8d, word [rbp + 0x18]
movsx r10d, word [rbp + 8]
sub r8d, eax
mov ecx, dword [0x1400b559c]
inc r8d
movsx edx, word [rbp + 0xe]
mov dword [0x1400b55b0], r10d
mov dword [0x1400b55a0], r8d
cmp ecx, 0xffffffff
jne 0x140005615
mov ecx, edx
jmp 0x140005621
mov eax, edx
sub eax, r8d
inc eax
cmp ecx, eax
cmovl ecx, eax
movsx r9d, word [rbp + 0xa]
lea eax, [r8 + rcx]
cmp eax, r9d
jle 0x140005635
mov ecx, r9d
sub ecx, r8d
test ecx, ecx
mov r9d, 0
cmovs ecx, r9d
mov dword [0x1400b559c], ecx
cmp edx, ecx
jge 0x14000564f
mov edx, ecx
jmp 0x14000565a
lea eax, [r8 + rcx]
cmp edx, eax
jl 0x14000565a
lea edx, [rax - 1]
movsx eax, word [rbp + 0xc]
add eax, ebx
jns 0x140005667
mov eax, r9d
jmp 0x140005670
cmp eax, r10d
jl 0x140005670
lea eax, [r10 - 1]
mov rcx, qword [r13 + 0x110]
mov word [rsp + 0x60], ax
mov word [rsp + 0x62], dx
mov edx, dword [rsp + 0x60]
call qword [sym.imp.KERNEL32.DLL_SetConsoleCursorPosition]
test eax, eax
jne 0x140004cbc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0x57
je 0x1400055c2
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop dword [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140005704
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x48]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x1400056fc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x1400056c0
cmp dword [rsp + 0x34], 0
je 0x14000573c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
cmp byte [r13 + 0x11f], 0
mov r12d, r11d
je 0x140005753
movzx ebx, word [r13 + 0x120]
jmp 0x140005758
mov ebx, 1
cmp dword [r15], 0
jne 0x140004cbc
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp + 8]
call qword [sym.imp.KERNEL32.DLL_GetConsoleScreenBufferInfo]
test eax, eax
jne 0x140005780
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
movsx eax, word [rbp + 0x14]
movsx r8d, word [rbp + 0x18]
movsx r10d, word [rbp + 8]
sub r8d, eax
mov eax, dword [0x1400b559c]
inc r8d
movsx edx, word [rbp + 0xe]
mov dword [0x1400b55b0], r10d
mov dword [0x1400b55a0], r8d
cmp eax, 0xffffffff
jne 0x1400057b5
mov eax, edx
jmp 0x1400057c1
mov ecx, edx
sub ecx, r8d
inc ecx
cmp eax, ecx
cmovl eax, ecx
movsx r9d, word [rbp + 0xa]
lea ecx, [r8 + rax]
cmp ecx, r9d
jle 0x1400057d5
mov eax, r9d
sub eax, r8d
test eax, eax
mov ecx, 0
cmovs eax, ecx
mov dword [0x1400b559c], eax
cmp edx, eax
jge 0x1400057ed
mov edx, eax
jmp 0x1400057fa
lea ecx, [r8 + rax]
cmp edx, ecx
jl 0x1400057f8
lea edx, [rcx - 1]
xor ecx, ecx
movsx eax, word [rbp + 0xc]
sub eax, ebx
jns 0x140005806
mov eax, ecx
jmp 0x14000580f
cmp eax, r10d
jl 0x14000580f
lea eax, [r10 - 1]
mov rcx, qword [r13 + 0x110]
mov word [rsp + 0x64], ax
mov word [rsp + 0x66], dx
mov edx, dword [rsp + 0x64]
call qword [sym.imp.KERNEL32.DLL_SetConsoleCursorPosition]
test eax, eax
jne 0x140004cbc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0x57
je 0x140005762
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop word [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x1400058a4
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x44]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x14000589c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140005860
cmp dword [rsp + 0x34], 0
je 0x1400058dc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
cmp byte [r13 + 0x11f], 0
mov r12d, r11d
je 0x1400058f3
movzx ebx, word [r13 + 0x120]
jmp 0x1400058f8
mov ebx, 1
cmp dword [r15], 0
jne 0x140004cbc
xor edi, edi
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp + 8]
call qword [sym.imp.KERNEL32.DLL_GetConsoleScreenBufferInfo]
test eax, eax
jne 0x140005922
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
movsx eax, word [rbp + 0x14]
mov r11d, edi
movsx edx, word [rbp + 0x18]
movsx r10d, word [rbp + 8]
sub edx, eax
mov ecx, dword [0x1400b559c]
inc edx
movsx r8d, word [rbp + 0xe]
mov dword [0x1400b55b0], r10d
mov dword [0x1400b55a0], edx
cmp ecx, 0xffffffff
jne 0x140005958
mov ecx, r8d
jmp 0x140005964
mov eax, r8d
sub eax, edx
inc eax
cmp ecx, eax
cmovl ecx, eax
movsx r9d, word [rbp + 0xa]
lea eax, [rdx + rcx]
cmp eax, r9d
jle 0x140005976
mov ecx, r9d
sub ecx, edx
test ecx, ecx
lea eax, [r8 + rbx]
cmovs ecx, edi
mov dword [0x1400b559c], ecx
cmp eax, ecx
jge 0x14000598d
mov eax, ecx
jmp 0x14000599a
lea r8d, [rdx + rcx]
cmp eax, r8d
jl 0x14000599a
lea eax, [r8 - 1]
test r10d, r10d
jg 0x1400059a3
lea r11d, [r10 - 1]
mov rcx, qword [r13 + 0x110]
mov word [rsp + 0x68], r11w
mov word [rsp + 0x6a], ax
mov edx, dword [rsp + 0x68]
call qword [sym.imp.KERNEL32.DLL_SetConsoleCursorPosition]
test eax, eax
jne 0x140004cbc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0x57
je 0x140005904
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop dword [rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140005a34
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x40]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x140005a2c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x1400059f0
cmp dword [rsp + 0x34], 0
je 0x140005a6c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
cmp byte [r13 + 0x11f], 0
mov r12d, r11d
je 0x140005a83
movzx ebx, word [r13 + 0x120]
jmp 0x140005a88
mov ebx, 1
cmp dword [r15], 0
jne 0x140004cbc
xor edi, edi
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp + 8]
call qword [sym.imp.KERNEL32.DLL_GetConsoleScreenBufferInfo]
test eax, eax
jne 0x140005ab2
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
movsx eax, word [rbp + 0x14]
mov r11d, edi
movsx r8d, word [rbp + 0x18]
movsx r10d, word [rbp + 8]
sub r8d, eax
mov ecx, dword [0x1400b559c]
inc r8d
movsx edx, word [rbp + 0xe]
mov dword [0x1400b55b0], r10d
mov dword [0x1400b55a0], r8d
cmp ecx, 0xffffffff
jne 0x140005aea
mov ecx, edx
jmp 0x140005af6
mov eax, edx
sub eax, r8d
inc eax
cmp ecx, eax
cmovl ecx, eax
movsx r9d, word [rbp + 0xa]
lea eax, [r8 + rcx]
cmp eax, r9d
jle 0x140005b0a
mov ecx, r9d
sub ecx, r8d
test ecx, ecx
cmovs ecx, edi
sub edx, ebx
mov dword [0x1400b559c], ecx
cmp edx, ecx
jge 0x140005b1f
mov edx, ecx
jmp 0x140005b2a
lea eax, [r8 + rcx]
cmp edx, eax
jl 0x140005b2a
lea edx, [rax - 1]
test r10d, r10d
jg 0x140005b33
lea r11d, [r10 - 1]
mov rcx, qword [r13 + 0x110]
mov word [rsp + 0x6c], r11w
mov word [rsp + 0x6e], dx
mov edx, dword [rsp + 0x6c]
call qword [sym.imp.KERNEL32.DLL_SetConsoleCursorPosition]
test eax, eax
jne 0x140004cbc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0x57
je 0x140005a94
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop dword [rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140005bc4
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x3c]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x140005bbc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140005b80
cmp dword [rsp + 0x34], 0
je 0x140005bfc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
cmp byte [r13 + 0x11f], 1
mov r12d, r11d
jb 0x140005c19
movzx eax, word [r13 + 0x120]
lea ebx, [rax - 1]
test ax, ax
jne 0x140005c1c
mov ebx, r11d
cmp dword [r15], 0
jne 0x140004cbc
nop word [rax + rax]
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp + 8]
call qword [sym.imp.KERNEL32.DLL_GetConsoleScreenBufferInfo]
test eax, eax
jne 0x140005c4e
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
movsx eax, word [rbp + 0x14]
mov r11d, ebx
movsx r8d, word [rbp + 0x18]
movsx r10d, word [rbp + 8]
sub r8d, eax
mov ecx, dword [0x1400b559c]
inc r8d
movsx edx, word [rbp + 0xe]
mov dword [0x1400b55b0], r10d
mov dword [0x1400b55a0], r8d
cmp ecx, 0xffffffff
jne 0x140005c86
mov ecx, edx
jmp 0x140005c92
mov eax, edx
sub eax, r8d
inc eax
cmp ecx, eax
cmovl ecx, eax
movsx r9d, word [rbp + 0xa]
lea eax, [r8 + rcx]
cmp eax, r9d
jle 0x140005ca6
mov ecx, r9d
sub ecx, r8d
test ecx, ecx
mov eax, 0
cmovs ecx, eax
mov dword [0x1400b559c], ecx
cmp edx, ecx
jge 0x140005cbe
mov edx, ecx
jmp 0x140005ccb
lea eax, [r8 + rcx]
cmp edx, eax
jl 0x140005cc9
lea edx, [rax - 1]
xor eax, eax
test ebx, ebx
jns 0x140005cd4
mov r11d, eax
jmp 0x140005cdd
cmp ebx, r10d
jl 0x140005cdd
lea r11d, [r10 - 1]
mov rcx, qword [r13 + 0x110]
mov word [rsp + 0x70], r11w
mov word [rsp + 0x72], dx
mov edx, dword [rsp + 0x70]
call qword [sym.imp.KERNEL32.DLL_SetConsoleCursorPosition]
test eax, eax
jne 0x140004cbc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0x57
je 0x140005c30
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop word [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140005d74
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x38]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x140005d6c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140005d30
cmp dword [rsp + 0x34], 0
je 0x140005dac
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
movzx ecx, byte [r13 + 0x11f]
mov r12d, r11d
cmp cl, 1
jb 0x140005dcc
movzx eax, word [r13 + 0x120]
lea edi, [rax - 1]
test ax, ax
jne 0x140005dcf
mov edi, r11d
cmp cl, 2
jb 0x140005de4
movzx eax, word [r13 + 0x122]
lea ebx, [rax - 1]
test ax, ax
jne 0x140005de7
mov ebx, r11d
cmp dword [r15], 0
jne 0x140004cbc
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp + 8]
call qword [sym.imp.KERNEL32.DLL_GetConsoleScreenBufferInfo]
test eax, eax
jne 0x140005e0f
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
movsx eax, word [rbp + 0x14]
mov r10d, ebx
movsx edx, word [rbp + 0x18]
movsx r9d, word [rbp + 8]
sub edx, eax
mov ecx, dword [0x1400b559c]
inc edx
mov dword [0x1400b55b0], r9d
mov dword [0x1400b55a0], edx
cmp ecx, 0xffffffff
jne 0x140005e41
movsx ecx, word [rbp + 0xe]
jmp 0x140005e4e
movsx eax, word [rbp + 0xe]
sub eax, edx
inc eax
cmp ecx, eax
cmovl ecx, eax
movsx r8d, word [rbp + 0xa]
lea eax, [rdx + rcx]
cmp eax, r8d
jle 0x140005e60
mov ecx, r8d
sub ecx, edx
test ecx, ecx
mov r8d, 0
cmovs ecx, r8d
mov dword [0x1400b559c], ecx
lea eax, [rcx + rdi]
cmp eax, ecx
jge 0x140005e7d
mov eax, ecx
jmp 0x140005e8d
lea r8d, [rdx + rcx]
cmp eax, r8d
jl 0x140005e8a
lea eax, [r8 - 1]
xor r8d, r8d
test ebx, ebx
jns 0x140005e96
mov r10d, r8d
jmp 0x140005e9f
cmp ebx, r9d
jl 0x140005e9f
lea r10d, [r9 - 1]
mov rcx, qword [r13 + 0x110]
mov word [rsp + 0x74], r10w
mov word [rsp + 0x76], ax
mov edx, dword [rsp + 0x74]
call qword [sym.imp.KERNEL32.DLL_SetConsoleCursorPosition]
test eax, eax
jne 0x140004cbc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
cmp eax, 0x57
je 0x140005df1
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop dword [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140005f34
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x34]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x140005f2c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140005ef0
cmp dword [rsp + 0x34], 0
je 0x140005f6c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
cmp byte [r13 + 0x11f], 0
mov r12d, r11d
je 0x140005f9d
movzx edx, word [r13 + 0x120]
cmp edx, 2
ja 0x140004cbc
mov r9, r15
mov r8b, 1
mov rcx, r13
call fcn.140003ea0
jmp 0x140004cbc
mov edx, r11d
mov r9, r15
mov r8b, 1
mov rcx, r13
call fcn.140003ea0
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop dword [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140006004
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x30]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x140005ffc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140005fc0
cmp dword [rsp + 0x34], 0
je 0x14000603c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
cmp byte [r13 + 0x11f], 0
mov r12d, r11d
je 0x14000606d
movzx edx, word [r13 + 0x120]
cmp edx, 2
ja 0x140004cbc
mov r9, r15
xor r8d, r8d
mov rcx, r13
call fcn.140003ea0
jmp 0x140004cbc
mov edx, r11d
mov r9, r15
xor r8d, r8d
mov rcx, r13
call fcn.140003ea0
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop dword [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x1400060d4
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x14]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x1400060cc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140006090
cmp dword [rsp + 0x34], 0
je 0x14000610c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
mov rdx, r15
mov rcx, r13
mov r12d, r11d
call fcn.140004170
jmp 0x140004cbc
mov edi, r11d
mov eax, 0x2000
nop word [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140006174
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x28]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x14000616c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140006130
cmp dword [rsp + 0x34], 0
je 0x1400061ac
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
mov r12d, r11d
mov r8, r15
xor edx, edx
jmp 0x140004cb4
mov edi, r11d
mov eax, 0x2000
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x140006205
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x24]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x1400061fd
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x1400061c1
cmp dword [rsp + 0x34], 0
je 0x14000623d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
cmp dword [r15], 0
mov r12d, r11d
jne 0x140004cbc
test dword [r13 + 0x58], 0x4000000
je 0x140004cbc
movsx r9d, word [r13 + 0x12a]
xor r8d, r8d
movsx edx, word [r13 + 0x128]
mov rcx, r13
mov qword [rsp + 0x28], r15
mov byte [rsp + 0x20], 0
call fcn.140003d20
jmp 0x140004cbc
cmp dl, 1
jne case.0x1400051c9.73
cmp word [r13 + 0x120], 0x19
jne case.0x1400051c9.73
mov edi, r11d
mov eax, 0x2000
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x1400062e6
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x20]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x1400062de
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x1400062a2
cmp dword [rsp + 0x34], 0
je 0x14000631e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp - 0x80]
mov r12d, r11d
call qword [sym.imp.KERNEL32.DLL_GetConsoleCursorInfo]
test eax, eax
je 0x140006425
xor edx, edx
mov dword [rbp - 0x7c], edx
lea rdx, [rbp - 0x80]
jmp 0x140006410
cmp dl, 1
jne case.0x1400051c9.73
cmp word [r13 + 0x120], 0x19
jne case.0x1400051c9.73
mov edi, r11d
mov eax, 0x2000
nop dword [rax + rax]
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], 0
jne 0x1400063b5
mov rcx, qword [r13 + 0x110]
lea r9, [rsp + 0x7c]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], r11
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x1400063ad
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor r11d, r11d
add edi, ebx
cmp edi, r12d
jb 0x140006370
cmp dword [rsp + 0x34], 0
je 0x1400063ed
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
xor r11d, r11d
lea r14, [rbp + 0x20]
mov dword [rsp + 0x34], r11d
mov qword [rsp + 0x40], r14
mov dword [rax], ebx
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp - 0x78]
mov r12d, r11d
call qword [sym.imp.KERNEL32.DLL_GetConsoleCursorInfo]
test eax, eax
je 0x140006425
mov dword [rbp - 0x74], 1
lea rdx, [rbp - 0x78]
mov rcx, qword [r13 + 0x110]
call qword [sym.imp.KERNEL32.DLL_SetConsoleCursorInfo]
test eax, eax
jne 0x140004cbc
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
jmp 0x140004cbc
mov ebx, dword [rsp + 0x38]
lea eax, [r9 - 0x40]
cmp eax, 0x3e
ja 0x140004cd1
xor sil, sil
mov byte [rsp + 0x31], sil
jmp 0x140004cd1
test sil, 8
je 0x140006631
test sil, 0x40
je 0x1400064a4
test sil, sil
js 0x140006496
cmp r9d, 0x22
jne 0x14000647a
and sil, 0xbf
mov byte [rsp + 0x31], sil
jmp 0x140004ccd
mov ebx, dword [rsp + 0x38]
cmp r9d, 0x5c
jne 0x140004cd1
or sil, 0x80
mov byte [rsp + 0x31], sil
jmp 0x140004cd1
and sil, 0x7f
mov byte [rsp + 0x31], sil
jmp 0x140004ccd
cmp r9d, 7
je 0x1400064f0
cmp r9d, 0x5c
jne 0x1400064c4
test sil, 2
jne 0x1400064f0
and sil, 0xfd
mov byte [rsp + 0x31], sil
jmp 0x140004ccd
cmp r9d, 0x1b
jne 0x1400064d8
or sil, 2
mov byte [rsp + 0x31], sil
jmp 0x140004ccd
cmp r9d, 0x22
jne 0x1400064b6
and sil, 0x3d
or sil, 0x40
mov byte [rsp + 0x31], sil
jmp 0x140004ccd
xor sil, sil
mov byte [rsp + 0x31], sil
jmp 0x140004ccd
cmp r14d, edi
jbe 0x14000652e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov r14, qword [rsp + 0x40]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], ebx
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov rax, rdi
jmp 0x14000654f
mov r14, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov rax, rdi
jmp 0x14000654f
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
xor esi, esi
mov edi, esi
mov ebx, r12d
sub ebx, edi
cmp ebx, eax
cmova ebx, eax
cmp dword [r15], esi
jne 0x140006594
mov rcx, qword [r13 + 0x110]
lea r9, [rsp + 0x7c]
mov eax, edi
mov r8d, ebx
mov qword [rsp + 0x20], rsi
lea rdx, [r14 + rax*2]
call qword [sym.imp.KERNEL32.DLL_WriteConsoleW]
test eax, eax
jne 0x14000658f
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [r15], eax
mov eax, 0x2000
add edi, ebx
cmp edi, r12d
jb 0x140006553
cmp dword [rsp + 0x34], esi
movzx esi, byte [rsp + 0x31]
je 0x1400065bf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r14
mov ebx, dword [rax]
call qword [0x1400b5590]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], ebx
mov eax, dword [rsp + 0x48]
xor r8d, r8d
mov byte [r13 + 0x11c], al
mov eax, dword [rsp + 0x38]
mov dword [r13 + 0x118], eax
movzx eax, byte [rsp + 0x30]
lea edx, [r8 + 1]
mov byte [r13 + 0x11d], al
mov byte [r13 + 0x11e], sil
mov rcx, qword [0x1400b8010]
call qword [sym.imp.KERNEL32.DLL_ReleaseSemaphore]
test eax, eax
je 0x140006631
mov eax, dword [r15]
neg eax
sbb eax, eax
mov rcx, qword [rbp + 0x4020]
xor rcx, rsp
call fcn.140099bf0
mov rbx, qword [rsp + 0x4180]
add rsp, 0x4130
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3