Function at 0x153d8
Capabilities:
Complete processing asynchronous io request

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov rbx, rcx
xor r13d, r13d
add rcx, 0x190
mov r12, rdx
mov r14d, 0x8000
mov esi, r13d
call qword [sym.imp.ntoskrnl.exe_KeAcquireSpinLockRaiseToDpc]
mov byte [rsp + 0x50], al
cmp qword [rbx + 0x10], r13
je 0x15627
cmp qword [rbx + 0x40], r13
je 0x155c5
cmp qword [rbx + 0x30], r12
jne 0x155c5
lea rdi, [rbx + 0x100]
cmp qword [rdi], rdi
je 0x155c5
lea rbp, [rbx + 0x110]
jmp 0x15524
cmp qword [rdi], rdi
je 0x155c5
mov rcx, qword [rbp]
mov rax, qword [rcx]
lea r13, [rcx - 0xa8]
mov qword [rbp], rax
mov qword [rax + 8], rbp
mov rax, qword [r13 + 0xb8]
bt dword [rax + 0xc], 0xe
mov r8d, dword [rax + 8]
jae 0x154b3
mov rax, qword [rdi]
xor edx, edx
jmp 0x154a0
test r8d, r8d
je 0x15497
cmp dword [rax + 0xdc], 0
je 0x154b3
add edx, dword [rax + 0xdc]
mov rax, qword [rax]
cmp rax, rdi
jne 0x15489
cmp edx, r8d
jae 0x154b3
cmp r8d, r14d
jbe 0x15552
lea rax, [r13 + 0xa8]
mov rdx, rdi
mov rcx, r13
mov qword [rax + 8], rax
mov qword [rax], rax
xor eax, eax
xchg qword [r13 + 0x68], rax
call fcn.00014e88
mov dl, byte [rsp + 0x50]
lea rcx, [rbx + 0x190]
mov esi, eax
mov byte [rbx + 0x125], 0
call qword [sym.imp.ntoskrnl.exe_KeReleaseSpinLock]
xor edx, edx
mov rcx, r13
call qword [sym.imp.ntoskrnl.exe_IofCompleteRequest]
lea rcx, [rbx + 0x190]
call qword [sym.imp.ntoskrnl.exe_KeAcquireSpinLockRaiseToDpc]
xor r13d, r13d
mov byte [rsp + 0x50], al
cmp qword [rbx + 0x10], r13
je 0x15627
cmp qword [rbx + 0x30], r12
jne 0x155c5
cmp esi, r13d
jl 0x1556a
cmp qword [rbp], rbp
jne 0x15451
cmp qword [rdi], rdi
je 0x155c5
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.000150a8
cmp eax, r13d
mov esi, eax
jl 0x155b8
cmp qword [rdi], rdi
je 0x155c5
jmp 0x15524
mov rax, qword [rbp]
mov qword [rcx + 8], rbp
xor r13d, r13d
mov qword [rcx], rax
mov qword [rax + 8], rcx
mov qword [rbp], rcx
jmp 0x155c2
cmp qword [rdi], rdi
je 0x155c2
mov rdx, qword [rdi]
cmp dword [rdx + 0x18], r13d
jl 0x15581
cmp dword [rdx + 0xdc], r13d
jne 0x155c2
mov rax, qword [rdx + 8]
mov rcx, qword [rdx]
mov qword [rax], rcx
mov qword [rcx + 8], rax
lea rcx, [rbx + 0xf0]
mov rax, qword [rcx + 8]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
mov qword [rax], rdx
mov qword [rcx + 8], rdx
mov rdx, qword [rbx + 0x30]
mov ecx, 2
call fcn.0001a380
jmp 0x155c2
cmp eax, 0xc000021b
jne 0x155c5
mov r14d, r13d
mov esi, r13d
cmp qword [rbx + 0x10], r13
je 0x15627
cmp qword [rbx + 0x30], r12
jne 0x15627
cmp esi, r13d
jl 0x1562c
lea rdx, [rbx + 0x100]
mov ecx, r13d
mov rax, qword [rdx]
jmp 0x155ee
add ecx, dword [rax + 0xdc]
mov rax, qword [rax]
cmp rax, rdx
jne 0x155e5
cmp ecx, r14d
jae 0x15627
cmp byte [rbx + 0xe8], r13b
je 0x15619
cmp dword [rbx + 0x120], r13d
jle 0x15627
mov edx, 1
mov rcx, rbx
call fcn.00014864
jmp 0x15627
mov rdx, qword [rbx + 0x30]
mov ecx, 4
call fcn.0001a380
cmp esi, r13d
jge 0x15646
cmp qword [rbx + 0x10], r13
je 0x15646
cmp qword [rbx + 0x30], r12
jne 0x15646
mov dl, byte [rsp + 0x50]
mov rcx, rbx
call fcn.00014390
jmp 0x15657
mov dl, byte [rsp + 0x50]
lea rcx, [rbx + 0x190]
call qword [sym.imp.ntoskrnl.exe_KeReleaseSpinLock]
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov eax, esi
mov rsi, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret