Function at 0x15d54
Capabilities:
Print debug messages

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
sub rsp, 0x20
mov sil, r8b
mov rdi, rdx
mov rbp, rcx
call fcn.00015804
mov ecx, 0x400
mov rbx, rax
movzx eax, word [rdi + 0xc]
test cx, ax
jne 0x161f3
mov ecx, 0x100
test cx, ax
jne 0x161f3
mov ecx, 0x200
test cx, ax
je 0x160e9
mov dl, byte [0x000266c2]
test dl, dl
je 0x15dbe
lea rcx, [0x0001ef50]
mov rdx, rbx
call sub.ntoskrnl.exe_DbgPrint
mov dl, byte [0x000266c2]
mov ecx, 0x1000
test word [rdi + 0xc], cx
jne 0x15e3f
test dl, dl
je 0x15de2
lea rcx, [0x0001ef90]
mov rdx, rbx
call sub.ntoskrnl.exe_DbgPrint
mov dl, byte [0x000266c2]
test rbx, rbx
je 0x15e12
test dl, dl
je 0x15dfa
lea rcx, [0x0001efd0]
mov rdx, rbx
call sub.ntoskrnl.exe_DbgPrint
mov eax, 3
mov rcx, rbx
mov dword [rbx + 0x18], eax
call fcn.00015618
mov rcx, rbx
call fcn.0001577c
mov r8b, sil
mov rdx, rdi
mov rcx, rbp
call fcn.00015aac
cmp byte [0x000266c2], 0
mov rbx, rax
je 0x16218
mov rdx, rax
lea rcx, [0x0001f010]
jmp 0x160df
test rbx, rbx
je 0x15f7f
test dl, dl
je 0x15e6b
movzx r9d, word [rbx + 0x6e]
movzx r8d, word [rbx + 0x4e]
lea rcx, [0x0001f040]
mov rdx, rbx
call sub.ntoskrnl.exe_DbgPrint
mov dl, byte [0x000266c2]
mov eax, 2
cmp word [rbx + 0x4e], ax
jne 0x16218
cmp word [rbx + 0x6e], 7
jne 0x16218
mov ecx, dword [rdi + 8]
xor eax, eax
mov word [rsp + 0x49], ax
mov byte [rsp + 0x4b], al
mov dword [rsp + 0x58], ecx
mov al, byte [rsp + 0x5b]
mov byte [rsp + 0x4b], cl
mov byte [rsp + 0x48], al
mov al, byte [rsp + 0x5a]
mov byte [rsp + 0x49], al
mov al, byte [rsp + 0x59]
mov byte [rsp + 0x4a], al
mov eax, dword [rbx + 0x58]
cmp dword [rsp + 0x48], eax
jne 0x16218
test dl, dl
je 0x15ed3
lea rcx, [0x0001f080]
mov rdx, rbx
call sub.ntoskrnl.exe_DbgPrint
call fcn.00015554
mov dword [rbx + 0x14], eax
mov eax, 3
mov word [rbx + 0x6e], ax
mov ecx, dword [rdi + 8]
xor eax, eax
mov word [rsp + 0x49], ax
mov byte [rsp + 0x4b], al
mov dword [rsp + 0x58], ecx
mov al, byte [rsp + 0x5b]
mov byte [rsp + 0x4b], cl
mov byte [rsp + 0x48], al
mov al, byte [rsp + 0x5a]
mov byte [rsp + 0x49], al
mov al, byte [rsp + 0x59]
mov byte [rsp + 0x4a], al
mov eax, dword [rsp + 0x48]
mov dword [rbx + 0x7c], eax
mov ecx, dword [rdi + 4]
xor eax, eax
mov word [rsp + 0x49], ax
mov byte [rsp + 0x4b], al
mov dword [rsp + 0x58], ecx
mov al, byte [rsp + 0x5b]
mov byte [rsp + 0x4b], cl
mov byte [rsp + 0x48], al
mov al, byte [rsp + 0x5a]
mov byte [rsp + 0x49], al
mov al, byte [rsp + 0x59]
mov byte [rsp + 0x4a], al
mov edx, dword [rsp + 0x48]
inc edx
xor eax, eax
mov byte [rsp + 0x49], al
mov dword [rbx + 0x74], edx
mov dword [rbx + 0x78], edx
movzx ecx, word [rdi + 0xe]
mov dword [rbx + 0x5c], edx
mov word [rsp + 0x58], cx
mov al, byte [rsp + 0x59]
mov byte [rsp + 0x49], cl
mov byte [rsp + 0x48], al
movzx eax, word [rsp + 0x48]
mov word [rbx + 0x70], ax
jmp 0x16218
test dl, dl
je 0x15f91
lea rcx, [0x0001f0b0]
xor edx, edx
call sub.ntoskrnl.exe_DbgPrint
call fcn.00015554
mov ecx, dword [0x00026968]
test ecx, ecx
je 0x15faa
add ecx, 0x2710
cmp eax, ecx
jbe 0x15fb0
mov dword [0x00026968], eax
mov r8b, sil
mov rdx, rdi
mov rcx, rbp
call fcn.00015aac
mov rbx, rax
test rax, rax
je 0x16218
mov cl, byte [0x000266c2]
test cl, cl
je 0x15ff3
movzx r9d, word [rax + 0x6e]
movzx r8d, word [rax + 0x4e]
lea rcx, [0x0001f0e0]
mov rdx, rax
call sub.ntoskrnl.exe_DbgPrint
mov cl, byte [0x000266c2]
mov eax, 2
cmp word [rbx + 0x4e], ax
jne 0x160cd
cmp word [rbx + 0x6e], 7
jne 0x160cd
test cl, cl
je 0x16020
lea rcx, [0x0001f120]
mov rdx, rbx
call sub.ntoskrnl.exe_DbgPrint
call fcn.00015554
mov dword [rbx + 0x14], eax
mov eax, 3
mov word [rbx + 0x6e], ax
mov ecx, dword [rdi + 8]
xor eax, eax
mov word [rsp + 0x49], ax
mov byte [rsp + 0x4b], al
mov dword [rsp + 0x58], ecx
mov al, byte [rsp + 0x5b]
mov byte [rsp + 0x4b], cl
mov byte [rsp + 0x48], al
mov al, byte [rsp + 0x5a]
mov byte [rsp + 0x49], al
mov al, byte [rsp + 0x59]
mov byte [rsp + 0x4a], al
mov eax, dword [rsp + 0x48]
mov dword [rbx + 0x7c], eax
mov ecx, dword [rdi + 4]
xor eax, eax
mov word [rsp + 0x49], ax
mov byte [rsp + 0x4b], al
mov dword [rsp + 0x58], ecx
mov al, byte [rsp + 0x5b]
mov byte [rsp + 0x4b], cl
mov byte [rsp + 0x48], al
mov al, byte [rsp + 0x5a]
mov byte [rsp + 0x49], al
mov al, byte [rsp + 0x59]
mov byte [rsp + 0x4a], al
mov edx, dword [rsp + 0x48]
inc edx
xor eax, eax
mov byte [rsp + 0x49], al
mov dword [rbx + 0x74], edx
mov dword [rbx + 0x78], edx
movzx ecx, word [rdi + 0xe]
mov dword [rbx + 0x5c], edx
mov word [rsp + 0x58], cx
mov al, byte [rsp + 0x59]
mov byte [rsp + 0x49], cl
mov cl, byte [0x000266c2]
mov byte [rsp + 0x48], al
movzx eax, word [rsp + 0x48]
mov word [rbx + 0x70], ax
test cl, cl
je 0x16218
mov rdx, rbx
lea rcx, [0x0001f150]
call sub.ntoskrnl.exe_DbgPrint
jmp 0x16218
mov ecx, 0x1000
test cx, ax
je 0x16218
test rbx, rbx
je 0x16218
mov dl, byte [0x000266c2]
test dl, dl
je 0x16123
mov r8d, dword [rbx + 0x18]
lea rcx, [0x0001f180]
mov rdx, rbx
call sub.ntoskrnl.exe_DbgPrint
mov dl, byte [0x000266c2]
cmp dword [rbx + 0x18], 0
jne 0x161cf
test dl, dl
je 0x16150
movzx r9d, word [rbx + 0x6e]
movzx r8d, word [rbx + 0x4e]
lea rcx, [0x0001f1d0]
mov rdx, rbx
call sub.ntoskrnl.exe_DbgPrint
mov dl, byte [0x000266c2]
mov eax, 2
cmp word [rbx + 0x4e], ax
jne 0x16218
mov eax, 3
cmp word [rbx + 0x6e], ax
jne 0x16218
mov ecx, dword [rdi + 8]
xor eax, eax
mov word [rsp + 0x49], ax
mov byte [rsp + 0x4b], al
mov dword [rsp + 0x58], ecx
mov al, byte [rsp + 0x5b]
mov byte [rsp + 0x4b], cl
mov byte [rsp + 0x48], al
mov al, byte [rsp + 0x5a]
mov byte [rsp + 0x49], al
mov al, byte [rsp + 0x59]
mov byte [rsp + 0x4a], al
mov eax, dword [rbx + 0x78]
cmp dword [rsp + 0x48], eax
jne 0x16218
test dl, dl
je 0x161b8
lea rcx, [0x0001f230]
mov rdx, rbx
call sub.ntoskrnl.exe_DbgPrint
call fcn.00015554
mov dword [rbx + 0x14], eax
mov eax, 1
mov word [rbx + 0x4e], ax
mov word [rbx + 0x6e], ax
jmp 0x16215
mov eax, 1
cmp dword [rbx + 0x18], eax
jne 0x16218
test dl, dl
je 0x161ec
lea rcx, [0x0001f260]
mov rdx, rbx
call sub.ntoskrnl.exe_DbgPrint
mov eax, 2
jmp 0x16215
test rbx, rbx
je 0x16218
cmp byte [0x000266c2], 0
je 0x16210
lea rcx, [0x0001ef20]
mov rdx, rbx
call sub.ntoskrnl.exe_DbgPrint
mov eax, 3
mov dword [rbx + 0x18], eax
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
pop rsi
pop rbp
ret