Function at 0x140005ce0
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 - 0x4000]
mov eax, 0x4100
call fcn.1400f3570
sub rsp, rax
mov rax, qword [0x14012a5e8]
xor rax, rsp
mov qword [rbp + 0x3ff0], rax
mov r13, rcx
mov qword [rbp - 0x40], rdx
xor ecx, ecx
mov dword [rsp + 0x4c], r8d
mov edi, ecx
mov dword [rsp + 0x34], ecx
lea r12, [rbp - 0x10]
mov edx, 0xffffffff
movzx eax, byte [r13 + 0x11c]
mov rsi, r9
mov ebx, dword [r13 + 0x118]
movzx r14d, byte [r13 + 0x11d]
movzx r15d, byte [r13 + 0x11e]
mov dword [r9], ecx
mov rcx, qword [0x1401b5f70]
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x38], ebx
mov byte [rsp + 0x31], r14b
mov byte [rsp + 0x30], r15b
mov qword [rsp + 0x40], r12
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x1400073a0
xor r8d, r8d
mov r11d, 0x2000
mov dword [rsp + 0x58], r8d
cmp dword [rsp + 0x4c], edi
jbe 0x1400072a9
mov edx, dword [rsp + 0x4c]
mov eax, r8d
mov qword [rsp + 0x60], rax
nop dword [rax + rax]
mov rcx, qword [rbp - 0x40]
add rax, rax
cmp dword [0x14012a648], 0
movups xmm0, xmmword [rcx + rax*8]
movups xmmword [rsp + 0x68], xmm0
mov eax, dword [rsp + 0x68]
jne 0x140005f3f
test eax, eax
je 0x140005f3f
mov rbx, qword [rsp + 0x70]
mov r9d, eax
mov dword [rsp + 0x28], r8d
xor edx, edx
mov qword [rsp + 0x20], r8
mov ecx, 0xfde9
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov edi, eax
test eax, eax
je 0x1400072a1
lea r12d, [rax*2 + 2]
xor edx, edx
mov eax, edx
mov dword [rsp + 0x3c], r12d
mov r14d, 0x2000
cmp r12d, r14d
seta al
mov dword [rsp + 0x34], eax
jbe 0x140005e47
mov ecx, r12d
test r12d, r12d
je 0x140005e3d
call qword [sub.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rsp + 0x40], rax
jmp 0x140005e4c
mov rax, rdx
mov qword [rsp + 0x40], rdx
jmp 0x140005e4c
mov rax, qword [rsp + 0x40]
mov r9d, dword [rsp + 0x68]
mov r8, rbx
mov dword [rsp + 0x28], edi
xor edx, edx
mov ecx, 0xfde9
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
je 0x140007277
mov r12, qword [rsp + 0x40]
xor r15d, r15d
mov r14d, r15d
mov r11d, 0x2000
nop dword [rax]
nop word [rax + rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140005ed3
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x4c]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x140005ecd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x140005e90
movzx r15d, byte [rsp + 0x30]
cmp dword [rsp + 0x3c], r11d
jbe 0x140005f2a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r12
mov ebx, dword [rax]
call qword [0x14012a640]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
movzx r14d, byte [rsp + 0x31]
xor r8d, r8d
mov dword [rsp + 0x34], r8d
mov r11d, 0x2000
mov edi, r8d
mov dword [rax], ebx
lea rax, [rbp - 0x10]
mov ebx, dword [rsp + 0x38]
mov qword [rsp + 0x40], rax
jmp 0x14000724e
mov ebx, dword [rsp + 0x38]
xor r8d, r8d
movzx r14d, byte [rsp + 0x31]
mov edi, r8d
jmp 0x14000724e
mov ecx, r8d
mov dword [rsp + 0x3c], ecx
test eax, eax
je 0x140007252
nop
mov rdx, qword [rsp + 0x70]
mov r10d, dword [rsp + 0x48]
mov eax, ecx
movzx edx, byte [rax + rdx]
movzx eax, dl
test r10b, r10b
jne 0x140005faa
not al
movzx eax, al
bsr r8d, eax
je 0x140005fe8
cmp r8d, 7
jne 0x140005f7f
movzx r9d, dl
jmp 0x140005fee
cmp r8d, 5
ja 0x140005fe8
mov ecx, 8
movzx eax, dl
sub ecx, r8d
mov r9d, 0xff
sar r9d, cl
mov r10d, 6
and r9d, eax
sub r10b, r8b
xor r8d, r8d
jmp 0x140005fc4
and al, 0xc0
cmp al, 0x80
jne 0x140005fdd
movzx r9d, dl
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 0x140007234
jmp 0x140005ff3
dec ecx
mov byte [rsp + 0x48], 0
mov dword [rsp + 0x3c], ecx
mov r9d, 0xfffd
mov dword [rsp + 0x38], r9d
test r15b, r15b
jne 0x140006023
cmp r9d, 0x1b
je 0x14000601b
cmp r9d, 0x9b
jne 0x1400063a2
mov r15b, 4
mov byte [r13 + 0x11f], 0
jmp 0x14000722c
mov r15b, 2
jmp 0x14000722c
cmp r15b, 2
jne 0x140006646
lea eax, [r9 - 0x1b]
cmp eax, 0x48
ja case.0x140006053.28
lea rdx, [0x140000000]
movzx eax, byte [rdx + rax + 0x73c4]
mov ecx, dword [rdx + rax*4 + 0x73a8]
add rcx, rdx
jmp rcx
mov r15b, 4
mov byte [r13 + 0x11f], 0
mov byte [rsp + 0x30], r15b
mov ecx, dword [rsp + 0x3c]
jmp 0x140007231
mov ecx, dword [rsp + 0x3c]
mov r15b, 8
jmp 0x14000722c
xor r15d, r15d
mov r14d, r15d
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x1400060c3
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x48]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x1400060bd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x140006080
cmp dword [rsp + 0x34], r15d
je 0x1400060f9
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r12
mov ebx, dword [rax]
call qword [0x14012a640]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
lea r12, [rbp - 0x10]
mov dword [rsp + 0x34], r15d
mov qword [rsp + 0x40], r12
mov dword [rax], ebx
mov edi, r15d
movzx r14d, word [reloc.WS2_32.dll_getsockopt]
mov dword [rsp + 0x50], r15d
cmp dword [rsi], r15d
jne 0x1400061c4
mov rcx, qword [r13 + 0x110]
movzx edx, r14w
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
test eax, eax
je 0x1400061bc
mov rcx, qword [r13 + 0x110]
mov ebx, r15d
mov edx, ebx
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
test eax, eax
je 0x1400061bc
mov rcx, qword [r13 + 0x110]
lea rdx, [rbp - 0x30]
call qword [sym.imp.KERNEL32.dll_GetConsoleScreenBufferInfo]
test eax, eax
je 0x1400061bc
movsx eax, word [rbp - 0x30]
mov edx, 0x20
movsx r8d, word [rbp - 0x2e]
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 0x1400061b1
mov r8d, dword [rsp + 0x54]
lea rax, [rsp + 0x54]
mov rcx, qword [r13 + 0x110]
mov r9d, ebx
movzx edx, r14w
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_FillConsoleOutputAttribute]
test eax, eax
jne 0x1400061d3
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x57
je 0x140006145
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
movzx r14d, byte [rsp + 0x31]
mov ecx, dword [rsp + 0x3c]
jmp 0x14000722c
movsx eax, word [rbp - 0x30]
mov ecx, r15d
movsx edx, word [rbp - 0x20]
mov dword [0x14012a660], eax
movsx eax, word [rbp - 0x24]
sub edx, eax
mov dword [0x14012a64c], r15d
movsx eax, word [rbp - 0x2a]
inc edx
sub eax, edx
mov dword [0x14012a650], edx
inc eax
test eax, eax
jle 0x14000620d
mov dword [0x14012a64c], eax
mov ecx, eax
movsx r8d, word [rbp - 0x2e]
lea eax, [rdx + rcx]
cmp eax, r8d
jle 0x140006225
mov ecx, r8d
sub ecx, edx
mov dword [0x14012a64c], ecx
test ecx, ecx
jns 0x1400061c4
movzx r14d, byte [rsp + 0x31]
mov ecx, dword [rsp + 0x3c]
mov dword [0x14012a64c], r15d
jmp 0x14000722c
xor r15d, r15d
mov r14d, r15d
nop word [rax + rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140006293
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x44]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x14000628d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x140006250
cmp dword [rsp + 0x34], r15d
je 0x1400062c9
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r12
mov ebx, dword [rax]
call qword [0x14012a640]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
lea r12, [rbp - 0x10]
mov dword [rsp + 0x34], r15d
mov qword [rsp + 0x40], r12
mov dword [rax], ebx
mov r8, rsi
mov dl, 1
mov rcx, r13
mov edi, r15d
call fcn.140005a50
mov ecx, dword [rsp + 0x3c]
movzx r14d, byte [rsp + 0x31]
jmp 0x14000722c
xor r15d, r15d
mov r14d, r15d
nop
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140006333
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x38]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x14000632d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x1400062f0
cmp dword [rsp + 0x34], r15d
je 0x140006369
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r12
mov ebx, dword [rax]
call qword [0x14012a640]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
lea r12, [rbp - 0x10]
mov dword [rsp + 0x34], r15d
mov qword [rsp + 0x40], r12
mov dword [rax], ebx
mov r8, rsi
mov dl, 1
mov rcx, r13
mov edi, r15d
call fcn.140005b80
mov ecx, dword [rsp + 0x3c]
movzx r14d, byte [rsp + 0x31]
jmp 0x14000722c
xor r15b, r15b
lea eax, [r9 - 0x40]
mov byte [rsp + 0x30], r15b
cmp eax, 0x1f
ja 0x1400063a2
mov ecx, dword [rsp + 0x3c]
jmp 0x140007231
cmp r9d, 0xffff
jbe 0x1400063b6
mov eax, 0xfffd
mov dword [rsp + 0x38], eax
jmp 0x1400063d7
cmp r9d, 0xa
je 0x140006565
cmp r9d, 0xd
je 0x140006496
cmp r9d, 0xffff
ja case.0x140006053.27
mov eax, edi
mov rcx, r11
sub rcx, rax
cmp rcx, 1
jae 0x140006475
xor r15d, r15d
mov r14d, r15d
nop
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140006434
mov rcx, qword [r13 + 0x110]
lea r9, [rsp + 0x78]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x14000642e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x1400063f0
cmp dword [rsp + 0x34], r15d
movzx r15d, byte [rsp + 0x30]
je 0x140006473
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r12
mov ebx, dword [rax]
call qword [0x14012a640]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
lea r12, [rbp - 0x10]
mov dword [rsp + 0x34], 0
mov qword [rsp + 0x40], r12
mov dword [rax], ebx
xor edi, edi
mov ebx, dword [rsp + 0x38]
xor r14b, r14b
mov ecx, dword [rsp + 0x3c]
mov eax, edi
inc edi
mov byte [rsp + 0x31], r14b
xor r8d, r8d
mov word [rbp + rax*2 - 0x10], bx
jmp 0x140007238
cmp r14b, 0xa
je 0x140006553
mov eax, edi
mov rcx, r11
sub rcx, rax
cmp rcx, 1
jae 0x140006549
xor r15d, r15d
mov r14d, r15d
nop dword [rax + rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140006503
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x80]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x1400064fd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x1400064c0
cmp dword [rsp + 0x34], r15d
movzx r15d, byte [rsp + 0x30]
je 0x140006542
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r12
mov ebx, dword [rax]
call qword [0x14012a640]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
lea r12, [rbp - 0x10]
mov dword [rsp + 0x34], 0
mov qword [rsp + 0x40], r12
mov dword [rax], ebx
mov r9d, dword [rsp + 0x38]
xor edi, edi
mov eax, edi
inc edi
mov word [rbp + rax*2 - 0x10], r9w
mov ecx, dword [rsp + 0x3c]
movzx r14d, r9b
mov byte [rsp + 0x31], r9b
jmp 0x140007231
cmp r14b, 0xd
je 0x1400064a0
mov eax, edi
mov rcx, r11
sub rcx, rax
cmp rcx, 2
jae 0x14000661a
xor r15d, r15d
mov r14d, r15d
nop word [rax + rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x1400065d4
mov rcx, qword [r13 + 0x110]
lea r9, [rsp + 0x7c]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x1400065ce
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x140006590
cmp dword [rsp + 0x34], r15d
movzx r15d, byte [rsp + 0x30]
je 0x140006613
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r12
mov ebx, dword [rax]
call qword [0x14012a640]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
lea r12, [rbp - 0x10]
mov dword [rsp + 0x34], 0
mov qword [rsp + 0x40], r12
mov dword [rax], ebx
mov r9d, dword [rsp + 0x38]
xor edi, edi
mov eax, edi
mov ecx, reloc.WS2_32.dll_listen
inc edi
mov byte [rsp + 0x31], r9b
movzx r14d, r9b
mov word [rbp + rax*2 - 0x10], cx
mov ecx, 0xa
mov word [rbp + rdi*2 - 0x10], cx
inc edi
mov ecx, dword [rsp + 0x3c]
jmp 0x140007231
test r15b, 4
je 0x1400071b2
test r15b, 0x10
jne 0x140007191
lea eax, [r9 - 0x30]
cmp eax, 9
ja 0x14000670f
movzx eax, byte [r13 + 0x11f]
mov ebx, dword [rsp + 0x38]
test r15b, 0x20
jne 0x1400066bc
cmp al, 4
jb 0x14000668e
or r15b, 0x10
mov byte [rsp + 0x30], r15b
xor r8d, r8d
jmp 0x140007238
inc al
or r15b, 0x20
movzx ecx, al
xor r8d, r8d
mov byte [r13 + 0x11f], cl
lea eax, [r9 - 0x30]
mov byte [rsp + 0x30], r15b
mov word [r13 + rcx*2 + 0x11e], ax
mov ecx, dword [rsp + 0x3c]
jmp 0x140007238
movzx eax, al
lea rdx, [rax*2]
movzx eax, word [rdx + r13 + 0x11e]
lea ecx, [rax + rax*4]
add ecx, ecx
cmp ecx, 0xffff
jbe 0x1400066f2
mov ecx, dword [rsp + 0x3c]
or r15b, 0x10
mov byte [rsp + 0x30], r15b
xor r8d, r8d
jmp 0x140007238
sub cx, 0x30
add cx, r9w
mov word [rdx + r13 + 0x11e], cx
xor r8d, r8d
mov ecx, dword [rsp + 0x3c]
jmp 0x140007238
cmp r9d, 0x3b
jne 0x140006762
test r15b, 0x20
je 0x140006724
and r15b, 0xdf
jmp 0x14000722c
movzx eax, byte [r13 + 0x11f]
mov ebx, dword [rsp + 0x38]
cmp al, 4
jb 0x140006745
or r15b, 0x10
mov byte [rsp + 0x30], r15b
xor r8d, r8d
jmp 0x140007238
inc al
movzx eax, al
xor r8d, r8d
mov byte [r13 + 0x11f], al
mov word [r13 + rax*2 + 0x11e], r8w
jmp 0x140007238
cmp r9d, 0x3f
jne 0x140006785
test r15b, 0x20
jne 0x14000677c
cmp byte [r13 + 0x11f], 0
je 0x140007231
or r15b, 0x10
jmp 0x14000722c
lea eax, [r9 - 0x40]
cmp eax, 0x3e
ja 0x14000677c
movzx edx, byte [r13 + 0x11f]
test dl, dl
jne 0x1400067a0
cmp r9d, 0x5b
je 0x14000677c
lea eax, [r9 - 0x41]
cmp eax, 0x34
ja case.0x1400067c8.73
lea r8, [0x140000000]
movzx eax, byte [r8 + rax + 0x7450]
mov ecx, dword [r8 + rax*4 + 0x7410]
add rcx, r8
jmp rcx
xor ecx, ecx
mov r14d, ecx
nop
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], 0
jne 0x140006815
mov eax, r14d
lea r9, [rbp - 0x7c]
mov qword [rsp + 0x20], rcx
mov r8d, ebx
mov rcx, qword [r13 + 0x110]
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x14000680d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
xor ecx, ecx
add r14d, ebx
cmp r14d, edi
jb 0x1400067d0
cmp dword [rsp + 0x34], 0
je 0x140006835
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
xor ebx, ebx
mov edi, ebx
mov dword [rsp + 0x34], ebx
cmp byte [r13 + 0x11f], bl
je 0x140006850
movzx r9d, word [r13 + 0x120]
jmp 0x140006856
mov r9d, 1
neg r9d
mov r8b, 1
xor edx, edx
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x20], 1
mov rcx, r13
call fcn.1400052a0
movzx r14d, byte [rsp + 0x31]
mov ecx, dword [rsp + 0x3c]
xor r8d, r8d
xor r15b, r15b
mov byte [rsp + 0x30], r15b
jmp 0x140007234
xor r15d, r15d
mov r14d, r15d
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x1400068d3
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x78]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x1400068cd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x140006890
cmp dword [rsp + 0x34], r15d
je 0x1400068f3
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
mov edi, r15d
mov dword [rsp + 0x34], r15d
cmp byte [r13 + 0x11f], r15b
je 0x140006911
movzx r9d, word [r13 + 0x120]
jmp 0x140006859
mov r9d, 1
jmp 0x140006859
xor r15d, r15d
mov r14d, r15d
nop dword [rax]
nop word [rax + rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140006973
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x74]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x14000696d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x140006930
cmp dword [rsp + 0x34], r15d
je 0x140006993
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
mov edi, r15d
mov dword [rsp + 0x34], r15d
cmp byte [r13 + 0x11f], r15b
je 0x1400069b7
movzx edx, word [r13 + 0x120]
xor r9d, r9d
mov r8b, 1
jmp 0x14000685e
mov edx, 1
xor r9d, r9d
movzx r8d, dl
jmp 0x14000685e
xor r15d, r15d
mov r14d, r15d
nop
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140006a13
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x70]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x140006a0d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x1400069d0
cmp dword [rsp + 0x34], r15d
je 0x140006a33
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
mov edi, r15d
mov dword [rsp + 0x34], r15d
cmp byte [r13 + 0x11f], r15b
je 0x140006a59
movzx edx, word [r13 + 0x120]
mov r8b, 1
neg edx
xor r9d, r9d
jmp 0x14000685e
mov edx, 1
mov r8b, 1
neg edx
xor r9d, r9d
jmp 0x14000685e
xor r15d, r15d
mov r14d, r15d
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140006ab4
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x6c]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x140006aae
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x140006a71
cmp dword [rsp + 0x34], r15d
je 0x140006ad4
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
mov edi, r15d
mov dword [rsp + 0x34], r15d
cmp byte [r13 + 0x11f], r15b
je 0x140006af5
movzx r9d, word [r13 + 0x120]
xor r8d, r8d
jmp 0x14000685c
mov r9d, 1
xor r8d, r8d
jmp 0x14000685c
xor r15d, r15d
mov r14d, r15d
nop dword [rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140006b53
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x68]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x140006b4d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x140006b10
cmp dword [rsp + 0x34], r15d
je 0x140006b73
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
mov edi, r15d
mov dword [rsp + 0x34], r15d
cmp byte [r13 + 0x11f], r15b
je 0x140006b97
movzx r9d, word [r13 + 0x120]
neg r9d
xor r8d, r8d
jmp 0x14000685c
mov r9d, 1
neg r9d
xor r8d, r8d
jmp 0x14000685c
xor ecx, ecx
mov r14d, ecx
nop dword [rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], 0
jne 0x140006bf5
mov eax, r14d
lea r9, [rbp - 0x64]
mov qword [rsp + 0x20], rcx
mov r8d, ebx
mov rcx, qword [r13 + 0x110]
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x140006bed
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
xor ecx, ecx
add r14d, ebx
cmp r14d, edi
jb 0x140006bb0
cmp dword [rsp + 0x34], 0
je 0x140006c15
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
xor ebx, ebx
cmp byte [r13 + 0x11f], 1
mov edi, ebx
mov dword [rsp + 0x34], ebx
jb 0x140006c44
movzx eax, word [r13 + 0x120]
test ax, ax
je 0x140006c44
movzx edx, ax
xor r9d, r9d
dec edx
xor r8d, r8d
jmp 0x14000685e
xor r9d, r9d
mov edx, ebx
xor r8d, r8d
jmp 0x14000685e
xor ecx, ecx
mov r14d, ecx
nop word [rax + rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], 0
jne 0x140006ca5
mov eax, r14d
lea r9, [rbp - 0x60]
mov qword [rsp + 0x20], rcx
mov r8d, ebx
mov rcx, qword [r13 + 0x110]
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x140006c9d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
xor ecx, ecx
add r14d, ebx
cmp r14d, edi
jb 0x140006c60
cmp dword [rsp + 0x34], 0
je 0x140006cc5
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
movzx ecx, byte [r13 + 0x11f]
xor ebx, ebx
mov dword [rsp + 0x34], ebx
mov edi, ebx
cmp cl, 1
jb 0x140006cf0
movzx eax, word [r13 + 0x120]
test ax, ax
je 0x140006cf0
movzx r9d, ax
dec r9d
jmp 0x140006cf3
mov r9d, ebx
cmp cl, 2
jb 0x140006d1b
movzx eax, word [r13 + 0x122]
test ax, ax
je 0x140006d1b
movzx edx, ax
dec edx
mov qword [rsp + 0x28], rsi
xor r8d, r8d
mov byte [rsp + 0x20], bl
jmp 0x140006868
mov qword [rsp + 0x28], rsi
mov edx, ebx
mov byte [rsp + 0x20], bl
xor r8d, r8d
jmp 0x140006868
xor ecx, ecx
mov r14d, ecx
nop dword [rax]
nop word [rax + rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], 0
jne 0x140006d85
mov eax, r14d
lea r9, [rbp - 0x5c]
mov qword [rsp + 0x20], rcx
mov r8d, ebx
mov rcx, qword [r13 + 0x110]
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x140006d7d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
xor ecx, ecx
add r14d, ebx
cmp r14d, edi
jb 0x140006d40
cmp dword [rsp + 0x34], 0
je 0x140006da5
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
xor ebx, ebx
mov edi, ebx
mov dword [rsp + 0x34], ebx
cmp byte [r13 + 0x11f], bl
je 0x140006dda
movzx edx, word [r13 + 0x120]
cmp edx, 2
ja 0x140006870
mov r9, rsi
mov r8b, 1
mov rcx, r13
call fcn.140005420
jmp 0x140006870
mov edx, ebx
mov r9, rsi
mov r8b, 1
mov rcx, r13
call fcn.140005420
jmp 0x140006870
xor ecx, ecx
mov r14d, ecx
nop dword [rax]
nop dword [rax + rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], 0
jne 0x140006e45
mov eax, r14d
lea r9, [rbp - 0x58]
mov qword [rsp + 0x20], rcx
mov r8d, ebx
mov rcx, qword [r13 + 0x110]
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x140006e3d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
xor ecx, ecx
add r14d, ebx
cmp r14d, edi
jb 0x140006e00
cmp dword [rsp + 0x34], 0
je 0x140006e65
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
xor ebx, ebx
mov edi, ebx
mov dword [rsp + 0x34], ebx
cmp byte [r13 + 0x11f], bl
je 0x140006e9a
movzx edx, word [r13 + 0x120]
cmp edx, 2
ja 0x140006870
mov r9, rsi
xor r8d, r8d
mov rcx, r13
call fcn.140005420
jmp 0x140006870
mov edx, ebx
mov r9, rsi
xor r8d, r8d
mov rcx, r13
call fcn.140005420
jmp 0x140006870
xor r15d, r15d
mov r14d, r15d
nop word [rax + rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140006f03
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x54]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x140006efd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x140006ec0
cmp dword [rsp + 0x34], r15d
je 0x140006f23
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
mov rdx, rsi
mov rcx, r13
mov edi, r15d
call fcn.1400056e0
mov dword [rsp + 0x34], r15d
jmp 0x140006870
xor r15d, r15d
mov r14d, r15d
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140006f84
mov rcx, qword [r13 + 0x110]
lea r9, [rbp - 0x50]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x140006f7e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x140006f41
cmp dword [rsp + 0x34], r15d
je 0x140006fa4
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
mov r8, rsi
xor edx, edx
mov rcx, r13
mov edi, r15d
call fcn.140005a50
mov dword [rsp + 0x34], r15d
jmp 0x140006870
xor r15d, r15d
mov r14d, r15d
nop dword [rax]
nop dword [rax + rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, r11d
cmova ebx, r11d
cmp dword [rsi], r15d
jne 0x140007014
mov rcx, qword [r13 + 0x110]
lea r9, [rsp + 0x5c]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x14000700e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov r11d, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x140006fd0
cmp dword [rsp + 0x34], r15d
je 0x140007034
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
mov edi, r15d
mov dword [rsp + 0x34], r15d
cmp dword [rsi], r15d
jne 0x140006870
test dword [r13 + 0x58], 0x4000000
je 0x140006870
movsx r9d, word [r13 + 0x12a]
xor r8d, r8d
movsx edx, word [r13 + 0x128]
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x20], dil
jmp 0x140006868
cmp dl, 1
jne case.0x1400067c8.73
cmp word [r13 + 0x120], 0x19
jne case.0x1400067c8.73
xor r15d, r15d
mov r14d, r15d
nop dword [rax]
nop word [rax + rax]
mov eax, r14d
mov ebx, edi
sub ebx, r14d
mov r9, rsi
cmp ebx, r11d
mov rcx, r13
cmova ebx, r11d
lea rdx, [r12 + rax*2]
mov r8d, ebx
call fcn.140005250
add r14d, ebx
mov r11d, 0x2000
cmp r14d, edi
jb 0x1400070a0
cmp dword [rsp + 0x34], r15d
je 0x1400070e7
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
xor edx, edx
mov r8, rsi
mov rcx, r13
mov edi, r15d
call fcn.140005c60
movzx r14d, byte [rsp + 0x31]
xor r8d, r8d
mov ecx, dword [rsp + 0x3c]
xor r15b, r15b
mov byte [rsp + 0x30], r15b
mov dword [rsp + 0x34], r8d
jmp 0x140007234
cmp dl, 1
jne case.0x1400067c8.73
cmp word [r13 + 0x120], 0x19
jne case.0x1400067c8.73
xor r15d, r15d
mov r14d, r15d
nop dword [rax]
nop dword [rax + rax]
mov eax, r14d
mov ebx, edi
sub ebx, r14d
mov r9, rsi
cmp ebx, r11d
mov rcx, r13
cmova ebx, r11d
lea rdx, [r12 + rax*2]
mov r8d, ebx
call fcn.140005250
add r14d, ebx
mov r11d, 0x2000
cmp r14d, edi
jb 0x140007140
cmp dword [rsp + 0x34], r15d
je 0x140007187
mov rcx, r12
call fcn.140001da0
lea r12, [rbp - 0x10]
mov qword [rsp + 0x40], r12
mov edx, 1
jmp 0x1400070e9
mov ebx, dword [rsp + 0x38]
lea eax, [r9 - 0x40]
cmp eax, 0x3e
ja 0x140006686
xor r15b, r15b
mov byte [rsp + 0x30], r15b
xor r8d, r8d
jmp 0x140007238
test r15b, 8
je 0x1400073a0
test r15b, 0x40
je 0x1400071f5
test r15b, r15b
js 0x1400071ef
cmp r9d, 0x22
jne 0x1400071d3
and r15b, 0xbf
jmp 0x14000722c
mov ebx, dword [rsp + 0x38]
cmp r9d, 0x5c
jne 0x140006686
or r15b, 0x80
mov byte [rsp + 0x30], r15b
xor r8d, r8d
jmp 0x140007238
and r15b, 0x7f
jmp 0x14000722c
cmp r9d, 7
je 0x140007229
cmp r9d, 0x5c
jne 0x14000720d
test r15b, 2
jne 0x140007229
and r15b, 0xfd
jmp 0x14000722c
cmp r9d, 0x1b
jne 0x140007219
or r15b, 2
jmp 0x14000722c
cmp r9d, 0x22
jne 0x140007207
and r15b, 0x3d
or r15b, 0x40
jmp 0x14000722c
xor r15b, r15b
mov byte [rsp + 0x30], r15b
xor r8d, r8d
mov ebx, dword [rsp + 0x38]
inc ecx
mov r11d, 0x2000
mov dword [rsp + 0x3c], ecx
cmp ecx, dword [rsp + 0x68]
jb 0x140005f50
mov edx, dword [rsp + 0x4c]
mov ecx, dword [rsp + 0x58]
mov rax, qword [rsp + 0x60]
inc ecx
mov r12, qword [rsp + 0x40]
inc rax
mov dword [rsp + 0x58], ecx
mov qword [rsp + 0x60], rax
cmp ecx, edx
jae 0x1400072a9
jmp 0x140005db0
cmp r12d, r14d
jbe 0x14000729c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov r12, qword [rsp + 0x40]
mov rcx, r12
mov ebx, dword [rax]
call qword [0x14012a640]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], ebx
jmp 0x1400072a1
mov r12, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
xor r15d, r15d
mov eax, 0x2000
mov r14d, r15d
nop dword [rax]
nop dword [rax + rax]
mov ebx, edi
sub ebx, r14d
cmp ebx, eax
cmova ebx, eax
cmp dword [rsi], r15d
jne 0x140007301
mov rcx, qword [r13 + 0x110]
lea r9, [rsp + 0x5c]
mov eax, r14d
mov r8d, ebx
mov qword [rsp + 0x20], r15
lea rdx, [r12 + rax*2]
call qword [sym.imp.KERNEL32.dll_WriteConsoleW]
test eax, eax
jne 0x1400072fc
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsi], eax
mov eax, 0x2000
add r14d, ebx
cmp r14d, edi
jb 0x1400072c0
cmp dword [rsp + 0x34], r15d
movzx r15d, byte [rsp + 0x30]
je 0x14000732f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, r12
mov ebx, dword [rax]
call qword [0x14012a640]
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 + 0x31]
lea edx, [r8 + 1]
mov byte [r13 + 0x11d], al
mov byte [r13 + 0x11e], r15b
mov rcx, qword [0x1401b5f70]
call qword [sym.imp.KERNEL32.dll_ReleaseSemaphore]
test eax, eax
je 0x1400073a0
mov eax, dword [rsi]
neg eax
sbb eax, eax
mov rcx, qword [rbp + 0x3ff0]
xor rcx, rsp
call fcn.1400f3170
mov rbx, qword [rsp + 0x4150]
add rsp, 0x4100
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