Function at 0x11e80
Capabilities:
Attach user process memory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x13560
push 0x12bb0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
add esp, 0xffffffb4
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x3c], 0xc0000001
cmp dword [ebp + 0xc], 0
je 0x11edc
cmp dword [ebp + 0x10], 0
jne 0x11ee6
mov eax, 0xc0000001
jmp 0x1212b
push 0x206b6444
push 0x30
push 0
call dword [sym.imp.NTOSKRNL.EXE_ExAllocatePoolWithTag]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x11f08
mov eax, 0xc000009a
jmp 0x1212b
mov eax, 0x12300
sub eax, 0x12140
mov dword [ebp - 0x1c], eax
push 0
push 0
push 0
mov ecx, dword [ebp - 0x1c]
push ecx
push 0x12140
call dword [sym.imp.NTOSKRNL.EXE_IoAllocateMdl]
mov dword [0x14048], eax
cmp dword [0x14048], 0
jne 0x11f4e
push 0
mov edx, dword [ebp - 0x40]
push edx
call dword [sym.imp.NTOSKRNL.EXE_ExFreePoolWithTag]
mov eax, 0xc000009a
jmp 0x1212b
mov eax, dword [0x14048]
push eax
call dword [sym.imp.NTOSKRNL.EXE_MmBuildMdlForNonPagedPool]
mov dword [ebp - 4], 0
push 1
push 0
mov ecx, dword [0x14048]
push ecx
call dword [sym.imp.NTOSKRNL.EXE_MmProbeAndLockPages]
mov dword [ebp - 4], 0xffffffff
jmp 0x11fba
lea ecx, [ebp - 0x38]
push ecx
mov edx, dword [ebp + 0x10]
push edx
call dword [sym.imp.ntoskrnl.exe_KeStackAttachProcess]
push 0x10
push 0
push 0
push 1
push 1
mov eax, dword [0x14048]
push eax
call dword [sym.imp.NTOSKRNL.EXE_MmMapLockedPagesSpecifyCache]
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0
jne 0x12014
lea ecx, [ebp - 0x38]
push ecx
call dword [sym.imp.ntoskrnl.exe_KeUnstackDetachProcess]
mov edx, dword [0x14048]
push edx
call dword [sym.imp.NTOSKRNL.EXE_IoFreeMdl]
push 0
mov eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.NTOSKRNL.EXE_ExFreePoolWithTag]
mov eax, 0xc0000001
jmp 0x1212b
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x44], ecx
push 0x12c
push 0
mov edx, dword [ebp - 0x48]
add edx, 0x14
push edx
call sub.NTOSKRNL.EXE_memset
add esp, 0xc
mov eax, dword [ebp + 8]
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x50]
add ecx, 1
mov dword [ebp - 0x54], ecx
mov edx, dword [ebp - 0x50]
mov al, byte [edx]
mov byte [ebp - 0x55], al
add dword [ebp - 0x50], 1
cmp byte [ebp - 0x55], 0
jne 0x1203f
mov ecx, dword [ebp - 0x50]
sub ecx, dword [ebp - 0x54]
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp - 0x5c]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x48]
add ecx, 0x14
push ecx
call sub.NTOSKRNL.EXE_memcpy
add esp, 0xc
mov edx, dword [ebp - 0x48]
mov eax, dword [0x14024]
mov dword [edx + 0xff], eax
mov ecx, dword [ebp - 0x48]
add ecx, 1
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x44]
add edx, 0xff
mov eax, dword [ebp - 0x20]
mov dword [eax], edx
mov ecx, dword [ebp - 0x48]
add ecx, 9
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x44]
add edx, 0x14
mov eax, dword [ebp - 0x20]
mov dword [eax], edx
lea ecx, [ebp - 0x38]
push ecx
call dword [sym.imp.ntoskrnl.exe_KeUnstackDetachProcess]
push 0
push 1
mov edx, dword [ebp - 0x48]
push edx
push 0
push 0x11be0
push 0
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 0x40]
push ecx
call dword [sym.imp.ntoskrnl.exe_KeInitializeApc]
push 2
push 0
push 0
mov edx, dword [ebp - 0x40]
push edx
call dword [sym.imp.ntoskrnl.exe_KeInsertQueueApc]
movzx eax, al
test eax, eax
jne 0x12117
mov ecx, dword [0x14048]
push ecx
call dword [sym.imp.NTOSKRNL.EXE_MmUnlockPages]
mov edx, dword [0x14048]
push edx
call dword [sym.imp.NTOSKRNL.EXE_IoFreeMdl]
push 0
mov eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.NTOSKRNL.EXE_ExFreePoolWithTag]
mov eax, 0xc0000001
jmp 0x1212b
mov ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 0x4a]
test edx, edx
jne 0x12129
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x4a], 1
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc