Function at 0x41a510
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 0x41a54b
cmp word [r15], 0x5a4d
je 0x41a564
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 0x41a54b
mov edx, 0x75988f44
mov qword [rsp + 0x110], r8
lea rcx, [0x004298a0]
call fcn.00417690
mov edx, 0x77a7df4c
mov rcx, rax
call fcn.00419b30
test byte [rdi + 0x17], 0x20
je 0x41a54b
lea rcx, [0x00429880]
mov edx, 0x4298b3c4
call fcn.00417690
mov edx, 0x704cfccc
mov rcx, rax
call fcn.00419b30
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 0x41a54b
movsxd rax, dword [rsp + 0x30]
test eax, eax
je 0x41a54b
lea rcx, [0x004297a0]
mov edx, 0x1a62fd8c
lea rdi, [rax + r15]
call fcn.00417690
mov edx, 0x1531f524
mov rcx, rax
call fcn.00419b30
movsxd rbx, dword [rdi + 0x1c]
lea rax, [0x004278c0]
mov r8, qword [rsp + 0x110]
add rbx, r15
cmp rsi, rax
je 0x41a860
test rsi, rsi
je 0x41a8a6
cmp byte [rsi], 0
je 0x41a860
mov r14d, dword [rdi + 0x18]
test r14d, r14d
js 0x41a890
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 0x41a708
movsxd rbx, dword [rsp + 0x24]
add r14d, 1
test rdi, rdi
jne 0x41a770
add r13d, 1
add r12d, 1
cmp r12d, r14d
jg 0x41a890
mov dword [rsp + 0x24], ebx
lea rcx, [0x00429760]
mov edx, 0x1a4e7ac
movsxd rdi, r13d
call fcn.00419b30
mov edx, 0x4298b3c4
add rdi, r15
lea rcx, [0x00429740]
call fcn.00419b30
lea rdx, [0x004278c0]
test rax, rax
je 0x41a74f
cmp qword [rax], 0
lea rdx, [rax + 0x10]
lea rax, [0x004278c0]
cmove rdx, rax
mov rcx, rdi
call fcn.0041a400
test eax, eax
jne 0x41a6e1
add qword [rsp + 0x28], 4
mov rax, qword [rsp + 0x28]
movsxd rbx, dword [rax]
jmp 0x41a6ea
mov rcx, rdi
call sub.msvcrt.dll_strlen
cmp rdi, rsi
lea r13d, [r13 + rax + 1]
je 0x41a795
mov rdx, rdi
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x41a6f7
mov ecx, ebp
call fcn.0040bcf0
mov ecx, dword [0x0057e4dc]
test al, al
jne 0x41a952
call fcn.0040bcf0
lea rcx, [0x004296c0]
mov edx, 0x15d52364
call fcn.00419b30
mov edx, 0x4286b66c
lea rcx, [0x00429680]
call fcn.00419b30
mov edx, 0x26112c04
lea rcx, [0x00429660]
call fcn.00419b30
mov edx, 0x71084a4c
lea rcx, [0x00429620]
call fcn.00419b30
mov edx, 0x3c0cf5a4
lea rcx, [0x004295e0]
call fcn.00419b30
mov edx, 0x2c66b12c
lea rcx, [0x004295c0]
call fcn.00419b30
mov edx, 0x11a8e844
lea rcx, [0x00429580]
call fcn.00419b30
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, 0x257fabe4
lea rcx, [0x00429460]
call fcn.00419b30
jmp 0x41a54d
mov edx, 0x10e5a30c
mov qword [rsp + 0x110], r8
lea rcx, [0x00429540]
call fcn.00419b30
mov r8, qword [rsp + 0x110]
movsxd rbx, dword [rbx + r8*4 - 4]
add rbx, r15
jmp 0x41a842
lea rcx, [0x00429460]
mov edx, 0x257fabe4
call fcn.00419b30
jmp 0x41a54b
mov r14d, dword [rdi + 0x18]
test r14d, r14d
js 0x41a890
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 0x41a8fa
add rsi, 4
movsxd rbx, dword [rsi]
test rdi, rdi
je 0x41a795
mov rcx, rdi
add r13d, 1
call sub.msvcrt.dll_strlen
cmp r14d, r13d
lea r12d, [r12 + rax + 1]
jl 0x41a890
mov dword [rsp + 0x24], ebx
lea rcx, [0x00429760]
mov edx, 0x1a4e7ac
movsxd rdi, r12d
call fcn.00419b30
mov edx, 0x4298b3c4
add rdi, r15
lea rcx, [0x00429740]
call fcn.00419b30
mov rcx, qword [rsp + 0x28]
test rax, rax
mov rdx, rcx
je 0x41a93b
cmp qword [rax], 0
lea rdx, [rax + 0x10]
cmove rdx, rcx
mov rcx, rdi
call fcn.0041a400
test eax, eax
je 0x41a8d0
add r14d, 1
movsxd rbx, dword [rsp + 0x24]
jmp 0x41a8d7
call fcn.0040bcf0
test al, al
je 0x41a7af
lea rcx, [0x004296e0]
mov edx, 0x1a62fd8c
call fcn.00419b30
jmp 0x41a7af