Function at 0x1800810f0
Capabilities:
Parse pe header

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0x240]
sub rsp, 0x340
mov rax, qword [0x1801003f0]
xor rax, rsp
mov qword [rbp + 0x220], rax
mov r15, qword [rbp + 0x2a0]
mov rsi, rcx
lea rcx, [0x1800d44bc]
mov r13d, r9d
mov qword [rsp + 0x38], r8
mov r14, rdx
call fcn.18007e320
lea rcx, [0x1800d44b0]
mov rbx, rax
call fcn.18007e320
mov rdi, rax
test rbx, rbx
je 0x180081432
test rax, rax
je 0x180081432
lea r8d, [r13 + 0x2cc]
xor edx, edx
mov r9d, 0x1000
mov rcx, rsi
mov qword [rsp + 0x338], r12
mov dword [rsp + 0x20], 4
call rbx
mov r12, rax
test rax, rax
je 0x18008142e
xor eax, eax
lea r8, [rsp + 0x40]
mov r9d, 0x40
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
mov eax, 0x5a4d
mov word [rsp + 0x40], ax
lea rax, [rsp + 0x30]
mov rdx, r12
mov rcx, rsi
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x7c], 0x40
mov qword [rsp + 0x20], rax
call rdi
test eax, eax
je 0x18008142e
cmp qword [rsp + 0x30], 0x40
jne 0x18008142e
lea rcx, [rbp + 0x110]
xor edx, edx
mov r8d, 0x108
lea rbx, [r12 + 0x40]
call fcn.1800369b0
mov eax, 0xf0
mov word [rbp + 0x124], ax
mov eax, 0x2000
lea r8, [rbp + 0x110]
mov word [rbp + 0x126], ax
mov eax, 1
mov r9d, 0x108
mov word [rbp + 0x116], ax
lea rax, [rsp + 0x30]
mov rdx, rbx
mov rcx, rsi
mov dword [rbp + 0x110], 0x4550
mov qword [rsp + 0x20], rax
call rdi
test eax, eax
je 0x18008142e
cmp qword [rsp + 0x30], 0x108
jne 0x18008142e
xor edx, edx
lea rcx, [rbp - 0x80]
lea r8d, [rdx + 0x28]
call fcn.1800369b0
lea eax, [rbx + 0x108]
movabs r11, 0x72756f74656474
sub eax, r12d
lea r12d, [r13 + 0x15c]
lea r8, [rbp - 0x80]
add eax, 0x28
lea rdx, [rbx + 0x108]
mov r9d, 0x28
mov dword [rbp - 0x74], eax
lea rax, [rsp + 0x30]
mov rcx, rsi
mov qword [rbp - 0x80], r11
mov dword [rbp - 0x70], r12d
mov qword [rsp + 0x20], rax
call rdi
test eax, eax
je 0x18008142e
cmp qword [rsp + 0x30], 0x28
jne 0x18008142e
xor edx, edx
lea rcx, [rbp - 0x50]
lea r8d, [rdx + 0x40]
call fcn.1800369b0
lea rax, [rsp + 0x30]
lea r8, [rbp - 0x50]
lea rdx, [rbx + 0x130]
mov r9d, 0x40
mov rcx, rsi
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x50], 0x40
mov dword [rbp - 0x4c], 0x727444
mov dword [rbp - 0x48], 0x40
mov dword [rbp - 0x44], r12d
call rdi
test eax, eax
je 0x18008142e
cmp qword [rsp + 0x30], 0x40
jne 0x18008142e
lea rcx, [rbp - 0x10]
xor edx, edx
mov r8d, 0x11c
call fcn.1800369b0
mov eax, dword [r14]
lea r11d, [r13 + 0x11c]
mov dword [rbp - 8], eax
mov eax, dword [r14 + 4]
mov dword [rbp - 0x10], r11d
mov dword [rbp - 4], eax
mov eax, dword [r14 + 8]
mov dword [rbp - 0xc], 0
mov dword [rbp], eax
mov eax, dword [r14 + 0xc]
mov dword [rbp + 4], eax
test r15, r15
je 0x1800813a8
cmp dword [rbp + 0x2a8], 0
jbe 0x1800813a8
mov rdx, qword [r15]
lea rcx, [rbp + 8]
mov r8d, 0x103
call fcn.180038a00
lea rax, [rsp + 0x30]
lea r8, [rbp - 0x10]
lea rdx, [rbx + 0x170]
mov r9d, 0x11c
mov rcx, rsi
mov qword [rsp + 0x20], rax
call rdi
test eax, eax
je 0x18008142e
cmp qword [rsp + 0x30], 0x11c
jne 0x18008142e
mov r8, qword [rsp + 0x38]
lea rcx, [rsp + 0x30]
lea rdx, [rbx + 0x28c]
mov qword [rsp + 0x20], rcx
mov r9, r13
mov rcx, rsi
call rdi
test eax, eax
je 0x18008142e
cmp qword [rsp + 0x30], r13
jne 0x18008142e
mov eax, 1
mov r12, qword [rsp + 0x338]
mov rcx, qword [rbp + 0x220]
xor rcx, rsp
call fcn.180036980
add rsp, 0x340
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor eax, eax
jmp 0x180081405
xor eax, eax
jmp 0x18008140d