Function at 0x7ff2adaa7a8
Capabilities:
Enumerate pe sections
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov rsi, qword [rsp + 0x88]
mov ebx, edx
xor edx, edx
mov ebp, r8d
mov rdi, rcx
lea r8d, [rdx + 0x50]
mov rcx, rsi
call sub.ntdll.dll_memset
xor r15d, r15d
mov qword [rsi], rdi
mov dword [rsi + 0x20], ebx
mov dword [rsi + 0x2c], ebp
mov qword [rsi + 0x40], r15
mov qword [rsi + 0x48], r15
cmp rdi, r15
jne 0x7ff2adaa805
mov eax, 0xc000000d
jmp 0x7ff2adaaa5f
cmp ebp, 0x40
jb 0x7ff2adaaa5a
lea rdx, [rbp + rdi]
mov r12, rbp
cmp rdx, rdi
jb 0x7ff2adaaa5a
mov eax, 0x5a4d
mov r8d, 0x4550
mov r9d, 0x108
cmp word [rdi], ax
je 0x7ff2adaa845
cmp word [rdi], r8w
jne 0x7ff2adaaa5a
mov qword [rsi + 8], rdi
jmp 0x7ff2adaa88a
movsxd rax, dword [rdi + 0x3c]
cmp eax, r15d
je 0x7ff2adaaa5a
cmp eax, ebp
ja 0x7ff2adaaa5a
sub ebp, eax
cmp ebp, r9d
jbe 0x7ff2adaaa5a
lea rcx, [rdi + rax]
mov qword [rsi + 8], rcx
lea rax, [rcx + 0x108]
cmp rax, rdx
ja 0x7ff2adaaa5a
lea rax, [rdi + 0x40]
cmp rcx, rax
jb 0x7ff2adaaa5a
mov rbx, qword [rsi + 8]
mov rax, rbx
sub rax, rdi
add rax, r9
cmp rax, r12
ja 0x7ff2adaa7fb
cmp dword [rbx], r8d
jne 0x7ff2adaaa5a
cmp word [rbx + 0x14], r15w
je 0x7ff2adaaa5a
test byte [rbx + 0x14], 7
jne 0x7ff2adaaa5a
cmp byte [rbx + 0x1a], 3
jae 0x7ff2adaa8ce
cmp byte [rbx + 0x1b], 5
jb 0x7ff2adaaa5a
mov ecx, 0x10b
cmp word [rbx + 0x18], cx
je 0x7ff2adaa8ee
mov eax, 0x20b
cmp word [rbx + 0x18], ax
jne 0x7ff2adaaa5a
cmp word [rbx + 0x18], cx
jne 0x7ff2adaa922
mov r13, qword [rsp + 0x98]
mov r14, qword [rsp + 0x90]
mov r8d, ebx
sub r8d, edi
mov r9d, 4
mov rdx, r13
add r8d, 0x58
mov rcx, r14
call fcn.7ff2adaa728
lea rbp, [rbx + 0x98]
jmp 0x7ff2adaa954
mov r13, qword [rsp + 0x98]
mov r14, qword [rsp + 0x90]
mov r8d, ebx
sub r8d, edi
mov r9d, 4
mov rdx, r13
add r8d, 0x58
mov rcx, r14
call fcn.7ff2adaa728
lea rbp, [rbx + 0xa8]
mov eax, dword [rbx + 0x54]
mov dword [rsi + 0x24], eax
mov eax, dword [rbx + 0x38]
mov dword [rsi + 0x10], eax
mov ecx, dword [rbx + 0x3c]
cmp dword [rsi + 0x24], r15d
je 0x7ff2adaaa5a
mov ebx, dword [rsi + 0x20]
cmp dword [rsi + 0x24], ebx
jae 0x7ff2adaaa5a
cmp ecx, r15d
je 0x7ff2adaaa5a
lea eax, [rcx - 1]
test ecx, eax
jne 0x7ff2adaaa5a
mov r8d, dword [rsi + 0x10]
lea eax, [r8 - 1]
test r8d, eax
jne 0x7ff2adaaa5a
cmp r8d, ecx
jb 0x7ff2adaaa5a
test ecx, 0x1ff
je 0x7ff2adaa9b8
cmp ecx, r8d
jne 0x7ff2adaaa5a
mov rax, qword [rsi + 8]
mov rcx, rax
movzx edx, word [rax + 6]
mov dword [rsi + 0x14], edx
movzx eax, word [rax + 0x14]
mov r11, rdx
lea r10, [rax + rcx + 0x18]
lea rax, [rdx + rdx*4]
lea rdx, [r10 + rax*8]
mov qword [rsi + 0x18], r10
cmp rdx, r10
jbe 0x7ff2adaaa5a
mov rax, qword [rsi]
lea rcx, [r12 + rax]
cmp rdx, rcx
ja 0x7ff2adaaa5a
mov r9d, r15d
cmp r11d, r15d
jbe 0x7ff2adaaa29
lea rcx, [r10 + 0x10]
mov eax, dword [rcx + 4]
mov edx, dword [rcx]
cmp eax, r15d
je 0x7ff2adaaa1c
lea r10d, [rdx + rax]
cmp r10d, eax
jb 0x7ff2adaaa5a
cmp r10d, ebx
ja 0x7ff2adaaa5a
lea eax, [r8 + rdx - 1]
cmp eax, edx
jb 0x7ff2adaaa5a
inc r9d
add rcx, 0x28
cmp r9d, dword [rsi + 0x14]
jb 0x7ff2adaa9fb
mov edi, dword [rbp]
mov ebx, dword [rbp + 4]
sub ebp, dword [rsi]
mov r8d, ebp
mov r9d, 8
mov rdx, r13
mov rcx, r14
call fcn.7ff2adaa728
mov r9d, ebx
mov r8d, edi
mov rdx, r13
mov rcx, r14
call fcn.7ff2adaa728
xor eax, eax
jmp 0x7ff2adaaa5f
mov eax, 0xc000007b
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret