Function at 0x1a008
Capabilities:
Link many functions at runtime

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
push rsi
push rdi
push r13
sub rsp, 0xa0
xor ebp, ebp
mov rsi, rdx
mov rdi, rcx
lea rax, [0x00014130]
lea rdx, [0x00019610]
lea rcx, [rsp + 0x30]
mov qword [0x000160a0], rbp
mov qword [0x000160b0], rbp
mov qword [0x000160c0], rbp
mov qword [0x000160a8], rax
mov byte [0x000160c8], 1
mov byte [0x000160c9], bpl
mov word [0x000160ca], bp
mov dword [0x000160cc], ebp
mov dword [r11 + 0x18], ebp
call qword [sym.imp.ntoskrnl.exe_RtlInitUnicodeString]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_MmGetSystemRoutineAddress]
lea rdx, [0x00019630]
lea rcx, [rsp + 0x30]
mov qword [0x00016088], rax
call qword [sym.imp.ntoskrnl.exe_RtlInitUnicodeString]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_MmGetSystemRoutineAddress]
mov qword [0x00016070], rax
cmp rax, rbp
jne 0x1a0d1
lea rax, [0x00011260]
mov qword [0x00016070], rax
lea eax, [rbp + 1]
mov dword [0x00016090], eax
jmp 0x1a18c
lea rdx, [0x00019650]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_RtlInitUnicodeString]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_MmGetSystemRoutineAddress]
mov r10, qword [0x00016088]
mov qword [0x00016068], rax
mov eax, 2
mov dword [0x00016090], eax
cmp r10, rbp
je 0x1a125
lea rcx, [rsp + 0xd0]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call r10
mov eax, dword [0x00016090]
cmp dword [rsp + 0xd0], 6
jb 0x1a18c
lea rdx, [0x00019690]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_RtlInitUnicodeString]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_MmGetSystemRoutineAddress]
mov qword [0x00016080], rax
cmp rax, rbp
je 0x1a186
lea rdx, [0x000196d0]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_RtlInitUnicodeString]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_MmGetSystemRoutineAddress]
mov qword [0x00016078], rax
mov eax, 4
jmp 0x1a0c6
mov eax, dword [0x00016090]
mov rcx, qword [0x00015168]
lea rbx, [0x000160a0]
mov qword [0x000160c0], rbp
cmp rcx, rbx
je 0x1a21c
mov qword [0x00015168], rbx
cmp eax, 4
jne 0x1a1df
mov rcx, qword [rbx + 8]
lea rax, [rbx + 0x38]
lea r8, [0x000113b8]
mov r9, rbx
xor edx, edx
mov qword [rsp + 0x20], rax
mov qword [rax], rbp
call qword [0x00016080]
mov rbx, qword [rbx + 0x10]
cmp rbx, rbp
jne 0x1a1b2
jmp 0x1a215
lea r8, [0x00018008]
cmp eax, 2
jne 0x1a202
mov edx, 0x80010001
mov rcx, rbx
mov qword [0x000160a0], r8
call qword [sym.imp.ntoskrnl.exe_IoWMIRegistrationControl]
jmp 0x1a215
mov rcx, qword [0x00015e48]
mov r9, rbx
mov rdx, rdi
call qword [0x00015588]
mov rcx, qword [0x00015168]
lea r13, [0x00015168]
cmp rcx, r13
je 0x1a249
test byte [rcx + 0x2c], 1
je 0x1a249
cmp byte [rcx + 0x29], 4
jb 0x1a249
mov rcx, qword [rcx + 0x18]
lea r8, [0x00014190]
mov edx, 0xa
call fcn.00011008
mov ebx, 0x20
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8, rbx
call fcn.00013200
lea rax, [0x00018324]
mov dword [rsp + 0x40], ebx
mov ebx, 0x38
lea rcx, [rsp + 0x60]
xor edx, edx
mov r8, rbx
mov qword [rsp + 0x48], rax
call fcn.00013200
mov rcx, qword [0x00015e48]
lea rax, [0x00018ce0]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x40]
lea r9, [rsp + 0x60]
mov r8, rsi
mov rdx, rdi
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x60], ebx
mov dword [rsp + 0x78], 1
mov dword [rsp + 0x7c], 1
mov qword [rsp + 0x20], rax
call qword [0x00015560]
cmp eax, ebp
mov ebx, eax
jge 0x1a306
mov rcx, qword [0x00015168]
cmp rcx, r13
je 0x1a2fe
test byte [rcx + 0x2c], 2
je 0x1a2fe
cmp byte [rcx + 0x29], 2
jb 0x1a2fe
mov rcx, qword [rcx + 0x18]
lea r8, [0x00014190]
mov edx, 0xb
mov r9d, eax
call fcn.0001111c
mov rcx, rdi
call fcn.000182b4
lea r11, [rsp + 0xa0]
mov eax, ebx
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsp, r11
pop r13
pop rdi
pop rsi
ret