Function at 0x14000fe30
Capabilities:
Load ntoskrnl
Parse pe header

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x50
mov rax, qword [0x14001f010]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rax, qword gs:[0x58]
mov r14, rdx
mov ebx, 4
mov r15, rcx
mov edi, 1
add rbx, qword [rax]
mov eax, dword [rbx]
cmp dword [0x140020078], eax
jle 0x14000feb4
lea rcx, [0x140020078]
call fcn.140011a30
cmp dword [0x140020078], 0xffffffff
jne 0x14000feb4
mov r8d, edi
lea rcx, str.ntoskrnl.exe
xor edx, edx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExA]
lea rcx, [0x140020078]
mov qword [0x14001ff18], rax
call fcn.1400119d0
mov eax, dword [rbx]
cmp dword [0x14001fef8], eax
jle 0x14000feed
lea rcx, [0x14001fef8]
call fcn.140011a30
cmp dword [0x14001fef8], 0xffffffff
jne 0x14000feed
mov rax, qword [0x14001ff18]
lea rcx, [0x14001fef8]
mov qword [0x14001ffd0], rax
call fcn.1400119d0
mov rax, qword [0x14001ffd0]
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140010244
mov eax, dword [rbx]
cmp dword [0x14001ff04], eax
jle 0x14000ff46
lea rcx, [0x14001ff04]
call fcn.140011a30
cmp dword [0x14001ff04], 0xffffffff
jne 0x14000ff46
mov rax, qword [0x14001ffd0]
lea rcx, [0x14001ff04]
movsxd rdx, dword [rax + 0x3c]
add rdx, qword [0x14001ff18]
mov qword [0x14001ff70], rdx
call fcn.1400119d0
mov rax, qword [0x14001ff70]
cmp dword [rax], 0x4550
jne 0x140010244
mov eax, dword [rbx]
cmp dword [0x140020054], eax
mov qword [rsp + 0x70], rsi
jle 0x14000ff9d
lea rcx, [0x140020054]
call fcn.140011a30
cmp dword [0x140020054], 0xffffffff
jne 0x14000ff9d
mov rax, qword [0x14001ff70]
lea rcx, [0x140020054]
add rax, 0x108
mov qword [0x140020098], rax
call fcn.1400119d0
mov eax, dword [rbx]
cmp dword [0x140020050], eax
jle 0x14000ffd6
lea rcx, [0x140020050]
call fcn.140011a30
cmp dword [0x140020050], 0xffffffff
jne 0x14000ffd6
mov rax, qword [0x140020098]
lea rcx, [0x140020050]
mov qword [0x14001fec8], rax
call fcn.1400119d0
mov eax, dword [rbx]
cmp dword [0x14001ff7c], eax
jle 0x140010013
lea rcx, [0x14001ff7c]
call fcn.140011a30
cmp dword [0x14001ff7c], 0xffffffff
jne 0x140010013
mov rax, qword [0x14001ff70]
lea rcx, [0x14001ff7c]
movzx edx, word [rax + 6]
mov word [0x14001fefc], dx
call fcn.1400119d0
xchg byte [0x14001fe7a], dil
mov rdx, qword [0x140020098]
xor esi, esi
test dil, dil
jne 0x140010086
movzx eax, word [0x14001fefc]
lea rcx, [rax + rax*4]
mov rax, qword [0x14001fec8]
lea r8, [rax + rcx*8]
cmp rdx, r8
jae 0x140010086
lea r9, str.PAGE
nop word [rax + rax]
mov rax, rsi
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rdx + rax]
inc rax
cmp cl, byte [r9 + rax - 1]
jne 0x140010076
cmp rax, 5
jne 0x140010060
jmp 0x140010086
add rdx, 0x28
mov qword [0x140020098], rdx
cmp rdx, r8
jb 0x140010050
mov eax, dword [rbx]
cmp dword [0x1400200ac], eax
jle 0x1400100d0
lea rcx, [0x1400200ac]
call fcn.140011a30
cmp dword [0x1400200ac], 0xffffffff
jne 0x1400100c9
mov rax, qword [0x140020098]
lea rcx, [0x1400200ac]
mov edx, dword [rax + 0xc]
add rdx, qword [0x14001ff18]
mov qword [0x14001feb0], rdx
call fcn.1400119d0
mov rdx, qword [0x140020098]
mov edx, dword [rdx + 0x10]
movzx eax, byte [r15]
movzx ecx, byte [r14]
mov r10, qword [0x14001feb0]
mov byte [rbp - 0x30], al
movzx eax, byte [r15 + 1]
mov byte [rbp - 0x2f], cl
movzx ecx, byte [r14 + 1]
lea rbx, [rdx + r10]
mov byte [rbp - 0x2e], al
movzx eax, byte [r15 + 2]
mov byte [rbp - 0x2d], cl
movzx ecx, byte [r14 + 2]
mov byte [rbp - 0x2c], al
movzx eax, byte [r15 + 3]
mov byte [rbp - 0x2b], cl
movzx ecx, byte [r14 + 3]
mov byte [rbp - 0x2a], al
movzx eax, byte [r15 + 4]
mov byte [rbp - 0x29], cl
movzx ecx, byte [r14 + 4]
mov byte [rbp - 0x28], al
movzx eax, byte [r15 + 5]
mov byte [rbp - 0x27], cl
movzx ecx, byte [r14 + 5]
mov byte [rbp - 0x26], al
movzx eax, byte [r15 + 6]
mov byte [rbp - 0x25], cl
movzx ecx, byte [r14 + 6]
mov byte [rbp - 0x24], al
movzx eax, byte [r15 + 7]
mov byte [rbp - 0x23], cl
movzx ecx, byte [r14 + 7]
mov byte [rbp - 0x22], al
movzx eax, byte [r15 + 8]
mov byte [rbp - 0x21], cl
movzx ecx, byte [r14 + 8]
mov byte [rbp - 0x20], al
movzx eax, byte [r15 + 9]
mov byte [rbp - 0x1f], cl
movzx ecx, byte [r14 + 9]
mov byte [rbp - 0x1e], al
movzx eax, byte [r15 + 0xa]
mov byte [rbp - 0x1d], cl
movzx ecx, byte [r14 + 0xa]
mov byte [rbp - 0x1c], al
movzx eax, byte [r15 + 0xb]
mov byte [rbp - 0x1b], cl
movzx ecx, byte [r14 + 0xb]
mov byte [rbp - 0x1a], al
movzx eax, byte [r15 + 0xc]
mov byte [rbp - 0x19], cl
movzx ecx, byte [r14 + 0xc]
mov byte [rbp - 0x18], al
movzx eax, byte [r15 + 0xd]
mov byte [rbp - 0x17], cl
movzx ecx, byte [r14 + 0xd]
mov byte [rbp - 0x16], al
movzx eax, byte [r15 + 0xe]
mov byte [rbp - 0x15], cl
movzx ecx, byte [r14 + 0xe]
mov byte [rbp - 0x14], al
movzx eax, byte [r15 + 0xf]
mov byte [rbp - 0x13], cl
movzx ecx, byte [r14 + 0xf]
mov byte [rbp - 0x12], al
mov rax, rbx
mov byte [rbp - 0x11], cl
cmp rdx, 0x10
jb 0x140010229
lea r11, [rbx - 0x10]
nop dword [rax]
mov r8, r10
lea rdx, [rbp - 0x30]
nop word [rax + rax]
movzx r9d, word [rdx]
movzx ecx, r9w
shr cx, 8
cmp cl, 0x3f
je 0x140010216
cmp byte [r8], r9b
jne 0x14001023a
inc r8
lea rcx, [rbp - 0x10]
add rdx, 2
cmp rdx, rcx
jne 0x140010200
mov rax, r10
cmp rax, rbx
cmovne rsi, rax
mov rax, rsi
mov rsi, qword [rsp + 0x70]
jmp 0x140010246
cmp r10, r11
je 0x140010229
inc r10
jmp 0x1400101f0
xor eax, eax
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140011810
mov rbx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x80]
add rsp, 0x50
pop r15
pop r14
pop rbp
ret