Function at 0x140003a08
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
xor r13d, r13d
lea rsi, [rcx + 0xa8]
mov rdi, rcx
mov rcx, rsi
mov r12, r8
mov r14d, edx
mov r15d, r13d
mov ebx, r13d
lea ebp, [r13 + 1]
call qword [sym.imp.ntoskrnl.exe_KeAcquireSpinLockRaiseToDpc]
mov byte [rsp + 0x80], al
mov eax, dword [rdi + 0x24]
test al, 4
jne 0x140003b04
cmp r14d, 0xb
jne 0x140003a88
lea rax, [rdi + 0x60]
mov rcx, qword [rax]
cmp rcx, rax
je 0x140003b04
mov rbx, rcx
mov rcx, qword [rcx]
cmp qword [rbx + 8], rax
jne 0x140003a81
cmp qword [rcx + 8], rbx
je 0x140003aae
mov ecx, 3
int 0x29
lea rax, [rdi + 0x70]
mov rcx, qword [rax]
cmp rcx, rax
je 0x140003b04
mov rbx, rcx
mov rcx, qword [rcx]
cmp qword [rbx + 8], rax
jne 0x140003cac
cmp qword [rcx + 8], rbx
jne 0x140003cac
mov qword [rax], rcx
mov qword [rcx + 8], rax
mov ecx, dword [rbx + 0x44]
mov rdx, qword [rbx + 0x68]
mov r13d, 0x44
mov r15d, dword [rdx + 0x18]
add ecx, r13d
cmp r14d, 0xa
jne 0x140003adb
mov eax, dword [rbx + 0x58]
cmp dword [rdx + 0x28], eax
jne 0x140003adb
add r15d, dword [rbx + 0x48]
mov rax, qword [0x14000b878]
lea r8d, [rcx + r15]
mov rcx, qword [r12]
lea edx, [r8 + 0x10]
sub rax, rcx
mov qword [rsp + 0x38], rdx
cmp rax, rdx
jae 0x140003b62
mov r15d, 0xc0000017
xor r13d, r13d
mov dl, byte [rsp + 0x80]
mov rcx, rsi
call qword [sym.imp.ntoskrnl.exe_KeReleaseSpinLock]
test rbx, rbx
je 0x140003d40
test r15d, r15d
js 0x140003cea
test bpl, bpl
je 0x140003cea
mov rcx, rsi
call qword [sym.imp.ntoskrnl.exe_KeAcquireSpinLockRaiseToDpc]
mov ecx, dword [rbx + 0x5c]
mov dl, al
cmp r14d, 0xb
jne 0x140003cbc
mov eax, dword [rdi + 0x80]
cmp eax, ecx
jb 0x140003cb3
sub eax, ecx
mov dword [rdi + 0x80], eax
jmp 0x140003cd7
mov rdx, qword [0x14000b870]
add rdx, rcx
mov qword [rsp + 0x30], rdx
mov dword [rdx], r14d
mov rax, qword [rdi + 0x10]
mov dword [rdx + 0xc], r8d
mov qword [rdx + 4], rax
mov rax, qword [rbx + 0x10]
mov qword [rdx + 0x10], rax
mov rax, qword [rbx + 0x18]
mov qword [rdx + 0x18], rax
mov rax, qword [rbx + 0x20]
mov qword [rdx + 0x20], rax
mov eax, dword [rbx + 0x28]
mov dword [rdx + 0x28], eax
and dword [rdx + 0x2c], 0
mov eax, dword [rbx + 0x48]
mov ecx, dword [rbx + 0x44]
add eax, 0x20
add ecx, eax
mov dword [rdx + 0x30], ecx
mov rax, qword [rbx + 0x2c]
mov qword [rdx + 0x34], rax
mov rax, qword [rbx + 0x34]
mov qword [rdx + 0x3c], rax
mov rax, qword [rbx + 0x3c]
mov qword [rdx + 0x44], rax
mov rax, qword [rbx + 0x44]
mov qword [rdx + 0x4c], rax
mov r9, qword [rbx + 0x50]
test r9, r9
je 0x140003bf3
mov eax, dword [rbx + 0x44]
test eax, eax
je 0x140003bf3
lea rcx, [rdx + 0x54]
mov r8d, eax
mov rdx, r9
call fcn.140008e40
add r13d, dword [rbx + 0x44]
mov r12, qword [rbx + 0x68]
xor ebp, ebp
cmp r14d, 0xa
jne 0x140003c21
mov eax, dword [rbx + 0x58]
cmp dword [r12 + 0x28], eax
jne 0x140003c21
mov ebp, dword [rbx + 0x48]
test ebp, ebp
je 0x140003c21
xor r9d, r9d
xor r8d, r8d
mov edx, ebp
mov rcx, r12
call qword [sym.imp.NDIS.SYS_NdisRetreatNetBufferDataStart]
and dword [rsp + 0x20], 0
mov eax, r13d
mov r13, qword [rsp + 0x30]
add r13, 0x10
mov r9d, 1
mov edx, r15d
add r13, rax
mov rcx, r12
mov r8, r13
call qword [sym.imp.NDIS.SYS_NdisGetDataBuffer]
test rax, rax
je 0x140003c62
cmp rax, r13
je 0x140003c62
mov r8d, r15d
mov rdx, rax
mov rcx, r13
call fcn.140008e40
xor r13d, r13d
test ebp, ebp
je 0x140003c7a
xor r9d, r9d
xor r8d, r8d
mov edx, ebp
mov rcx, r12
call qword [sym.imp.NDIS.SYS_NdisAdvanceNetBufferDataStart]
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x38]
mov r15d, r13d
add qword [rax], rcx
mov rax, qword [rbx + 0x68]
mov rcx, qword [rax]
mov eax, 1
test rcx, rcx
movzx ebp, al
mov qword [rbx + 0x68], rcx
cmovne ebp, r13d
jmp 0x140003b04
mov ecx, 3
int 0x29
mov dword [rdi + 0x80], r13d
jmp 0x140003cd7
mov eax, dword [rdi + 0x84]
cmp eax, ecx
jb 0x140003cd0
sub eax, ecx
mov dword [rdi + 0x84], eax
jmp 0x140003cd7
mov dword [rdi + 0x84], r13d
mov rcx, rsi
call qword [sym.imp.ntoskrnl.exe_KeReleaseSpinLock]
mov rcx, rbx
call fcn.140008478
jmp 0x140003d40
mov rcx, rsi
call qword [sym.imp.ntoskrnl.exe_KeAcquireSpinLockRaiseToDpc]
mov dl, al
cmp r14d, 0xb
jne 0x140003d15
add rdi, 0x60
mov rax, qword [rdi]
mov qword [rbx + 8], rdi
mov qword [rbx], rax
cmp qword [rax + 8], rdi
je 0x140003d30
lea ecx, [r14 - 8]
int 0x29
add rdi, 0x70
mov rax, qword [rdi]
mov qword [rbx + 8], rdi
mov qword [rbx], rax
cmp qword [rax + 8], rdi
je 0x140003d30
mov ecx, 3
int 0x29
mov qword [rax + 8], rbx
mov rcx, rsi
mov qword [rdi], rbx
call qword [sym.imp.ntoskrnl.exe_KeReleaseSpinLock]
mov eax, r15d
mov rbx, qword [rsp + 0x88]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret