Function at 0x180002c40
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rbx, rdx
mov esi, r8d
mov rdi, rcx
xor edx, edx
mov rcx, rbx
mov r8d, 0x1d8
call fcn.1800490a0
mov eax, 0x5a4d
mov qword [rbx], rdi
mov dword [rbx + 8], esi
mov qword [rbx + 0x18], rdi
cmp word [rdi], ax
jne 0x180002ffe
movsxd rcx, dword [rdi + 0x3c]
add rcx, rdi
cmp dword [rcx], 0x4550
jne 0x180002ffe
cmp word [rcx + 6], 0
je 0x180002ffe
movzx eax, word [rcx + 0x14]
mov edx, 0xe0
lea r8d, [rdx + 0x6c]
cmp ax, dx
jne 0x180002cc2
cmp word [rcx + 4], r8w
jne 0x180002cc2
mov edx, 0x10b
cmp word [rcx + 0x18], dx
je 0x180002cee
mov edx, 0xf0
cmp ax, dx
jne 0x180002ffe
mov eax, 0x8664
cmp word [rcx + 4], ax
jne 0x180002ffe
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x180002ffe
lea rax, [rdi + 0x40]
xor r9d, r9d
mov qword [rbx + 0x20], rax
mov eax, dword [rdi + 0x3c]
sub eax, 0x40
mov dword [rbx + 0x28], eax
cmp word [rcx + 4], r8w
lea r8, [rcx + 0x18]
jne 0x180002d23
mov dword [rbx + 0x10], r9d
lea rdx, [rcx + 0x78]
mov qword [rbx + 0x30], rcx
mov qword [rbx + 0x38], rcx
mov qword [rbx + 0x40], r9
jmp 0x180002d3d
mov dword [rbx + 0x10], 1
lea rdx, [rcx + 0x88]
mov qword [rbx + 0x30], r9
mov qword [rbx + 0x38], r9
mov qword [rbx + 0x40], rcx
mov eax, dword [rcx + 0x28]
mov dword [rbx + 0x48], eax
mov eax, dword [rcx + 0x3c]
mov dword [rbx + 0x4c], eax
mov eax, dword [rcx + 0x38]
mov dword [rbx + 0x50], eax
mov eax, dword [rcx + 0x54]
mov dword [rbx + 0x54], eax
mov qword [rbx + 0x58], rdx
movzx eax, word [rcx + 6]
mov dword [rbx + 0x60], eax
movzx eax, word [rcx + 0x14]
add r8, rax
mov eax, dword [rbx + 0x60]
mov qword [rbx + 0x68], r8
lea rcx, [rax + rax*4]
lea rax, [r8 + rcx*8]
mov qword [rbx + 0x70], rax
mov eax, dword [rdx]
test eax, eax
je 0x180002d8d
cmp dword [rdx + 4], 0
je 0x180002d8d
add rax, rdi
mov qword [rbx + 0x78], rax
mov eax, dword [rdx + 8]
test eax, eax
je 0x180002da4
cmp dword [rdx + 0xc], 0
je 0x180002da4
add rax, rdi
mov qword [rbx + 0x80], rax
mov eax, dword [rdx + 0x10]
test eax, eax
je 0x180002dbb
cmp dword [rdx + 0x14], 0
je 0x180002dbb
add rax, rdi
mov qword [rbx + 0x88], rax
add rdx, 0x18
cmp dword [rdx], 0
je 0x180002dd1
cmp dword [rdx + 4], 0
je 0x180002dd1
mov qword [rbx + 0x90], rdx
add rdx, 8
cmp dword [rdx], 0
je 0x180002de7
cmp dword [rdx + 4], 0
je 0x180002de7
mov qword [rbx + 0x98], rdx
mov eax, dword [rdx + 8]
test eax, eax
je 0x180002dfe
cmp dword [rdx + 0xc], 0
je 0x180002dfe
add rax, rdi
mov qword [rbx + 0xa0], rax
mov eax, dword [rdx + 0x10]
test eax, eax
je 0x180002e15
cmp dword [rdx + 0x14], 0
je 0x180002e15
add rax, rdi
mov qword [rbx + 0xa8], rax
add rdx, 0x18
cmp dword [rdx], 0
je 0x180002e2b
cmp dword [rdx + 4], 0
je 0x180002e2b
mov qword [rbx + 0xb0], rdx
add rdx, 8
cmp dword [rdx], 0
je 0x180002e41
cmp dword [rdx + 4], 0
je 0x180002e41
mov qword [rbx + 0xb8], rdx
mov eax, dword [rdx + 8]
test eax, eax
je 0x180002e72
cmp dword [rdx + 0xc], 0
je 0x180002e72
cmp dword [rbx + 0x10], 0
je 0x180002e60
add rax, rdi
mov qword [rbx + 0xd0], rax
jmp 0x180002e72
lea rcx, [rdi + rax]
mov qword [rbx + 0xc0], rcx
mov qword [rbx + 0xc8], rcx
mov eax, dword [rdx + 0x10]
test eax, eax
je 0x180002ea3
cmp dword [rdx + 0x14], 0
je 0x180002ea3
cmp dword [rbx + 0x10], 0
je 0x180002e91
add rax, rdi
mov qword [rbx + 0xe8], rax
jmp 0x180002ea3
lea rcx, [rdi + rax]
mov qword [rbx + 0xd8], rcx
mov qword [rbx + 0xe0], rcx
mov eax, dword [rdx + 0x18]
test eax, eax
je 0x180002eba
cmp dword [rdx + 0x1c], 0
je 0x180002eba
add rax, rdi
mov qword [rbx + 0xf0], rax
mov eax, dword [rdx + 0x20]
test eax, eax
je 0x180002ee8
mov ecx, dword [rdx + 0x24]
test ecx, ecx
je 0x180002ee8
add rax, rdi
mov qword [rbx + 0x108], rcx
mov qword [rbx + 0xf8], rax
add rax, rcx
mov qword [rbx + 0x100], rax
jmp 0x180002fb0
cmp qword [rbx + 0x80], 0
je 0x180002fb0
test sil, 1
jne 0x180002fb0
mov qword [rbx + 0xf8], r9
mov qword [rbx + 0x100], r9
mov qword [rbx + 0x108], r9
mov r8, qword [rbx + 0x80]
cmp dword [r8], 0
je 0x180002fb0
mov eax, dword [r8 + 0x10]
test eax, eax
je 0x180002fa2
cmp qword [rdi + rax], 0
lea rcx, [rdi + rax]
mov rax, rcx
je 0x180002f4a
nop dword [rax]
add rax, 8
cmp qword [rax], 0
jne 0x180002f40
cmp qword [rbx + 0xf8], rcx
ja 0x180002f5d
cmp qword [rbx + 0x108], 0
jne 0x180002f64
mov qword [rbx + 0xf8], rcx
sub rax, rcx
add rax, 8
sar rax, 3
lea r9, [rcx + rax*8]
cmp qword [rbx + 0x100], r9
jb 0x180002f86
cmp qword [rbx + 0x108], 0
jne 0x180002f8d
mov qword [rbx + 0x100], r9
mov rax, qword [rbx + 0x100]
sub rax, qword [rbx + 0xf8]
mov qword [rbx + 0x108], rax
add r8, 0x14
cmp dword [r8], 0
jne 0x180002f26
mov eax, dword [rdx + 0x28]
test eax, eax
je 0x180002fc7
cmp dword [rdx + 0x2c], 0
je 0x180002fc7
add rax, rdi
mov qword [rbx + 0x110], rax
cmp dword [rdx + 0x30], 0
je 0x180002fe1
cmp dword [rdx + 0x34], 0
je 0x180002fe1
lea rcx, [rdx + 0xa0]
mov qword [rbx + 0x118], rcx
mov rcx, rbx
call fcn.180003010
mov eax, 1
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov rbx, qword [rsp + 0x30]
xor eax, eax
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret