Function at 0x180043dd0
Capabilities:
Manipulate console buffer

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rbx, qword [rbp + 0x50]
lea r12d, [rcx + 0x5c0]
movaps xmmword [rsp + 0x60], xmm6
mov r14, rdx
mov r15d, ecx
cmp ecx, r12d
jae 0x18004409a
movss xmm6, dword [rbp + 0x50]
xor r13d, r13d
mov rsi, qword [rbp + 0x50]
cmp r15d, 0x172
ja 0x180044086
je 0x180044062
mov eax, r15d
sub eax, 0x5c
je 0x180043fab
sub eax, 0x5e
je 0x180043fa2
sub eax, 0x33
je 0x180043e7b
cmp eax, 0x27
jne 0x1800440d3
movss xmm0, dword [r14]
movss xmm1, dword [r14 + 4]
divss xmm0, xmm6
divss xmm1, xmm6
movss dword [r14], xmm0
movss xmm0, dword [r14 + 8]
divss xmm0, xmm6
movss dword [r14 + 4], xmm1
movss dword [r14 + 8], xmm0
jmp 0x1800440d3
xor edx, edx
xor ecx, ecx
mov r8d, reloc.SHELL32.dll_ILFree
call fcn.180050f80
mov rax, qword [0x18008a548]
mov ecx, dword [rax + 0x50]
test ecx, ecx
je 0x180043f56
mov r8d, dword [0x18008af10]
cmp ecx, 2
jne 0x180043f09
movzx ecx, word [0x18008af20]
mov eax, 0xd6
movzx edx, word [0x18008af1e]
movzx r9d, word [0x18008af1c]
movzx r10d, word [0x18008af1a]
nop dword [rax + rax]
cmp eax, 0xd6
je 0x180043ef1
cmp eax, 0x32fe
je 0x180043eeb
cmp eax, 0x6526
jne 0x180043efb
mov word [rbp - 0x1c], dx
jmp 0x180043efb
mov word [rbp - 0x1a], cx
jmp 0x180043efb
mov word [rbp - 0x1e], r9w
mov word [rbp - 0x20], r10w
add eax, 0x3228
cmp eax, 0x9678
jbe 0x180043ed0
jmp 0x180043f23
movzx eax, word [0x18008af12]
dec ax
mov dword [rbp - 0x20], r13d
mov word [rbp - 0x1a], ax
lea eax, [r8 - 1]
mov word [rbp - 0x1c], ax
mov rdx, qword [0x18008af28]
lea rax, [rbp - 0x20]
mov rcx, qword [0x180089200]
mov r9d, r13d
mov qword [rsp + 0x20], rax
mov dword [rbp + 0x40], r13d
call qword [sym.imp.KERNEL32.dll_WriteConsoleOutputW]
test eax, eax
je 0x18004409a
mov rax, qword [0x18008a548]
cmp dword [rax + 0x18], 1
je 0x180043f74
xor edx, edx
mov dword [rbp + 0x50], 1
lea r9, [rbp + 0x50]
xor ecx, ecx
lea r8d, [rdx + 0x5d]
call fcn.180065320
xor edx, edx
mov dword [rbp + 0x50], r13d
xor r8d, r8d
lea ecx, [rdx + 0x6e]
call fcn.18000f510
sub eax, 2
lea r8, [rbp + 0x50]
lea rdx, [rbp + 0x58]
mov dword [rbp + 0x58], eax
mov ecx, 0x88
call fcn.18004cd10
jmp 0x1800440d3
mov rsi, qword [r14 + 0x30]
jmp 0x1800440d3
mov rdx, r14
mov ecx, 0x62
call fcn.180045430
mov dword [rbp + 0x50], eax
lea rcx, [rbp + 0x58]
movss xmm6, dword [rbp + 0x50]
lea rax, [rbp + 0x50]
mov qword [rsp + 0x48], rax
xor r9d, r9d
mov dword [rsp + 0x40], 0x91
xor r8d, r8d
mov qword [rsp + 0x38], r13
xor edx, edx
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
movss dword [rbp + 0x50], xmm6
mov dword [rbp + 0x58], r13d
call fcn.180019f50
test ax, ax
jne 0x18004405d
mov r9, r14
xor r8d, r8d
mov edx, 0x106
xor ecx, ecx
call fcn.180062950
lea rax, [rbp + 0x50]
movss dword [rbp + 0x50], xmm6
mov qword [rsp + 0x48], rax
lea rcx, [rbp + 0x58]
mov dword [rsp + 0x40], 0x91
xor r9d, r9d
mov qword [rsp + 0x38], r13
xor r8d, r8d
mov qword [rsp + 0x30], r13
xor edx, edx
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
mov dword [rbp + 0x58], 0x3f800000
call fcn.180019f50
test ax, ax
je 0x1800440d3
mov rax, r14
jmp 0x18004409d
test rsi, rsi
je 0x1800440d3
nop word [rax + rax]
mov rdi, qword [rsi]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rsi, rdi
test rdi, rdi
jne 0x180044070
jmp 0x1800440d3
mov eax, r15d
sub eax, 0x1cc
je 0x1800440c0
sub eax, 0x5e
je 0x1800440ba
cmp eax, 0x5a
jne 0x1800440d3
mov rax, rbx
mov rbx, qword [rsp + 0xb8]
movaps xmm6, xmmword [rsp + 0x60]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov qword [r14 + 0x30], r13
jmp 0x1800440d3
movss xmm0, dword [r14 + 0xc]
mov rbx, r14
divss xmm0, xmm6
movss dword [r14 + 0xc], xmm0
add r15d, 0xb8
cmp r15d, r12d
jb 0x180043e12
jmp 0x18004409a