Function at 0x14001ab1c
Capabilities:
Print debug messages

Disassembly:
mov qword [rsp + 0x18], rbx
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov ebp, dword [rsp + 0xb0]
mov r13, r8
mov r14, qword [rsp + 0xd0]
xor r8d, r8d
mov r15, qword [rsp + 0xe0]
mov r12, r9
mov edi, dword [rsp + 0xb8]
mov esi, r8d
mov r10d, ebp
mov word [r14], r8w
mov byte [r15], r8b
test ebp, ebp
je 0x14001ad18
sub r10d, 1
jne 0x14001ad24
mov ecx, edi
call fcn.14001b38c
mov esi, eax
mov rbx, qword [rsp + 0xf0]
mov dword [rbx + 4], edi
mov edi, 1
mov eax, edi
mov dword [rbx], ebp
lock xadd dword [0x1400c9c28], eax
add eax, edi
xor ecx, ecx
mov dword [rbx + 8], eax
mov rax, qword [rsp + 0xc0]
test rax, rax
jne 0x140041654
mov rax, rcx
mov qword [rbx + 0x10], rax
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentThreadId]
mov dword [rbx + 0x3c], esi
lea rcx, [rbx + 0x48]
mov dword [rbx + 0x18], eax
xor esi, esi
mov eax, dword [rsp + 0x88]
xor edx, edx
mov dword [rbx + 0x38], eax
mov rax, qword [rsp + 0xa0]
mov qword [rbx + 0x20], rax
lea r8d, [rsi + 0x30]
mov rax, qword [rsp + 0xa8]
mov qword [rbx + 0x80], rax
mov rax, qword [rsp + 0x80]
mov qword [rbx + 0x88], rax
mov qword [rbx + 0x30], r13
mov qword [rbx + 0x28], r12
mov qword [rbx + 0x40], rsi
call sub.msvcrt.dll_memset
mov rax, qword [0x1400ca018]
test rax, rax
je 0x14004166e
lea rcx, [fcn.14001adc0]
cmp rax, rcx
jne 0x140041662
call fcn.14001adc0
mov qword [rbx + 0x78], rax
mov rax, qword [0x1400c9bf0]
test rax, rax
je 0x14001ac76
lea rcx, [fcn.14001ad50]
mov r8d, 0x400
cmp rax, rcx
mov rdx, r15
mov rcx, rbx
jne 0x140041676
call fcn.14001ad50
mov rax, qword [0x1400cb730]
test rax, rax
jne 0x140041682
mov rax, qword [0x1400cb740]
test rax, rax
jne 0x140041691
cmp dword [rbx + 4], esi
jge 0x1400416a0
cmp byte [0x1400cb708], sil
jne 0x14001accc
mov rax, qword [0x1400cb700]
test rax, rax
jne 0x1400416b7
call qword [sym.imp.api_ms_win_core_debug_l1_1_0.dll_IsDebuggerPresent]
test eax, eax
mov ecx, esi
setne cl
test ecx, ecx
jne 0x14001accc
mov dil, sil
cmp byte [rsp + 0xc8], sil
jne 0x1400416e6
test dil, dil
jne 0x1400416e6
mov rax, qword [0x1400cb710]
test rax, rax
jne 0x1400416c5
cmp byte [0x1400cb718], sil
jne 0x14004173b
mov rbx, qword [rsp + 0x90]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, edi
call fcn.14001b3a4
jmp 0x14001ab86
sub r10d, 1
jne 0x140041604
test edi, edi
jns 0x14004161b
mov ecx, edi
call fcn.14001b3bc
jmp 0x14001ab86
cmp r10d, 1
jne 0x14001ab88
mov ecx, edi
call fcn.14001b630
nop
jmp 0x14001ab86
mov rax, qword [rsp + 0xa8]
mov edi, 0x8007029c
mov dword [rsp + 0x38], edi
mov r8, r13
mov dword [rsp + 0x30], 2
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x20], rax
call fcn.14001a994
nop
jmp 0x14001ad36
cmp word [rax], cx
jne 0x14001abbf
jmp 0x14001abbc
call qword [case.0x140006f84.0]
nop
jmp 0x14001ac45
mov rax, rsi
jmp 0x14001ac45
call qword [case.0x140006f84.0]
nop
jmp 0x14001ac76
mov rcx, rbx
call qword [case.0x140006f84.0]
nop
jmp 0x14001ac86
mov rcx, rbx
call qword [case.0x140006f84.0]
nop
jmp 0x14001ac96
cmp ebp, 3
je 0x1400416ab
call fcn.140048f2c
int3
mov dword [rbx + 4], 0x8000ffff
jmp 0x14001ac9f
call qword [case.0x140006f84.0]
movzx ecx, al
jmp 0x14001acc5
cmp byte [0x1400cb728], sil
jne 0x14001acf3
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [case.0x140006f84.0]
nop
jmp 0x14001acf3
mov rax, qword [0x1400cb710]
mov ebp, 0x800
test rax, rax
je 0x14004170f
cmp byte [0x1400cb728], sil
jne 0x14004170f
mov r8d, ebp
mov rdx, r14
mov rcx, rbx
call qword [case.0x140006f84.0]
cmp word [r14], si
jne 0x140041723
mov r8, rbx
mov rdx, rbp
mov rcx, r14
call fcn.140047b08
test dil, dil
je 0x14001acf3
mov rcx, r14
call qword [sym.imp.api_ms_win_core_debug_l1_1_0.dll_OutputDebugStringW]
nop
jmp 0x14001acf3
mov rax, qword [0x1400ca010]
test rax, rax
je 0x14001ad00
call qword [case.0x140006f84.0]
nop
jmp 0x14001ad00