Function at 0x14434
Capabilities:
Complete processing asynchronous io request

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
sub rsp, 0x150
mov rax, qword [0x0001b100]
xor rax, rsp
mov qword [rsp + 0x140], rax
mov rbp, qword [rdx + 0xb8]
mov rdi, rdx
mov rbx, rcx
call fcn.000142a4
xor r12d, r12d
cmp eax, r12d
mov esi, eax
jge 0x14490
xor edx, edx
mov rcx, rdi
mov dword [rdi + 0x30], eax
mov qword [rdi + 0x38], r12
call qword [sym.imp.ntoskrnl.exe_IofCompleteRequest]
mov eax, esi
jmp 0x14827
movzx ecx, byte [rbp + 1]
cmp ecx, r12d
je 0x1479c
sub ecx, 2
je 0x145f4
or esi, 0xffffffff
sub ecx, 2
je 0x145b8
sub ecx, 5
je 0x14591
sub ecx, 0xd
je 0x1456d
cmp ecx, 1
jne 0x145bc
mov eax, dword [rbx + 0x40]
lea r9, [rbx + 0xa2ac]
lea rdx, [0x00018da0]
neg eax
lea rcx, [0x00018d30]
mov dword [rbx + 0x44], r12d
sbb r8d, r8d
and r8d, 0xb
add r8d, 0x4e
call fcn.0001717c
cmp dword [rbx + 0xa5c0], r12d
je 0x14542
or edx, 0xffffffff
mov rcx, rbx
call fcn.00011c7c
lea rcx, [rbx + 0xa5c8]
xor edx, edx
call qword [sym.imp.ntoskrnl.exe_IoSetDeviceInterfaceState]
cmp qword [rbx + 0xa5d0], r12
mov dword [rbx + 0xa5c0], r12d
je 0x14542
lea rcx, [rbx + 0xa5c8]
call qword [sym.imp.ntoskrnl.exe_RtlFreeUnicodeString]
mov qword [rbx + 0xa5d0], r12
mov rcx, qword [rbx + 0xa278]
cmp rcx, r12
je 0x14556
xor edx, edx
call qword [sym.imp.ntoskrnl.exe_ExFreePoolWithTag]
mov qword [rbx + 0xa278], r12
mov dword [rbx + 0xa280], r12d
mov dword [rbx + 0x70], r12d
mov dword [rbx + 0x74], esi
jmp 0x145bc
mov rax, qword [rbx]
mov rcx, qword [rax + 0x18]
cmp rcx, r12
je 0x14580
bt dword [rcx + 0x30], 0xd
jae 0x14585
bts dword [rax + 0x30], 0xd
lea r8, [0x00014914]
jmp 0x14819
cmp dword [rbx + 0x40], r12d
jne 0x145ac
mov eax, dword [rbx + 0x48]
mov rcx, qword [rbp + 8]
shl eax, 9
xor eax, dword [rcx + 4]
and eax, 0x200
xor dword [rcx + 4], eax
lea r8, [0x00014964]
jmp 0x14819
mov dword [rbx + 0x44], r12d
mov eax, esi
lock xadd dword [rbx + 0x20], eax
add eax, esi
jne 0x145d6
lea rcx, [rbx + 0x28]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.ntoskrnl.exe_KeSetEvent]
add byte [rdi + 0x43], 1
add qword [rdi + 0xb8], 0x48
mov rcx, qword [rbx + 0x10]
mov rdx, rdi
call qword [sym.imp.ntoskrnl.exe_IofCallDriver]
jmp 0x14827
mov eax, dword [rbx + 0x40]
lea r9, [rbx + 0xa2ac]
lea rdx, [0x00018d00]
neg eax
lea rcx, [0x00018d30]
sbb r8d, r8d
and r8d, 0xb
add r8d, 0x4e
call fcn.0001717c
cmp dword [rbx + 0xa5c0], r12d
je 0x14666
cmp dword [rbx + 0x44], r12d
je 0x14666
or edx, 0xffffffff
mov rcx, rbx
call fcn.00011c7c
lea rcx, [rbx + 0xa5c8]
xor edx, edx
call qword [sym.imp.ntoskrnl.exe_IoSetDeviceInterfaceState]
cmp eax, r12d
jge 0x14666
lea r8, [0x00018d40]
lea rdx, [0x00017970]
lea rcx, [0x00018d30]
call fcn.000170fc
or esi, 0xffffffff
mov dword [rbx + 0x44], r12d
mov dword [rbx + 0x24], 1
mov eax, esi
lock xadd dword [rbx + 0x20], eax
add eax, esi
jne 0x1468e
lea rcx, [rbx + 0x28]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.ntoskrnl.exe_KeSetEvent]
mov eax, esi
lock xadd dword [rbx + 0x20], eax
add eax, esi
jne 0x146a8
lea rcx, [rbx + 0x28]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.ntoskrnl.exe_KeSetEvent]
lea rcx, [rbx + 0x28]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], r12
call qword [sym.imp.ntoskrnl.exe_KeWaitForSingleObject]
add byte [rdi + 0x43], 1
add qword [rdi + 0xb8], 0x48
mov rcx, qword [rbx + 0x10]
mov rdx, rdi
call qword [sym.imp.ntoskrnl.exe_IofCallDriver]
mov r8d, dword [rbx + 0x4c]
lea r9, [rbx + 0xa2ac]
lea rdx, [0x00018d80]
lea rcx, [0x00018d30]
mov edi, eax
call fcn.0001717c
mov r11d, dword [rbx + 0x4c]
lea r9, [0x00018970]
lea r8, [0x00018960]
lea rcx, [rsp + 0x40]
mov edx, 0x80
mov dword [rsp + 0x20], r11d
call qword [sym.imp.ntoskrnl.exe__snwprintf]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_RtlInitUnicodeString]
lea rcx, [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_IoDeleteSymbolicLink]
cmp dword [rbx + 0xa5c0], r12d
je 0x14759
cmp qword [rbx + 0xa5d0], r12
je 0x14759
lea rcx, [rbx + 0xa5c8]
call qword [sym.imp.ntoskrnl.exe_RtlFreeUnicodeString]
mov rcx, qword [rbx + 0xa278]
cmp rcx, r12
je 0x1476d
xor edx, edx
call qword [sym.imp.ntoskrnl.exe_ExFreePoolWithTag]
mov rcx, qword [rbx + 0x10]
mov qword [rbx + 0xa278], r12
mov dword [rbx + 0xa280], r12d
mov dword [rbx + 0x70], r12d
mov dword [rbx + 0x74], esi
call qword [sym.imp.ntoskrnl.exe_IoDetachDevice]
mov rcx, qword [rbx]
call qword [sym.imp.ntoskrnl.exe_IoDeleteDevice]
mov eax, edi
jmp 0x14827
mov eax, dword [rbx + 0x40]
lea r9, [rbx + 0xa2ac]
lea rdx, [0x00018dd0]
neg eax
lea rcx, [0x00018d30]
sbb r8d, r8d
and r8d, 0xb
add r8d, 0x4e
call fcn.0001717c
mov r8d, dword [rbx + 0xa288]
mov rcx, qword [rbx]
mov edx, 1
call qword [sym.imp.ntoskrnl.exe_PoSetPowerState]
cmp dword [rbx + 0xa5c0], r12d
je 0x14812
lea rcx, [rbx + 0xa5c8]
mov dl, 1
call qword [sym.imp.ntoskrnl.exe_IoSetDeviceInterfaceState]
cmp eax, r12d
jge 0x14812
lea r8, [0x00018e00]
lea rdx, [0x00017970]
lea rcx, [0x00018d30]
call fcn.000170fc
lea r8, [0x00014858]
xor r9d, r9d
mov rdx, rdi
mov rcx, rbx
call fcn.00013f3c
mov rcx, qword [rsp + 0x140]
xor rcx, rsp
call fcn.000173f0
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r12
pop rdi
pop rsi
ret