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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
xor eax, eax
mov r15, rcx
mov ecx, 0x10
mov rsi, rdx
lea rbx, [rsp + 0x30]
test r15, r15
mov ebp, r9d
mov rdi, rbx
rep stosq qword [rdi], rax
je 0x41a67b
cmp word [r15], 0x5a4d
je 0x41a694
xor ebx, ebx
mov rax, rbx
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
movsxd rdi, dword [r15 + 0x3c]
add rdi, r15
cmp dword [rdi], 0x4550
jne 0x41a67b
mov edx, 0x73276c6c
mov qword [rsp + 0x110], r8
lea rcx, [0x00429840]
call fcn.00417750
mov edx, 0x65d315c4
mov rcx, rax
call fcn.00419c60
test byte [rdi + 0x17], 0x20
je 0x41a67b
lea rcx, [0x00429820]
mov edx, 0x4a3d0dec
call fcn.00417750
mov edx, 0x688d8a44
mov rcx, rax
call fcn.00419c60
movsxd rdx, dword [r15 + 0x3c]
add rdx, r15
lea rax, [rdx + 0x88]
mov rdx, qword [rdx + 0x88]
mov rdi, rdx
mov qword [rbx], rdx
mov rdx, qword [rax + 8]
shr rdi, 0x20
test edi, edi
mov qword [rbx + 8], rdx
mov rdx, qword [rax + 0x10]
mov qword [rbx + 0x10], rdx
mov rdx, qword [rax + 0x18]
mov qword [rbx + 0x18], rdx
mov rdx, qword [rax + 0x20]
mov qword [rbx + 0x20], rdx
mov rdx, qword [rax + 0x28]
mov qword [rbx + 0x28], rdx
mov rdx, qword [rax + 0x30]
mov qword [rbx + 0x30], rdx
mov rdx, qword [rax + 0x38]
mov qword [rbx + 0x38], rdx
mov rdx, qword [rax + 0x40]
mov qword [rbx + 0x40], rdx
mov rdx, qword [rax + 0x48]
mov qword [rbx + 0x48], rdx
mov rdx, qword [rax + 0x50]
mov qword [rbx + 0x50], rdx
mov rdx, qword [rax + 0x58]
mov qword [rbx + 0x58], rdx
mov rdx, qword [rax + 0x60]
mov qword [rbx + 0x60], rdx
mov rdx, qword [rax + 0x68]
mov qword [rbx + 0x68], rdx
mov rdx, qword [rax + 0x70]
mov rax, qword [rax + 0x78]
mov qword [rbx + 0x70], rdx
mov qword [rbx + 0x78], rax
je 0x41a67b
movsxd rax, dword [rsp + 0x30]
test eax, eax
je 0x41a67b
lea rcx, [0x004297c0]
mov edx, 0x4a1cea84
lea rdi, [rax + r15]
call fcn.00417750
mov edx, 0x5ad0a90c
mov rcx, rax
call fcn.00419c60
movsxd rbx, dword [rdi + 0x1c]
lea rax, [0x00427980]
mov r8, qword [rsp + 0x110]
add rbx, r15
cmp rsi, rax
je 0x41a990
test rsi, rsi
je 0x41a9d6
cmp byte [rsi], 0
je 0x41a990
mov r14d, dword [rdi + 0x18]
test r14d, r14d
js 0x41a9c0
mov eax, dword [rbx]
mov qword [rsp + 0x28], rbx
xor r12d, r12d
mov dword [rsp + 0x24], eax
movsxd rax, dword [rdi + 0x20]
mov r13d, dword [rax + r15]
jmp 0x41a838
movsxd rbx, dword [rsp + 0x24]
add r14d, 1
test rdi, rdi
jne 0x41a8a0
add r13d, 1
add r12d, 1
cmp r12d, r14d
jg 0x41a9c0
mov dword [rsp + 0x24], ebx
lea rcx, [0x00429780]
mov edx, 0x27a1de4
movsxd rdi, r13d
call fcn.00419c60
mov edx, 0x4a3d0dec
add rdi, r15
lea rcx, [0x00429760]
call fcn.00419c60
lea rdx, [0x00427980]
test rax, rax
je 0x41a87f
cmp qword [rax], 0
lea rdx, [rax + 0x10]
lea rax, [0x00427980]
cmove rdx, rax
mov rcx, rdi
call fcn.0041a530
test eax, eax
jne 0x41a811
add qword [rsp + 0x28], 4
mov rax, qword [rsp + 0x28]
movsxd rbx, dword [rax]
jmp 0x41a81a
mov rcx, rdi
call sub.msvcrt.dll_strlen
cmp rdi, rsi
lea r13d, [r13 + rax + 1]
je 0x41a8c5
mov rdx, rdi
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x41a827
mov ecx, ebp
call fcn.0040bcf0
mov ecx, dword [0x0044a4fc]
test al, al
jne 0x41aa82
call fcn.0040bcf0
lea rcx, [0x004296e0]
mov edx, 0x2f852dcc
call fcn.00419c60
mov edx, 0x1aa71824
lea rcx, [0x004296a0]
call fcn.00419c60
mov edx, 0x190b00ac
lea rcx, [0x00429680]
call fcn.00419c60
mov edx, 0x18520ec4
lea rcx, [0x00429640]
call fcn.00419c60
mov edx, 0xd2d3e8c
lea rcx, [0x00429600]
call fcn.00419c60
mov edx, 0x4a397664
lea rcx, [0x004295e0]
call fcn.00419c60
mov edx, 0x3c755f6c
lea rcx, [0x004295a0]
call fcn.00419c60
mov ecx, ebp
call fcn.0040bcf0
movsxd rdx, dword [rsp + 0x24]
lea r10, [rbx + r15]
add rdx, r15
test al, al
mov rbx, rdx
cmovne rbx, r10
mov edx, 0x2759b4c
lea rcx, [0x00429500]
call fcn.00419c60
jmp 0x41a67d
mov edx, 0x18c53704
mov qword [rsp + 0x110], r8
lea rcx, [0x00429560]
call fcn.00419c60
mov r8, qword [rsp + 0x110]
movsxd rbx, dword [rbx + r8*4 - 4]
add rbx, r15
jmp 0x41a972
lea rcx, [0x00429500]
mov edx, 0x2759b4c
call fcn.00419c60
jmp 0x41a67b
mov r14d, dword [rdi + 0x18]
test r14d, r14d
js 0x41a9c0
mov ecx, dword [rbx]
mov rsi, rbx
xor r13d, r13d
mov qword [rsp + 0x28], rax
movsxd rdx, dword [rdi + 0x20]
mov dword [rsp + 0x24], ecx
mov r12d, dword [rdx + r15]
jmp 0x41aa2a
add rsi, 4
movsxd rbx, dword [rsi]
test rdi, rdi
je 0x41a8c5
mov rcx, rdi
add r13d, 1
call sub.msvcrt.dll_strlen
cmp r14d, r13d
lea r12d, [r12 + rax + 1]
jl 0x41a9c0
mov dword [rsp + 0x24], ebx
lea rcx, [0x00429780]
mov edx, 0x27a1de4
movsxd rdi, r12d
call fcn.00419c60
mov edx, 0x4a3d0dec
add rdi, r15
lea rcx, [0x00429760]
call fcn.00419c60
mov rcx, qword [rsp + 0x28]
test rax, rax
mov rdx, rcx
je 0x41aa6b
cmp qword [rax], 0
lea rdx, [rax + 0x10]
cmove rdx, rcx
mov rcx, rdi
call fcn.0041a530
test eax, eax
je 0x41aa00
add r14d, 1
movsxd rbx, dword [rsp + 0x24]
jmp 0x41aa07
call fcn.0040bcf0
test al, al
je 0x41a8df
lea rcx, [0x00429700]
mov edx, 0x4a1cea84
call fcn.00419c60
jmp 0x41a8df