Function at 0x10014ac08
Capabilities:
Print debug messages

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1140
call fcn.10014f1d0
sub rsp, rax
mov rax, qword [0x100165138]
xor rax, rsp
mov qword [rsp + 0x1130], rax
mov qword [rsp + 0x98], rcx
lea rax, [rsp + 0x130]
lea rcx, [rsp + 0x80]
xor edi, edi
mov r15, rdx
mov qword [rsp + 0x90], rax
mov rbx, rdi
call qword [sym.imp.KERNEL32.dll_GetSystemTime]
mov r9, qword [r15 + 0x20]
cmp r9, rdi
je 0x10014ac87
lea r8, [0x1000165b8]
lea edx, [rdi + 0x10]
lea rcx, [rsp + 0xa0]
call fcn.100043ec0
jmp 0x10014ac8f
mov word [rsp + 0xa0], di
movzx edi, word [rsp + 0x8e]
movzx esi, word [rsp + 0x8c]
movzx ebp, word [rsp + 0x8a]
movzx r12d, word [rsp + 0x88]
movzx r13d, word [rsp + 0x86]
movzx r14d, word [rsp + 0x82]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov rcx, qword [r15 + 0x28]
mov rdx, qword [rsp + 0x98]
mov r9d, dword [rdx + 0x24]
mov qword [rsp + 0x78], rcx
lea rcx, [rsp + 0xa0]
mov qword [rsp + 0x70], rcx
mov ecx, dword [r15 + 0x18]
lea r8, [0x1000165d0]
mov dword [rsp + 0x68], ecx
mov rcx, qword [r15 + 8]
mov qword [rsp + 0x60], rcx
mov ecx, dword [rdx]
mov edx, 0x788
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x50], edi
mov dword [rsp + 0x48], esi
mov dword [rsp + 0x40], ebp
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x30], r13d
lea rcx, [rsp + 0x130]
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], eax
call fcn.100043ec0
cmp eax, 0x8007007a
jne 0x10014ae20
mov ecx, 0x10182
call qword [sym.imp.msvcrt.dll_malloc]
test rax, rax
jne 0x10014ad6a
lea edx, [rax + 1]
xor r9d, r9d
xor r8d, r8d
mov ecx, 0x8007000e
call qword [sym.imp.KERNEL32.dll_RaiseException]
mov rbx, rax
movzx edi, word [rsp + 0x8e]
movzx esi, word [rsp + 0x8c]
movzx ebp, word [rsp + 0x8a]
movzx r12d, word [rsp + 0x88]
movzx r13d, word [rsp + 0x86]
movzx r14d, word [rsp + 0x82]
mov qword [rsp + 0x90], rbx
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov rcx, qword [r15 + 0x28]
mov rdx, qword [rsp + 0x98]
mov qword [rsp + 0x78], rcx
lea rcx, [rsp + 0xa0]
mov r9d, dword [rdx + 0x24]
mov qword [rsp + 0x70], rcx
mov ecx, dword [r15 + 0x18]
mov dword [rsp + 0x68], ecx
mov rcx, qword [r15 + 8]
lea r8, [0x1000165d0]
mov qword [rsp + 0x60], rcx
mov ecx, dword [rdx]
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x50], edi
mov dword [rsp + 0x48], esi
mov dword [rsp + 0x40], ebp
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x30], r13d
mov r13d, 0x80c1
mov rcx, rbx
mov dword [rsp + 0x28], r14d
mov rdx, r13
mov dword [rsp + 0x20], eax
call fcn.100043ec0
jmp 0x10014ae26
mov r13d, 0x800
mov rax, qword [r15 + 0x38]
lea rcx, [0x100001fe0]
mov rdx, qword [rax]
cmp rdx, qword [rcx]
jne 0x10014ae47
mov rdx, qword [rax + 8]
cmp rdx, qword [rcx + 8]
jne 0x10014ae47
xor eax, eax
jmp 0x10014ae4c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x10014aefa
mov r12, qword [r15 + 0x38]
movzx ecx, byte [r12 + 0xe]
movzx edx, byte [r12 + 0xd]
movzx r8d, byte [r12 + 0xc]
movzx r9d, byte [r12 + 9]
movzx eax, byte [r12 + 0xf]
movzx r10d, byte [r12 + 0xb]
movzx r11d, byte [r12 + 0xa]
movzx edi, byte [r12 + 8]
movzx esi, word [r12 + 6]
movzx ebp, word [r12 + 4]
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x60], ecx
mov dword [rsp + 0x58], edx
mov dword [rsp + 0x50], r8d
mov dword [rsp + 0x48], r10d
mov dword [rsp + 0x40], r11d
mov dword [rsp + 0x38], r9d
mov r9d, dword [r12]
mov dword [rsp + 0x30], edi
lea r8, [0x100016650]
lea rcx, [rsp + 0xc0]
mov edx, 0x32
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], ebp
call fcn.100043ec0
mov rdi, qword [rsp + 0x90]
lea r8, [rsp + 0xc0]
mov rcx, rdi
mov rdx, r13
call fcn.1000590dc
jmp 0x10014af02
mov rdi, qword [rsp + 0x90]
lea r8, [0x1000166c4]
mov rdx, r13
mov rcx, rdi
call fcn.1000590dc
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
test rbx, rbx
je 0x10014af4b
mov eax, dword [0x100167d28]
test al, 1
jne 0x10014af35
or eax, 1
mov dword [0x100167d28], eax
test al, 2
jne 0x10014af42
or eax, 2
mov dword [0x100167d28], eax
mov rcx, rbx
call qword [sym.imp.msvcrt.dll_free]
mov rcx, qword [rsp + 0x1130]
xor rcx, rsp
call fcn.10014e480
mov rbx, qword [rsp + 0x1190]
add rsp, 0x1140
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret