Function at 0x18003bca0
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xd0]
sub rsp, 0x1d0
mov rax, qword [0x180123100]
xor rax, rsp
mov qword [rbp + 0xc0], rax
mov qword [rsp + 0x20], r8
mov rsi, rdx
mov r14, rcx
test rdx, rdx
je 0x18003beae
mov ebx, 0x40
lea rcx, [rsp + 0x70]
mov r8d, ebx
xor edx, edx
call fcn.1800b3e30
mov edi, 0x108
lea rcx, [rbp - 0x50]
mov r8d, edi
xor edx, edx
call fcn.1800b3e30
mov r9d, ebx
lea rdx, [rsp + 0x70]
mov r8, rsi
mov rcx, r14
call fcn.18003b930
test al, al
je 0x18003beae
mov eax, 0x5a4d
cmp word [rsp + 0x70], ax
jne 0x18003beae
movsxd r8, dword [rbp - 0x54]
lea rdx, [rbp - 0x50]
add r8, rsi
mov r9d, edi
mov rcx, r14
call fcn.18003b930
test al, al
je 0x18003beae
cmp dword [rbp - 0x50], 0x4550
jne 0x18003beae
mov edi, dword [rbp + 0x38]
test edi, edi
je 0x18003beae
mov eax, dword [rbp + 0x3c]
test eax, eax
je 0x18003beae
lea r9d, [rbx - 0x3c]
mov qword [rsp + 0x40], rax
mov r8d, 0x3000
mov edx, eax
xor ecx, ecx
mov r12d, eax
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r9d, r12d
mov qword [rsp + 0x38], rdi
mov rbx, rax
mov rcx, r14
lea rax, [rdi + rsi]
mov rdx, rbx
mov r8, rax
mov qword [rsp + 0x30], rax
mov r15d, edi
call fcn.18003b930
test al, al
je 0x18003be9d
mov eax, dword [rbx + 0x20]
mov rdi, rbx
mov r12d, dword [rbx + 0x1c]
sub rdi, r15
mov r15d, dword [rbx + 0x24]
add rax, rdi
add r15, rdi
mov qword [rsp + 0x28], rax
add r12, rdi
xor r14d, r14d
cmp dword [rbx + 0x18], r14d
jbe 0x18003be9d
mov edx, dword [rax + r14*4]
xorps xmm0, xmm0
xor eax, eax
add rdx, rdi
or r8, 0xffffffffffffffff
mov qword [rsp + 0x58], rax
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x60], rax
inc r8
cmp byte [rdx + r8], al
jne 0x18003be0b
lea rcx, [rsp + 0x48]
call fcn.180002a0c
mov rax, qword [rsp + 0x20]
mov rdx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x18003be30
mov rdx, qword [rax]
cmp qword [rsp + 0x60], 0xf
lea rcx, [rsp + 0x48]
cmova rcx, qword [rsp + 0x48]
call fcn.180093158
test eax, eax
je 0x18003beda
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x18003be8b
mov rcx, qword [rsp + 0x48]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003be86
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003bf6e
call fcn.18007ff20
mov rax, qword [rsp + 0x28]
inc r14d
cmp r14d, dword [rbx + 0x18]
jb 0x18003bdec
mov r8d, 0x8000
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualFree]
xor eax, eax
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.18007ff00
mov rbx, qword [rsp + 0x228]
add rsp, 0x1d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
movzx eax, word [r15 + r14*2]
mov r14d, 0x1000
cmp dword [r12 + rax*4], r14d
jbe 0x18003bf1c
mov edi, dword [r12 + rax*4]
add rdi, rsi
cmp rdi, qword [rsp + 0x30]
jb 0x18003bf5b
mov rax, qword [rsp + 0x38]
add rax, qword [rsp + 0x40]
add rax, rsi
cmp rdi, rax
ja 0x18003bf5b
xor edx, edx
mov r8d, 0x8000
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualFree]
xor edi, edi
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x18003bf53
mov rcx, qword [rsp + 0x48]
inc rdx
mov rax, rcx
cmp rdx, r14
jb 0x18003bf4e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003bf6e
call fcn.18007ff20
mov rax, rdi
jmp 0x18003beb0
xor edx, edx
mov r8d, 0x8000
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualFree]
jmp 0x18003bf1e
call fcn.18008a8b4
int3