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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r13
push r14
sub rsp, 0x20
xor r10d, r10d
mov r12, rdx
mov r11, rcx
cmp rcx, r10
je 0x2d8a0
cmp rdx, r10
je 0x2d8a0
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x2d8a0
movsxd rbx, dword [rcx + 0x3c]
add rbx, rcx
je 0x2d8a0
cmp dword [rbx], 0x4550
jne 0x2d8a0
mov eax, 0x20b
cmp word [rbx + 0x18], ax
jne 0x2d76f
cmp r8b, r10b
je 0x2d6be
mov eax, dword [rbx + 0x88]
cmp eax, r10d
je 0x2d8a0
add rax, rcx
mov edx, r10d
mov edi, dword [rax + 0x1c]
mov esi, dword [rax + 0x24]
mov ebp, dword [rax + 0x18]
add rdi, rcx
mov ecx, dword [rax + 0x20]
add rsi, r11
add rcx, r11
cmp ebp, r10d
jbe 0x2d8a0
mov eax, dword [rcx]
mov rbx, r12
add rax, r11
sub rbx, rax
movzx r8d, byte [rax]
movzx r9d, byte [rax + rbx]
sub r8d, r9d
jne 0x2d69b
inc rax
test r9d, r9d
jne 0x2d685
cmp r8d, r10d
je 0x2d6af
inc edx
add rcx, 4
cmp edx, ebp
jb 0x2d67a
jmp 0x2d8a0
mov eax, edx
movzx ecx, word [rsi + rax*2]
mov r10d, dword [rdi + rcx*4]
jmp 0x2d89d
mov edx, dword [rbx + 0x88]
cmp edx, r10d
je 0x2d8a0
mov rcx, rbx
call fcn.0002e0f4
mov rcx, rbx
mov r9d, eax
add r9, r11
mov edx, dword [r9 + 0x1c]
call fcn.0002e0f4
mov edx, dword [r9 + 0x20]
mov rcx, rbx
mov r13d, eax
add r13, r11
call fcn.0002e0f4
mov edx, dword [r9 + 0x24]
mov esi, eax
mov rcx, rbx
add rsi, r11
call fcn.0002e0f4
mov ebp, dword [r9 + 0x18]
mov r14d, eax
mov edi, r10d
add r14, r11
cmp ebp, r10d
jbe 0x2d8a0
mov edx, dword [rsi]
mov rcx, rbx
call fcn.0002e0f4
mov rdx, r12
mov r9d, eax
add r9, r11
sub rdx, r9
movzx eax, byte [r9]
movzx ecx, byte [r9 + rdx]
sub eax, ecx
jne 0x2d74a
inc r9
test ecx, ecx
jne 0x2d736
cmp eax, r10d
je 0x2d75e
inc edi
add rsi, 4
cmp edi, ebp
jb 0x2d720
jmp 0x2d8a0
mov eax, edi
movzx edx, word [r14 + rax*2]
mov edx, dword [r13 + rdx*4]
jmp 0x2d892
mov eax, 0x10b
cmp word [rbx + 0x18], ax
jne 0x2d8a0
cmp r8b, r10b
je 0x2d7ed
cmp dword [rbx + 0x78], r10d
je 0x2d8a0
mov eax, dword [rbx + 0x78]
mov edx, r10d
add rax, rcx
mov edi, dword [rax + 0x1c]
mov esi, dword [rax + 0x24]
mov ebp, dword [rax + 0x18]
add rdi, rcx
mov ecx, dword [rax + 0x20]
add rsi, r11
add rcx, r11
cmp ebp, r10d
jbe 0x2d8a0
mov eax, dword [rcx]
mov rbx, r12
add rax, r11
sub rbx, rax
movzx r8d, byte [rax]
movzx r9d, byte [rax + rbx]
sub r8d, r9d
jne 0x2d7d5
inc rax
test r9d, r9d
jne 0x2d7bf
cmp r8d, r10d
je 0x2d6af
inc edx
add rcx, 4
cmp edx, ebp
jb 0x2d7b4
jmp 0x2d8a0
mov edx, dword [rbx + 0x88]
cmp edx, r10d
je 0x2d8a0
mov rcx, rbx
call fcn.0002e0f4
mov rcx, rbx
mov r9d, eax
add r9, r11
mov edx, dword [r9 + 0x1c]
call fcn.0002e0f4
mov edx, dword [r9 + 0x20]
mov rcx, rbx
mov r13d, eax
add r13, r11
call fcn.0002e0f4
mov edx, dword [r9 + 0x24]
mov esi, eax
mov rcx, rbx
add rsi, r11
call fcn.0002e0f4
mov ebp, dword [r9 + 0x18]
mov r14d, eax
mov edi, r10d
add r14, r11
cmp ebp, r10d
jbe 0x2d8a0
mov edx, dword [rsi]
mov rcx, rbx
call fcn.0002e0f4
mov rdx, r12
mov r9d, eax
add r9, r11
sub rdx, r9
movzx eax, byte [r9]
movzx ecx, byte [r9 + rdx]
sub eax, ecx
jne 0x2d875
inc r9
test ecx, ecx
jne 0x2d861
cmp eax, r10d
je 0x2d886
inc edi
add rsi, 4
cmp edi, ebp
jb 0x2d84b
jmp 0x2d8a0
mov eax, edi
movzx ecx, word [r14 + rax*2]
mov edx, dword [r13 + rcx*4]
mov rcx, rbx
call fcn.0002e0f4
mov r10d, eax
add r10, r11
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
mov rax, r10
add rsp, 0x20
pop r14
pop r13
pop r12
ret