Function at 0x1402e7902
Capabilities:
Access peb ldr_data
Resolve function by parsing pe exports

Disassembly:
push rbx
push rsi
push rdi
push r14
push r15
sub rsp, 0x20
mov rax, qword gs:[0x60]
mov qword [rsp + 0x58], 0
mov rcx, qword [rax + 0x18]
add rcx, 0x10
mov rdx, qword [rcx]
cmp rdx, rcx
je 0x1402e793f
mov rax, qword [rdx + 0x60]
mov r15, qword [rdx + 0x30]
mov qword [rsp + 0x58], rax
jmp 0x1402e7942
xor r15d, r15d
mov ebx, dword [0x1403b05f4]
mov rax, qword gs:[0x60]
mov rdi, qword [rax + 0x18]
add rdi, 0x10
mov r10, qword [rdi]
cmp r10, rdi
je 0x1402e79b5
nop
test ebx, ebx
je 0x1402e7b70
mov r11, qword [r10 + 0x60]
xor r9d, r9d
xor r8d, r8d
movzx edx, word [r11]
test dx, dx
je 0x1402e79a4
nop dword [rax + rax]
lea eax, [rdx - 0x41]
cmp ax, 0x19
lea ecx, [rdx + 0x20]
lea r8, [r8 + 1]
cmova cx, dx
movzx edx, word [r11 + r8*2]
movzx eax, cx
add r9d, eax
test dx, dx
jne 0x1402e7982
cmp ebx, r9d
je 0x1402e7b70
mov r10, qword [r10]
cmp r10, rdi
jne 0x1402e7962
xor esi, esi
mov r8, qword [0x1403b0608]
mov qword [rsp + 0x60], rbp
test rsi, rsi
je 0x1402e7a33
movsxd rax, dword [rsi + 0x3c]
xor r11d, r11d
mov edi, dword [rax + rsi + 0x88]
add rdi, rsi
mov r10d, dword [rdi + 0x20]
mov ebx, dword [rdi + 0x18]
add r10, rsi
test ebx, ebx
je 0x1402e7a33
movzx ebp, byte [r8]
nop dword [rax]
mov r9d, dword [r10]
xor edx, edx
add r9, rsi
movzx ecx, byte [r9]
cmp cl, bpl
jne 0x1402e7a27
xor eax, eax
test cl, cl
je 0x1402e7b79
cmp byte [rax + r8], 0
je 0x1402e7b79
inc edx
mov eax, edx
movzx ecx, byte [rdx + r9]
cmp cl, byte [rdx + r8]
je 0x1402e7a05
inc r11d
add r10, 4
cmp r11d, ebx
jb 0x1402e79f2
xor r14d, r14d
mov r10, qword [0x1403b0600]
mov eax, dword [r10]
test eax, eax
je 0x1402e7aa6
mov r9, qword [rsp + 0x58]
xor ecx, ecx
movzx edx, word [r9]
test dx, dx
je 0x1402e7a5e
inc ecx
cmp word [r9 + rcx*2], 0
jne 0x1402e7a54
cmp cl, al
je 0x1402e7a6c
cmp cl, byte [r10 + 1]
jne 0x1402e7c55
xor r8d, r8d
test dx, dx
je 0x1402e7a96
xor ecx, ecx
nop dword [rax]
nop dword [rax + rax]
movzx eax, dx
lea rcx, [rcx + 1]
movzx edx, word [r9 + rcx*2]
add r8d, eax
test dx, dx
jne 0x1402e7a82
cmp r8d, dword [r10 + 4]
je 0x1402e7aa6
cmp r8d, dword [r10 + 8]
jne 0x1402e7c55
mov ebx, dword [0x1403b061c]
xor edi, edi
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, ebx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ecx, dword [0x1403b062c]
mov r9, rax
test ecx, ecx
je 0x1402e7af6
nop dword [rax]
mov rcx, qword [str.4B:_]
movsxd r8, edi
mov edx, dword [rcx + r8]
mov dword [r8 + rax], edx
mov ecx, dword [reloc.OLEAUT32.dll_SysReAllocStringLen]
add edi, ecx
mov ecx, dword [0x1403b062c]
cmp edi, ecx
jb 0x1402e7ad2
test rsi, rsi
je 0x1402e7c55
movsxd rax, dword [rsi + 0x3c]
xor r11d, r11d
mov edi, dword [rax + rsi + 0x88]
add rdi, rsi
mov r10d, dword [rdi + 0x20]
mov ebx, dword [rdi + 0x18]
add r10, rsi
test ebx, ebx
je 0x1402e7c55
movzx ebp, byte [r9]
nop dword [rax]
nop dword [rax + rax]
mov r8d, dword [r10]
xor edx, edx
add r8, rsi
movzx ecx, byte [r8]
cmp cl, bpl
jne 0x1402e7b5f
xor eax, eax
test cl, cl
je 0x1402e7b96
cmp byte [rax + r9], 0
je 0x1402e7b96
inc edx
mov eax, edx
movzx ecx, byte [rdx + r8]
cmp cl, byte [rdx + r9]
je 0x1402e7b45
inc r11d
add r10, 4
cmp r11d, ebx
jb 0x1402e7b32
jmp 0x1402e7c55
mov rsi, qword [r10 + 0x30]
jmp 0x1402e79b7
mov eax, dword [rdi + 0x24]
mov ecx, dword [rdi + 0x1c]
add rax, rsi
add rcx, rsi
movzx edx, word [rax + r11*2]
mov r14d, dword [rcx + rdx*4]
add r14, rsi
jmp 0x1402e7a36
mov eax, dword [rdi + 0x24]
mov ecx, dword [rdi + 0x1c]
add rax, rsi
add rcx, rsi
movzx edx, word [rax + r11*2]
mov edi, dword [rcx + rdx*4]
add rdi, rsi
je 0x1402e7c55
mov rbx, qword [0x1403b0610]
lea r9, [rsp + 0x50]
mov edx, dword [0x1403b05c8]
mov rcx, rbx
mov r8d, dword [0x1403b062c]
call rdi
mov r9, qword [0x1403b05ec]
mov r8d, dword [reloc.OLEAUT32.dll_VariantClear]
mov eax, dword [0x1403b05c8]
mov r9d, r9d
add r9, r15
mov r10d, dword [r9 + 4]
cmp r8d, eax
jae 0x1402e7c15
movsxd rdx, r8d
mov ecx, dword [rdx + r9]
add ecx, r10d
mov dword [rdx + rbx], ecx
mov eax, dword [reloc.OLEAUT32.dll_SysReAllocStringLen]
add r8d, eax
mov eax, dword [0x1403b05c8]
cmp r8d, eax
jb 0x1402e7bf4
mov edx, dword [0x1403b05e4]
lea r9, [rsp + 0x50]
mov eax, dword [reloc.OLEAUT32.dll_SysReAllocString]
mov rcx, rbx
mov dword [rbx + rax*4], edx
mov edx, dword [0x1403b05c8]
mov r8d, dword [rsp + 0x50]
call rdi
mov r8d, dword [0x1403b0630]
mov edx, dword [rbx + 0xc]
mov ecx, dword [0x1403b0630]
add r8, rdx
add r8, rbx
add rcx, rbx
call r8
mov ecx, 1
call r14
mov rbp, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop rdi
pop rsi
pop rbx
ret