Function at 0x180005a10
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xe0
mov rax, qword [0x18003c040]
xor rax, rsp
mov qword [rbp + 7], rax
mov dword [rbp - 0x65], r9d
mov dword [rbp - 0x69], r8d
mov rbx, rdx
mov r12, rcx
xor r15d, r15d
mov qword [rbp - 0x61], r15
mov qword [rbp - 0x59], r15
mov qword [rbp - 0x19], r15
mov qword [rbp - 0x11], r15
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 9], xmm1
lea ecx, [r15 + 0x48]
call fcn.18000fb30
mov r13, rax
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp - 9], rax
lea r8, [rbp - 0x59]
lea rdx, [rbp - 0x61]
mov rcx, rbx
call fcn.180004ee0
mov r14, rax
test rax, rax
je 0x180005cf2
mov rcx, 0xffffffffffffffff
inc rcx
cmp word [rbx + rcx*2], 0
jne 0x180005aa4
dec rcx
mov rdx, rbx
call fcn.1800034c0
not eax
xor edx, edx
mov ecx, eax
call fcn.18000a860
mov r15, rax
test rax, rax
je 0x180005cef
mov eax, 0x5a4d
cmp word [r15], ax
je 0x180005ae5
cmp word [r14], ax
jne 0x180005cef
movsxd rcx, dword [r15 + 0x3c]
movsxd rsi, dword [r14 + 0x3c]
add rsi, r14
cmp dword [rcx + r15], 0x4550
je 0x180005b06
cmp dword [rsi], 0x4550
jne 0x180005cef
mov eax, dword [rsi + 0x50]
mov qword [rbp - 0x11], rax
mov dword [rsp + 0x28], 4
mov dword [rsp + 0x20], 0x1000
lea r9, [rbp - 0x11]
xor r8d, r8d
lea rdx, [rbp - 0x19]
lea rcx, [r8 - 1]
call fcn.18000f7b7
test eax, eax
jne 0x180005cef
mov r8d, dword [rsi + 0x54]
mov rdx, r14
mov rcx, qword [rbp - 0x19]
call fcn.1800256b0
movsxd rbx, dword [r14 + 0x3c]
add rbx, 0x11c
xor eax, eax
mov edi, eax
cmp ax, word [rsi + 6]
jae 0x180005b8a
add rbx, r14
mov eax, dword [rbx - 4]
test eax, eax
je 0x180005b7c
mov r8d, eax
mov edx, dword [rbx]
add rdx, r14
mov ecx, dword [rbx - 8]
add rcx, qword [rbp - 0x19]
call fcn.1800256b0
inc edi
add rbx, 0x28
movzx eax, word [rsi + 6]
cmp edi, eax
jb 0x180005b61
mov rdx, r14
mov rcx, 0xffffffffffffffff
call fcn.18000f81f
xor edi, edi
mov r14d, edi
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x39], xmm0
lea ecx, [rdi + 0x18]
call fcn.18000fb30
mov rbx, rax
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x51], r15
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x49], xmm0
lea ecx, [rdi + 0x18]
call fcn.18000fb30
mov rdi, rax
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp - 0x49], rax
mov qword [rbp - 0x49], rbx
mov qword [rbp - 0x39], rax
xor ebx, ebx
mov qword [rbp - 0x41], rbx
mov qword [rbp - 0x31], rbx
lea r8, [rbp - 0x51]
lea rdx, [rbp - 0x29]
call fcn.1800067c0
nop
mov rsi, qword [rbp - 0x49]
mov rax, qword [rsi + 8]
mov qword [rax], rbx
mov rcx, qword [rsi]
test rcx, rcx
je 0x180005c26
mov rbx, qword [rcx]
mov edx, 0x18
call fcn.18000fb6c
mov rcx, rbx
test rbx, rbx
jne 0x180005c11
mov edx, 0x18
mov rcx, rsi
call fcn.18000fb6c
nop
mov rax, qword [rdi + 8]
mov qword [rax], rbx
mov rcx, qword [rdi]
test rcx, rcx
je 0x180005c58
mov rbx, qword [rcx]
mov edx, 0x18
call fcn.18000fb6c
mov rcx, rbx
test rbx, rbx
jne 0x180005c43
mov edx, 0x18
mov rcx, rdi
call fcn.18000fb6c
mov rcx, qword [rbp - 0x29]
add rcx, 0x28
mov rbx, rcx
cmp byte [rbp - 0x21], 1
mov edi, 0
cmovne rbx, rdi
cmovne rdi, rcx
mov rdx, r15
mov rcx, qword [rbp - 0x19]
call fcn.180005170
mov eax, dword [rbp - 0x69]
test rdi, rdi
je 0x180005cd0
test eax, eax
je 0x180005cd0
cmp r12, 0xffffffffffffffff
je 0x180005cd0
mov rax, qword [rdi]
mov rbx, qword [rax]
cmp rbx, rax
je 0x180005cef
nop word [rax + rax]
mov rdx, qword [rbx + 0x10]
mov r8, rdx
sub r8, r15
add r8, qword [rbp - 0x19]
mov rcx, r12
call fcn.1800052d0
mov rbx, qword [rbx]
cmp rbx, qword [rdi]
jne 0x180005cb0
jmp 0x180005cef
mov ecx, dword [rbp - 0x65]
mov dword [rsp + 0x38], ecx
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x20], r12
mov r9, rbx
mov rdx, r15
mov rcx, qword [rbp - 0x19]
call fcn.1800053e0
xor r15d, r15d
cmp qword [rbp - 0x19], 0
je 0x180005d13
mov r9d, 0x8000
lea r8, [rbp - 0x11]
lea rdx, [rbp - 0x19]
mov rcx, 0xffffffffffffffff
call fcn.18000f7c4
test r14, r14
je 0x180005d27
mov rdx, r14
mov rcx, 0xffffffffffffffff
call fcn.18000f81f
mov rcx, qword [rbp - 0x59]
test rcx, rcx
je 0x180005d35
call fcn.18000f7aa
mov rcx, qword [rbp - 0x61]
test rcx, rcx
je 0x180005d44
call fcn.18000f7aa
nop
mov rax, qword [r13 + 8]
mov qword [rax], r15
mov rdi, qword [r13]
test rdi, rdi
je 0x180005dc7
nop dword [rax]
nop dword [rax + rax]
mov rsi, qword [rdi]
lea rbx, [rdi + 0x10]
mov qword [rbp - 0x61], rbx
mov rdx, qword [rbx + 0x20]
cmp rdx, 0xf
jbe 0x180005da2
inc rdx
mov rcx, qword [rbx + 8]
cmp rdx, 0x1000
jb 0x180005d9d
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180005dfb
mov rcx, r8
call fcn.18000fb6c
mov qword [rbx + 0x18], r15
mov qword [rbx + 0x20], 0xf
mov byte [rbx + 8], 0
mov edx, 0x48
mov rcx, rdi
call fcn.18000fb6c
mov rdi, rsi
test rsi, rsi
jne 0x180005d60
mov edx, 0x48
mov rcx, r13
call fcn.18000fb6c
mov rcx, qword [rbp + 7]
xor rcx, rsp
call fcn.18000f9f0
mov rbx, qword [rsp + 0x130]
add rsp, 0xe0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180019e50
int3