Function at 0x1400e1ae0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
push rbp
push rbx
push r13
lea rbp, [rax - 0x58]
sub rsp, 0x140
mov qword [rax + 8], rsi
xor r10d, r10d
mov qword [rax - 0x20], rdi
xor esi, esi
mov rdi, rdx
mov qword [rax - 0x30], r14
xor edx, edx
mov qword [rax - 0x38], r15
mov qword [rsp + 0x20], rsi
mov rbx, r9
mov qword [rsp + 0x28], rdx
mov r15, r8
mov r14, rcx
mov r13b, 1
test rdi, rdi
je 0x1400e1b99
cmp word [rdi], dx
je 0x1400e1b99
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp word [rdi + rbx*2], dx
jne 0x1400e1b40
inc ebx
test ebx, ebx
jle 0x1400e1b69
mov edx, ebx
lea rcx, [rsp + 0x20]
call fcn.1400195a0
mov r10d, dword [rsp + 0x2c]
mov edx, dword [rsp + 0x28]
mov rsi, qword [rsp + 0x20]
lea eax, [rdx + rbx]
mov dword [rsp + 0x28], eax
cmp eax, r10d
jle 0x1400e1b84
lea rcx, [rsp + 0x20]
call fcn.140019200
mov rsi, qword [rsp + 0x20]
movsxd r8, ebx
mov rdx, rdi
add r8, r8
mov rcx, rsi
call fcn.140032f60
mov rbx, qword [rbp + 0x78]
lea r8, [rsp + 0x20]
mov rcx, r14
lea rdx, [rbp - 0x10]
call fcn.1400ce020
test rsi, rsi
je 0x1400e1bb7
mov rcx, rsi
call fcn.1400443e0
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x1400e22c3
cmp dword [rcx + 8], 5
jne 0x1400e22c3
mov qword [rsp + 0x130], r12
call fcn.1400ccdc0
xor edx, edx
mov qword [rbp - 0x18], rax
mov r12, rax
mov dword [rbp + 0x68], edx
mov esi, edx
cmp dword [rax + 8], edx
jle 0x1400e22bb
mov r14d, edx
mov qword [rsp + 0x30], rdx
nop word [rax + rax]
mov rax, qword [r12]
mov rcx, r14
add rcx, rcx
mov rcx, qword [rax + rcx*8]
test rcx, rcx
je 0x1400e2217
cmp dword [rcx + 8], 6
jne 0x1400e2217
mov dword [rsp + 0x48], edx
mov dword [rsp + 0x4c], 6
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], 0
mov qword [rbp - 0x80], rdx
mov qword [rbp - 0x78], 0
mov qword [rbp - 0x70], rdx
mov qword [rbp - 0x68], 0
mov qword [rbp - 0x60], rdx
mov qword [rbp - 0x58], 0
mov qword [rbp - 0x50], rdx
mov qword [rbp - 0x48], 0
mov qword [rbp - 0x40], rdx
mov qword [rbp - 0x38], 0
mov qword [rbp - 0x30], rdx
mov qword [rbp - 0x28], 0
mov qword [rbp - 0x20], 0
mov rax, qword [rbp - 0x20]
mov qword [rsp + 0x40], rax
mov rax, qword [rcx]
call qword [rax]
mov r8, rbx
lea rcx, [rsp + 0x40]
mov rdx, qword [rax]
call fcn.1400ddf50
test al, al
je 0x1400e20cb
movsxd rbx, dword [r15 + 8]
lea eax, [rbx + 1]
mov dword [r15 + 8], eax
cmp eax, dword [r15 + 0xc]
jle 0x1400e1ce8
mov edx, ebx
mov rcx, r15
call fcn.1400e4b00
mov rax, qword [rsp + 0x40]
lea r12, [rbx + rbx*4]
shl r12, 5
add r12, qword [r15]
xor r15d, r15d
mov qword [r12], rax
mov eax, dword [rsp + 0x48]
mov dword [r12 + 8], eax
mov eax, dword [rsp + 0x4c]
mov dword [r12 + 0xc], eax
mov qword [r12 + 0x10], r15
mov r14d, dword [rsp + 0x58]
mov rdi, qword [rsp + 0x50]
mov dword [r12 + 0x18], r14d
test r14d, r14d
jne 0x1400e1d31
mov dword [r12 + 0x1c], r15d
jmp 0x1400e1d99
xor r8d, r8d
lea rcx, [r12 + 0x10]
mov edx, r14d
call fcn.140018da0
mov rbx, qword [r12 + 0x10]
nop word [rax + rax]
mov qword [rbx], r15
movsxd rsi, dword [rdi + 8]
mov r15, qword [rdi]
mov dword [rbx + 8], esi
test esi, esi
jne 0x1400e1d6a
xor r15d, r15d
mov dword [rbx + 0xc], r15d
jmp 0x1400e1d8b
xor r8d, r8d
mov edx, esi
mov rcx, rbx
call fcn.140018ed0
mov rcx, qword [rbx]
mov r8, rsi
add r8, r8
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
xor r15d, r15d
add rbx, 0x10
add rdi, 0x10
sub r14d, 1
jne 0x1400e1d50
mov qword [r12 + 0x20], r15
mov r14d, dword [rsp + 0x68]
mov rdi, qword [rsp + 0x60]
mov dword [r12 + 0x28], r14d
test r14d, r14d
jne 0x1400e1db9
mov dword [r12 + 0x2c], r15d
jmp 0x1400e1e19
xor r8d, r8d
lea rcx, [r12 + 0x20]
mov edx, r14d
call fcn.140018da0
mov rbx, qword [r12 + 0x20]
nop
mov qword [rbx], r15
movsxd rsi, dword [rdi + 8]
mov r15, qword [rdi]
mov dword [rbx + 8], esi
test esi, esi
jne 0x1400e1dea
xor r15d, r15d
mov dword [rbx + 0xc], r15d
jmp 0x1400e1e0b
xor r8d, r8d
mov edx, esi
mov rcx, rbx
call fcn.140018ed0
mov rcx, qword [rbx]
mov r8, rsi
add r8, r8
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
xor r15d, r15d
add rbx, 0x10
add rdi, 0x10
sub r14d, 1
jne 0x1400e1dd0
mov qword [r12 + 0x30], r15
movsxd rdi, dword [rsp + 0x78]
mov rsi, qword [rsp + 0x70]
mov dword [r12 + 0x38], edi
test edi, edi
jne 0x1400e1e38
mov dword [r12 + 0x3c], r15d
jmp 0x1400e1e57
xor r8d, r8d
lea rcx, [r12 + 0x30]
mov edx, edi
call fcn.140070540
mov rcx, qword [r12 + 0x30]
mov r8, rdi
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov qword [r12 + 0x40], r15
movsxd rdi, dword [rbp - 0x78]
mov rsi, qword [rbp - 0x80]
mov dword [r12 + 0x48], edi
test edi, edi
jne 0x1400e1e74
mov dword [r12 + 0x4c], r15d
jmp 0x1400e1e93
xor r8d, r8d
lea rcx, [r12 + 0x40]
mov edx, edi
call fcn.140070540
mov rcx, qword [r12 + 0x40]
mov r8, rdi
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov qword [r12 + 0x50], r15
movsxd rdi, dword [rbp - 0x68]
mov rsi, qword [rbp - 0x70]
mov dword [r12 + 0x58], edi
test edi, edi
jne 0x1400e1eb0
mov dword [r12 + 0x5c], r15d
jmp 0x1400e1ecf
xor r8d, r8d
lea rcx, [r12 + 0x50]
mov edx, edi
call fcn.140070540
mov rcx, qword [r12 + 0x50]
mov r8, rdi
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov qword [r12 + 0x60], r15
movsxd rdi, dword [rbp - 0x58]
mov rsi, qword [rbp - 0x60]
mov dword [r12 + 0x68], edi
test edi, edi
jne 0x1400e1eec
mov dword [r12 + 0x6c], r15d
jmp 0x1400e1f0b
xor r8d, r8d
lea rcx, [r12 + 0x60]
mov edx, edi
call fcn.140070540
mov rcx, qword [r12 + 0x60]
mov r8, rdi
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov qword [r12 + 0x70], r15
mov r14d, dword [rbp - 0x48]
mov rdi, qword [rbp - 0x50]
mov dword [r12 + 0x78], r14d
test r14d, r14d
jne 0x1400e1f29
mov dword [r12 + 0x7c], r15d
jmp 0x1400e1f89
xor r8d, r8d
lea rcx, [r12 + 0x70]
mov edx, r14d
call fcn.140018da0
mov rbx, qword [r12 + 0x70]
nop
mov qword [rbx], r15
movsxd rsi, dword [rdi + 8]
mov r15, qword [rdi]
mov dword [rbx + 8], esi
test esi, esi
jne 0x1400e1f5a
xor r15d, r15d
mov dword [rbx + 0xc], r15d
jmp 0x1400e1f7b
xor r8d, r8d
mov edx, esi
mov rcx, rbx
call fcn.140018ed0
mov rcx, qword [rbx]
mov r8, rsi
add r8, r8
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
xor r15d, r15d
add rbx, 0x10
add rdi, 0x10
sub r14d, 1
jne 0x1400e1f40
mov qword [r12 + 0x80], r15
mov r14d, dword [rbp - 0x38]
mov rdi, qword [rbp - 0x40]
mov dword [r12 + 0x88], r14d
test r14d, r14d
jne 0x1400e1fb0
mov dword [r12 + 0x8c], r15d
jmp 0x1400e2019
xor r8d, r8d
lea rcx, [r12 + 0x80]
mov edx, r14d
call fcn.140018da0
mov rbx, qword [r12 + 0x80]
nop dword [rax + rax]
mov qword [rbx], r15
movsxd rsi, dword [rdi + 8]
mov r15, qword [rdi]
mov dword [rbx + 8], esi
test esi, esi
jne 0x1400e1fea
xor r15d, r15d
mov dword [rbx + 0xc], r15d
jmp 0x1400e200b
xor r8d, r8d
mov edx, esi
mov rcx, rbx
call fcn.140018ed0
mov rcx, qword [rbx]
mov r8, rsi
add r8, r8
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
xor r15d, r15d
add rbx, 0x10
add rdi, 0x10
sub r14d, 1
jne 0x1400e1fd0
mov qword [r12 + 0x90], r15
mov r14d, dword [rbp - 0x28]
mov rdi, qword [rbp - 0x30]
mov dword [r12 + 0x98], r14d
test r14d, r14d
jne 0x1400e2050
mov esi, dword [rbp + 0x68]
mov r14, qword [rsp + 0x30]
mov dword [r12 + 0x9c], r15d
mov r15, qword [rbp + 0x70]
mov r12, qword [rbp - 0x18]
jmp 0x1400e20ce
xor r8d, r8d
lea rcx, [r12 + 0x90]
mov edx, r14d
call fcn.140018da0
mov rbx, qword [r12 + 0x90]
nop dword [rax + rax]
mov qword [rbx], r15
movsxd rsi, dword [rdi + 8]
mov r15, qword [rdi]
mov dword [rbx + 8], esi
test esi, esi
jne 0x1400e208a
xor r15d, r15d
mov dword [rbx + 0xc], r15d
jmp 0x1400e20ab
xor r8d, r8d
mov edx, esi
mov rcx, rbx
call fcn.140018ed0
mov rcx, qword [rbx]
mov r8, rsi
add r8, r8
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
xor r15d, r15d
add rbx, 0x10
add rdi, 0x10
sub r14d, 1
jne 0x1400e2070
mov r15, qword [rbp + 0x70]
mov esi, dword [rbp + 0x68]
mov r14, qword [rsp + 0x30]
mov r12, qword [rbp - 0x18]
jmp 0x1400e20ce
xor r13b, r13b
mov edi, dword [rbp - 0x28]
mov rbx, qword [rbp - 0x30]
test edi, edi
je 0x1400e20fa
nop dword [rax]
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400e20ed
call fcn.1400443e0
add rbx, 0x10
sub edi, 1
jne 0x1400e20e0
mov rbx, qword [rbp - 0x30]
test rbx, rbx
je 0x1400e2107
mov rcx, rbx
call fcn.1400443e0
mov edi, dword [rbp - 0x38]
mov rbx, qword [rbp - 0x40]
test edi, edi
je 0x1400e212c
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400e211f
call fcn.1400443e0
add rbx, 0x10
sub edi, 1
jne 0x1400e2112
mov rbx, qword [rbp - 0x40]
test rbx, rbx
je 0x1400e2139
mov rcx, rbx
call fcn.1400443e0
mov edi, dword [rbp - 0x48]
mov rbx, qword [rbp - 0x50]
test edi, edi
je 0x1400e215e
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400e2151
call fcn.1400443e0
add rbx, 0x10
sub edi, 1
jne 0x1400e2144
mov rbx, qword [rbp - 0x50]
test rbx, rbx
je 0x1400e216b
mov rcx, rbx
call fcn.1400443e0
mov rcx, qword [rbp - 0x60]
test rcx, rcx
je 0x1400e2179
call fcn.1400443e0
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x1400e2187
call fcn.1400443e0
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x1400e2195
call fcn.1400443e0
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x1400e21a4
call fcn.1400443e0
mov edi, dword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
test edi, edi
je 0x1400e21cc
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400e21be
call fcn.1400443e0
add rbx, 0x10
sub edi, 1
jne 0x1400e21b1
mov rbx, qword [rsp + 0x60]
test rbx, rbx
je 0x1400e21d9
mov rcx, rbx
call fcn.1400443e0
mov edi, dword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
test edi, edi
je 0x1400e2201
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400e21f3
call fcn.1400443e0
add rbx, 0x10
sub edi, 1
jne 0x1400e21e6
mov rbx, qword [rsp + 0x50]
test rbx, rbx
je 0x1400e229a
mov rcx, rbx
call fcn.1400443e0
jmp 0x1400e229a
lea r9, str.ModuleWithInvalidModulesArray
lea r8, str.ModuleDescriptor
lea rdx, str.The_Modules_array_has_invalid_contents_and_was_not_able_to_be_loaded.
lea rcx, [rbp]
call fcn.140043b80
mov rcx, qword [rbx]
mov rdx, rax
mov rax, qword [rax]
mov qword [rbx], rax
mov rax, qword [rdx + 8]
mov qword [rdx], rcx
mov rcx, qword [rbx + 8]
mov qword [rbx + 8], rax
mov qword [rdx + 8], rcx
mov eax, dword [rdx + 0x10]
mov dword [rbx + 0x10], eax
mov rbx, qword [rbp + 8]
test rbx, rbx
je 0x1400e2297
mov eax, 0xffffffff
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1400e2297
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x1400e2297
mov rax, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [rax + 8]
xor r13b, r13b
mov rbx, qword [rbp + 0x78]
inc esi
inc r14
mov dword [rbp + 0x68], esi
mov edx, 0
mov qword [rsp + 0x30], r14
cmp esi, dword [r12 + 8]
jl 0x1400e1c00
mov r12, qword [rsp + 0x130]
mov rbx, qword [rbp - 8]
mov r15, qword [rsp + 0x120]
mov r14, qword [rsp + 0x128]
mov rdi, qword [rsp + 0x138]
mov rsi, qword [rsp + 0x160]
test rbx, rbx
je 0x1400e2310
sub dword [rbx + 8], 1
jne 0x1400e2310
mov r8, qword [rbx]
mov rcx, rbx
call qword [r8]
sub dword [rbx + 0xc], 1
jne 0x1400e2310
mov r8, qword [rbx]
mov edx, 1
mov rcx, rbx
call qword [r8 + 8]
movzx eax, r13b
add rsp, 0x140
pop r13
pop rbx
pop rbp
ret