Function at 0x14002981c
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x100
mov rax, qword [0x140085080]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov r15, rcx
lea rcx, [0x1400857a0]
call fcn.14005fcc8
mov rcx, qword gs:[0x60]
mov esi, 0x30
mov r8d, esi
xor edx, edx
mov rcx, qword [rcx + 0x30]
call qword [sym.imp.ntdll.dll_RtlAllocateHeap]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
je 0x140029ccc
and qword [rdi + 0x10], 0
lea rax, [0x140065268]
and qword [rdi + 0x18], 0
lea r13d, [rsi - 0x2f]
and qword [rdi + 0x20], 0
lea rdx, [rbp + 0x17]
mov qword [rdi], rax
lea rcx, [rsp + 0x28]
lea rax, str.WCP_SIL_TRACK_HANDLES
mov dword [rdi + 8], r13d
xorps xmm0, xmm0
mov qword [rsp + 0x30], rax
movups xmmword [rbp + 0x17], xmm0
mov dword [rsp + 0x28], 0x2c002a
call fcn.14002c898
movzx eax, byte [0x140085890]
mov rbx, qword [rbp + 0x1f]
test rbx, rbx
cmovne eax, r13d
mov byte [0x140085890], al
test al, al
je 0x140029904
xor r9d, r9d
lea r8, str._HANDLE_tracking_is_turned_on.
lea rdx, [0x1400857a0]
xor ecx, ecx
call fcn.14000dc6c
test rbx, rbx
je 0x14002991d
mov rcx, rbx
call fcn.14005d7ac
xorps xmm0, xmm0
movaps xmmword [rbp + 7], xmm0
movdqa xmmword [rbp + 0x17], xmm0
mov byte [rdi + 0x28], r13b
mov r8, rdi
xor edx, edx
mov dword [rdi + 0x2c], 0
call fcn.14001dc84
mov rcx, qword gs:[0x60]
xor edx, edx
mov rcx, qword [rcx + 0x30]
lea r8d, [rdx + 0x10]
call qword [sym.imp.ntdll.dll_RtlAllocateHeap]
nop dword [rax + rax]
mov r14, rax
test rax, rax
je 0x140029c93
and dword [rax + 0xc], 0
mov r8, rsi
mov dword [r14 + 8], r13d
lea rax, [0x140065428]
mov qword [r14], rax
xor edx, edx
mov rcx, qword gs:[0x60]
mov rcx, qword [rcx + 0x30]
call qword [sym.imp.ntdll.dll_RtlAllocateHeap]
nop dword [rax + rax]
mov rsi, rax
test rax, rax
je 0x140029c20
and qword [rsi + 0x10], 0
lea rax, vtable.qr:_.0
and qword [rsi + 0x20], 0
xor r9d, r9d
and qword [rsi + 0x28], 0
mov r8, r14
mov rdx, rdi
mov qword [rsi], rax
mov rcx, rsi
mov dword [rsi + 8], r13d
call fcn.140028d6c
mov ebx, eax
test eax, eax
jns 0x140029a2b
mov rcx, qword [rsi]
mov rax, qword [rcx + 0x10]
movabs r10, 0x90b516363c5e5070
mov edx, r13d
mov rcx, rsi
call qword [case.0x14005dcc6.0]
mov rcx, qword [r14]
mov rax, qword [rcx + 0x10]
movabs r10, 0xef7cb66d1658b370
mov edx, r13d
mov rcx, r14
call qword [case.0x14005dcc6.0]
mov rax, qword [rdi]
movabs r10, 0xef7cb66d1658b370
mov rax, qword [rax + 0x10]
mov edx, r13d
mov rcx, rdi
call qword [case.0x14005dcc6.0]
mov eax, ebx
jmp 0x140029d08
and qword [rsp + 0x20], 0
lea rcx, [rsp + 0x20]
call fcn.14003c950
mov ebx, eax
test eax, eax
jns 0x140029ab7
mov rcx, qword [rsp + 0x20]
mov rax, rsi
test rcx, rcx
je 0x140029a67
mov rdx, qword [rcx]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rdx]
call qword [case.0x14005dcc6.0]
mov rax, rsi
mov rax, qword [rax]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rax]
mov rcx, rsi
call qword [case.0x14005dcc6.0]
mov rax, qword [r14]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rax]
mov rcx, r14
call qword [case.0x14005dcc6.0]
mov rax, qword [rdi]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rax]
mov rcx, rdi
call qword [case.0x14005dcc6.0]
jmp 0x140029a24
mov rbx, qword [rsp + 0x20]
lea rdx, [rsp + 0x38]
and qword [rbp - 0x69], 0
mov r8, r15
mov qword [rbp - 0x79], rbx
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], rsi
mov byte [rbp - 0x71], 0
mov dword [rbp - 0x6d], 2
call fcn.14002cedc
mov rcx, qword [rbp - 0x69]
mov r15d, eax
test eax, eax
jns 0x140029b8e
test rcx, rcx
je 0x140029b17
call qword [sym.imp.ntdll.dll_LdrUnloadDll]
nop dword [rax + rax]
test eax, eax
jns 0x140029b17
mov ecx, 7
int 0x29
mov rax, rsi
test rbx, rbx
je 0x140029b3b
mov rax, qword [rbx]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rax]
mov rcx, rbx
call qword [case.0x14005dcc6.0]
mov rax, rsi
mov rax, qword [rax]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rax]
mov rcx, rsi
call qword [case.0x14005dcc6.0]
mov rax, qword [r14]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rax]
mov rcx, r14
call qword [case.0x14005dcc6.0]
mov rax, qword [rdi]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rax]
mov rcx, rdi
call qword [case.0x14005dcc6.0]
mov eax, r15d
jmp 0x140029d08
test rcx, rcx
je 0x140029baa
call qword [sym.imp.ntdll.dll_LdrUnloadDll]
nop dword [rax + rax]
test eax, eax
jns 0x140029baa
mov ecx, 7
int 0x29
mov rax, rsi
test rbx, rbx
je 0x140029bce
mov rax, qword [rbx]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rax]
mov rcx, rbx
call qword [case.0x14005dcc6.0]
mov rax, rsi
mov rax, qword [rax]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rax]
mov rcx, rsi
call qword [case.0x14005dcc6.0]
mov rax, qword [r14]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rax]
mov rcx, r14
call qword [case.0x14005dcc6.0]
mov rax, qword [rdi]
movabs r10, 0xaaa4b7fc7cd10a70
mov rax, qword [rax]
mov rcx, rdi
call qword [case.0x14005dcc6.0]
xor eax, eax
jmp 0x140029d08
lea rax, str.onecore_basewcp_sil_ntsystem.cpp
mov dword [rbp - 0x51], 0x23d1
mov qword [rbp - 0x61], rax
lea rcx, [rbp - 0x61]
lea rax, str.Windows::Rtl::RtlGetDirectSystem
mov r8d, 0xc0000017
mov qword [rbp - 0x59], rax
lea rax, str.DirectUserProvider.Allocate__
mov qword [rbp - 0x49], rax
call fcn.140059c64
mov rax, qword [r14]
movabs r10, 0xef7cb66d1658b370
mov rax, qword [rax + 0x10]
mov edx, r13d
mov rcx, r14
call qword [case.0x14005dcc6.0]
mov rax, qword [rdi]
movabs r10, 0xef7cb66d1658b370
mov rax, qword [rax + 0x10]
mov edx, r13d
mov rcx, rdi
call qword [case.0x14005dcc6.0]
jmp 0x140029d03
lea rax, str.onecore_basewcp_sil_ntsystem.cpp
mov dword [rbp - 0x31], 0x23cf
mov qword [rbp - 0x41], rax
lea rcx, [rbp - 0x41]
lea rax, str.Windows::Rtl::RtlGetDirectSystem
mov r8d, 0xc0000017
mov qword [rbp - 0x39], rax
lea rax, str.DirectRegProvider.Allocate__
mov qword [rbp - 0x29], rax
call fcn.140059c64
jmp 0x140029c74
lea rax, str.onecore_basewcp_sil_ntsystem.cpp
mov dword [rbp - 0x11], 0x23cd
mov qword [rbp - 0x21], rax
lea rcx, [rbp - 0x21]
lea rax, str.Windows::Rtl::RtlGetDirectSystem
mov r8d, 0xc0000017
mov qword [rbp - 0x19], rax
lea rax, str.DirectFsProvider.Allocate__
mov qword [rbp - 9], rax
call fcn.140059c64
mov eax, 0xc0000017
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.140063da0
lea r11, [rsp + 0x100]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rbp
ret