Function at 0x14004c350
Capabilities:
Print debug messages

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x60
mov rcx, qword [rsp + 0x78]
call fcn.14004aa40
mov qword [rsp + 0x40], rax
cmp qword [rsp + 0x40], 0
jne 0x14004c396
mov r8d, 0x179
lea rdx, [0x1400770b0]
lea rcx, [0x1400770c0]
call sub.ntoskrnl.exe_DbgPrint
xor al, al
jmp 0x14004c633
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x38], rax
mov edx, 0x2000
mov rcx, qword [rsp + 0x38]
call fcn.140024a10
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov qword [rax + 0x1000], rcx
lea rax, [rsp + 0x28]
mov rdi, rax
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
mov rax, qword [rsp + 0x28]
or rax, 1
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x28]
or rax, 2
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x28]
or rax, 4
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
shr rax, 3
and rax, 7
and rax, 7
shl rax, 3
mov rcx, qword [rsp + 0x28]
and rcx, 0xffffffffffffffc7
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
shr rax, 6
and rax, 1
and rax, 1
shl rax, 6
mov rcx, qword [rsp + 0x28]
and rcx, 0xffffffffffffffbf
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
shr rax, 0x3f
and rax, 1
and rax, 1
shl rax, 0x3f
movabs rcx, 0x7fffffffffffffff
mov rdx, qword [rsp + 0x28]
and rdx, rcx
mov rcx, rdx
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x28], rax
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x38]
add rcx, rax
mov rax, rcx
mov rdi, rax
mov rax, qword [rsp + 0x28]
mov ecx, 0x200
rep stosq qword [rdi], rax
mov dword [rsp + 0x24], 0
jmp 0x14004c4c3
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0x200
jge 0x14004c585
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
shr rax, 0x15
and rax, 0x7ffffff
imul rax, rax, 0x200000
shr rax, 0xc
movsxd rcx, dword [rsp + 0x24]
add rax, rcx
mov qword [rsp + 0x48], rax
movsxd rax, dword [rsp + 0x24]
movabs rcx, 0xfffffffff
mov rdx, qword [rsp + 0x48]
and rdx, rcx
mov rcx, rdx
shl rcx, 0xc
mov rdx, qword [rsp + 0x38]
movabs rdi, 0xffff000000000fff
mov rax, qword [rdx + rax*8]
and rax, rdi
or rax, rcx
movsxd rcx, dword [rsp + 0x24]
mov rdx, qword [rsp + 0x38]
mov qword [rdx + rcx*8], rax
xor edx, edx
mov rcx, qword [rsp + 0x48]
call fcn.14004a7a0
mov byte [rsp + 0x20], al
movsxd rax, dword [rsp + 0x24]
movzx ecx, byte [rsp + 0x20]
and rcx, 7
shl rcx, 3
mov rdx, qword [rsp + 0x38]
mov rax, qword [rdx + rax*8]
and rax, 0xffffffffffffffc7
or rax, rcx
movsxd rcx, dword [rsp + 0x24]
mov rdx, qword [rsp + 0x38]
mov qword [rdx + rcx*8], rax
jmp 0x14004c4b9
lea rax, [rsp + 0x30]
mov rdi, rax
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
mov rax, qword [rsp + 0x30]
or rax, 1
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
or rax, 2
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
or rax, 4
mov qword [rsp + 0x30], rax
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x38]
add rcx, rax
mov rax, rcx
mov rcx, rax
call qword [sym.imp.ntoskrnl.exe_MmGetPhysicalAddress]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
sar rax, 0xc
movabs rcx, 0xfffffffff
and rax, rcx
shl rax, 0xc
movabs rcx, 0xffff000000000fff
mov rdx, qword [rsp + 0x30]
and rdx, rcx
mov rcx, rdx
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x30], rax
mov r8d, 8
lea rdx, [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
call fcn.14006fb00
mov al, 1
add rsp, 0x60
pop rdi
ret