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

Disassembly:
mov rax, rsp
push rbp
push rsi
push r13
push r15
sub rsp, 0x48
lea r13d, [rdx - 0xb]
mov r15, r8
mov ebp, edx
mov rsi, rcx
cmp edx, r13d
jbe 0x1800408a8
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
xor edi, edi
mov qword [rax + 0x18], r12
lea r12d, [rdx - 0xc0]
mov qword [rax - 0x28], r14
lea rdx, [0x180000000]
mov r14, qword [rsp + 0x88]
nop word [rax + rax]
cmp r12d, 0x1b
ja case.0x1800407cd.10
movzx eax, byte [rdx + r12 + 0x40c04]
mov ecx, dword [rdx + rax*4 + 0x40bd8]
add rcx, rdx
jmp rcx
mov dword [rsp + 0x88], 1
jmp case.0x1800407cd.10
cmp qword [r15], 0
mov r14, rdi
jbe case.0x1800407cd.10
cmp byte [rsi], 0x20
jne case.0x1800407cd.10
mov r14d, 1
jmp case.0x1800407cd.10
lea rdx, [rsi + 0xb8]
mov rax, qword [rdx]
cmp qword [rsi + 0xc8], rax
jne 0x1800408bb
lea r9, [rsi + 0xb0]
mov dword [rsp + 0x20], 0x89
lea rcx, [rsi + 0xc0]
lea r8, [rsi + 0xc8]
call fcn.18005b630
test eax, eax
jne 0x1800408bb
mov dword [rsi], 1
mov ebx, 0x29
mov eax, ebx
sub eax, 0x28
je case.0x1800407cd.0
cmp eax, 1
jne 0x180040875
mov qword [rsp + 0x28], rdi
lea edx, [rax + 0x23]
xor r9d, r9d
mov qword [rsp + 0x20], rdi
mov r8, r15
xor ecx, ecx
call fcn.180047a00
mov dword [rsp + 0x88], edi
dec ebx
cmp ebx, 0x27
ja 0x180040848
lea rdx, [0x180000000]
dec ebp
dec r12d
cmp ebp, r13d
ja 0x1800407b0
mov r12, qword [rsp + 0x80]
mov rdi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov r14, qword [rsp + 0x40]
mov rax, qword [rsp + 0x88]
add rsp, 0x48
pop r15
pop r13
pop rsi
pop rbp
ret
movups xmm0, xmmword [r15]
mov rax, qword [rsi + 0xc8]
movups xmmword [rax], xmm0
movups xmm1, xmmword [r15 + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [r15 + 0x20]
movups xmmword [rax + 0x20], xmm0
movups xmm1, xmmword [r15 + 0x30]
movups xmmword [rax + 0x30], xmm1
movups xmm0, xmmword [r15 + 0x40]
movups xmmword [rax + 0x40], xmm0
movups xmm1, xmmword [r15 + 0x50]
movups xmmword [rax + 0x50], xmm1
movsd xmm0, qword [r15 + 0x60]
movsd qword [rax + 0x60], xmm0
add qword [rsi + 0xc8], 0x68
jmp 0x18004087c
lea rax, [r14 + 1]
cmp rax, qword [r15]
jae 0x18004092a
cmp byte [r14 + rsi], 0x2e
jne 0x18004092a
cmp byte [r14 + rsi + 1], 0x20
je case.0x1800407cd.10
mov ecx, 0xc1
nop
mov eax, ecx
sub eax, 0xc1
je 0x180040944
cmp eax, 0x72
je case.0x1800407cd.0
jmp 0x18004094c
mov qword [rsp + 0x88], rdi
add ecx, 0x72
cmp ecx, 0x1a5
jb 0x180040930
jmp case.0x1800407cd.10
mov rdx, qword [r15]
cmp r14, rdx
jae 0x18004096f
movzx eax, byte [r14 + rsi]
sub al, 0x30
cmp al, 9
jbe 0x18004099b
mov ecx, SHSetFolderPathA
mov eax, ecx
sub eax, 0xe5
je 0x180040988
cmp eax, 0x3c
je case.0x1800407cd.0
jmp 0x180040990
mov qword [rsp + 0x88], rdi
add ecx, 0x3c
cmp ecx, 0x15d
jb 0x180040974
cmp r14, rdx
jae 0x18004087c
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r14 + rsi]
sub al, 0x30
cmp al, 9
ja 0x18004087c
inc r14
cmp r14, rdx
jb 0x1800409b0
jmp 0x18004087c
mov rcx, qword [r15]
cmp r14, rcx
jae case.0x1800407cd.10
cmp byte [r14 + rsi], 0x20
lea rax, [r14 + 1]
cmovne rax, r14
mov r14, rax
cmp rax, rcx
jae case.0x1800407cd.10
cmp byte [rax + rsi], 0x20
jne case.0x1800407cd.10
lea r14, [rax + 1]
jmp case.0x1800407cd.10
xor r9d, r9d
mov qword [rsp + 0x28], rsi
xor edx, edx
mov qword [rsp + 0x20], rdi
xor ecx, ecx
lea r8d, [r9 + 0x3f]
call fcn.18003ac00
test eax, eax
jne 0x18004087c
mov ebx, 4
nop dword [rax + rax]
cmp ebx, 4
je 0x180040a70
cmp ebx, 0x164
jne 0x180040af9
mov r8, qword [rsi + 0xc0]
xor r9d, r9d
mov qword [rsp + 0x28], rdi
xor ecx, ecx
mov qword [rsp + 0x20], rdi
lea rax, [r8 + 0x68]
lea edx, [r9 + 0x24]
mov qword [rsi + 0xc0], rax
call fcn.180047a00
jmp 0x180040af9
mov r8, qword [rsi + 0xc0]
mov rdx, rsi
mov ecx, 0xa0
call fcn.18003f1d0
test eax, eax
jne 0x180040ab5
mov eax, 0x71
nop dword [rax]
cmp eax, 0x71
je 0x180040aa2
cmp eax, 0x1847
je case.0x1800407cd.0
jmp 0x180040aa9
mov dword [rsp + 0x88], edi
add eax, 0x17d6
cmp eax, 0x2fac
jbe 0x180040a90
mov rdx, qword [rsi + 0xc0]
mov r8, rsi
mov ecx, 0x25
call fcn.18004a5b0
test eax, eax
jne 0x180040af9
mov eax, 0xed
cmp eax, 0xed
je 0x180040ae6
cmp eax, 0x7680
je case.0x1800407cd.0
jmp 0x180040aed
mov dword [rsp + 0x88], edi
add eax, 0x7593
cmp eax, 0xeb26
jbe 0x180040ad2
add ebx, 0x160
cmp ebx, 0x2c0
jbe 0x180040a30
xor r9d, r9d
mov qword [rsp + 0x28], rsi
xor edx, edx
mov qword [rsp + 0x20], rdi
xor ecx, ecx
lea r8d, [r9 + 0x3f]
call fcn.18003ac00
test eax, eax
je 0x180040a26
jmp 0x18004087c
mov rax, qword [r15]
lea rdx, [rsp + 0x30]
sub rax, r14
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], rax
xor r9d, r9d
lea rax, [r14 + rsi]
mov r8d, SHSetInstanceExplorer
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.18002b1e0
test eax, eax
je 0x180040b96
mov ecx, 0x92
nop dword [rax]
mov eax, ecx
sub eax, 0x92
je 0x180040b84
cmp eax, 1
je case.0x1800407cd.0
jmp 0x180040b8c
mov qword [rsp + 0x88], rdi
inc ecx
cmp ecx, 0x94
jb 0x180040b70
lea rax, [r14 + 2]
mov qword [rsp + 0x88], rax
jmp 0x18004087c
mov rdi, qword [rsi + 8]
mov rbx, qword [rsi]
cmp rbx, rdi
je 0x180040bd0
mov edx, 0x5f
mov rcx, rbx
call fcn.18001fcf0
add rbx, 0x10
cmp rbx, rdi
jne 0x180040bb3
xor edi, edi
jmp 0x18004087c
xor edi, edi
jmp case.0x1800407cd.10