Function at 0x140016be0
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], r8
mov qword [rax + 0x20], r9
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x78
mov rbx, rcx
lea r12, [rax + 0x10]
mov qword [rax - 0x78], r12
call fcn.140016360
mov r15, rax
mov rcx, qword [rax]
or rcx, 2
mov qword [rsp + 0x28], r12
xor ebp, ebp
mov qword [rsp + 0x20], rbp
mov r9, rbx
xor r8d, r8d
xor edx, edx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___stdio_common_vswprintf]
mov r13, 0xffffffffffffffff
test eax, eax
cmovs eax, r13d
add eax, 1
movsxd r14, eax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], rbp
je 0x140016cde
movabs rax, 0x7fffffffffffffff
cmp r14, rax
ja 0x140016e64
lea rsi, [r14 + r14]
cmp rsi, 0x1000
jb 0x140016ca7
lea rcx, [rsi + 0x27]
cmp rcx, rsi
jbe 0x140016e5e
call fcn.140020608
test rax, rax
je 0x140016e3e
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140016cbc
test rsi, rsi
je 0x140016cb9
mov rcx, rsi
call fcn.140020608
mov rdi, rax
jmp 0x140016cbc
mov rdi, rbp
mov qword [rsp + 0x50], rdi
lea rbx, [rsi + rdi]
mov qword [rsp + 0x60], rbx
mov r8, rsi
xor edx, edx
mov rcx, rdi
call fcn.140022580
mov qword [rsp + 0x58], rbx
jmp 0x140016ce3
mov rdi, qword [rsp + 0x50]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rbp
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x20], rax
mov r9, r13
mov r8, r14
mov rdx, rdi
mov rcx, qword [r15]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___stdio_common_vsnwprintf_s]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea rax, [0x1400327c8]
mov qword [rsp + 0x48], rax
mov ebx, ebp
mov eax, 1
xchg dword [0x1400327c8], eax
test eax, eax
je 0x140016d51
mov eax, ebx
inc ebx
test eax, 0x3ff
jne 0x140016d42
call sub.KERNEL32.dll_SwitchToThread
mov eax, 1
xchg dword [0x1400327c8], eax
test eax, eax
jne 0x140016d32
mov esi, 8
mov rax, qword gs:[0x58]
add rsi, qword [rax]
mov rax, qword [rsi]
test rax, rax
jne 0x140016d9f
lea ecx, [rax + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdx, rax
mov rbx, qword [rsp + 0x50]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputws]
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdx, rax
mov ecx, 0xa
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputwc]
jmp 0x140016dad
mov rbx, qword [rsp + 0x50]
mov rcx, rbx
call qword [0x140027420]
cmp dword [0x1400327cc], 0
je 0x140016e03
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdi, qword [0x1400327d0]
cmp rdi, rax
jne 0x140016dd3
cmp qword [rsi], 0
je 0x140016e03
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, qword [rsp + 0xc0]
mov rdx, rdi
mov rcx, qword [r15]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___stdio_common_vfwprintf]
mov ecx, 0xa
mov rdx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputwc]
nop
nop
mov dword [0x1400327c8], ebp
test rbx, rbx
je 0x140016e4d
mov rdx, qword [rsp + 0x60]
sub rdx, rbx
sar rdx, 1
add rdx, rdx
mov rax, rbx
cmp rdx, 0x1000
jb 0x140016e45
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140016e45
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.140020600
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
call fcn.1400103c0
int3
call fcn.140017020
int3