Function at 0x1000eed0
Capabilities:
Get common file path

Disassembly:
sub esp, 0x214
mov eax, dword [0x100778dc]
push ebx
mov dword [esp + 0x214], eax
call fcn.1000ea40
push 0x104
lea eax, [esp + 0x114]
xor ebx, ebx
push eax
push ebx
mov byte [esp + 0x12], bl
mov byte [0x100621f8], bl
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x1000ef59
push 0x104
lea ecx, [esp + 0x10]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push str.explorer.exe
lea edx, [esp + 0x10]
push edx
call dword [sym.imp.SHLWAPI.dll_PathAppendA]
lea eax, [esp + 0xc]
push eax
lea ecx, [esp + 0x114]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x1000ef59
xor al, al
pop ebx
mov ecx, dword [esp + 0x210]
call fcn.1004189e
add esp, 0x214
ret
push ebp
push esi
push edi
mov edi, dword [esp + 0x228]
xor ebp, ebp
xor esi, esi
jmp 0x1000ef70
mov edx, dword [0x1007a3e4]
lea eax, [esp + 0x13]
lea ecx, [esi + edx]
push eax
mov ebx, edi
call fcn.1000dc30
mov ebx, eax
add esp, 4
test ebx, ebx
mov dword [esp + 0x14], ebx
jne 0x1000efb2
mov al, byte [esp + 0x13]
test al, al
je 0x1000efa1
mov byte [0x100621f8], 1
add esi, 0x1c
inc ebp
cmp esi, 0x118
jl 0x1000ef70
jmp 0x1000f182
mov dword [0x100621fc], ebp
call fcn.1000d900
test al, al
je 0x1000f182
push ebx
call fcn.1000c630
mov ecx, eax
call fcn.1000d590
test al, al
je 0x1000f182
mov al, byte [0x1007a401]
test al, al
jne 0x1000f003
call fcn.1001dc20
test al, al
jne 0x1000effc
call fcn.1001dc20
test al, al
jne 0x1000effc
mov byte [0x1007a400], 1
mov byte [0x1007a401], 1
mov al, byte [0x1007a400]
test al, al
je 0x1000f01a
mov byte [0x1007ae4e], 1
mov byte [0x10078ad8], 1
mov eax, dword [0x100621fc]
test eax, eax
je 0x1000f04a
cmp eax, 1
je 0x1000f04a
cmp eax, 2
je 0x1000f04a
cmp eax, 3
je 0x1000f04a
cmp eax, 4
je 0x1000f04a
cmp eax, 7
je 0x1000f059
cmp eax, 8
je 0x1000f04a
cmp eax, 9
jne 0x1000f14e
cmp eax, 7
je 0x1000f059
cmp eax, 8
mov byte [esp + 0x12], 0
jne 0x1000f05e
mov byte [esp + 0x12], 1
xor ecx, ecx
cmp eax, 3
mov al, byte [esp + 0x12]
sete cl
add ecx, 2
test al, al
mov edi, ecx
je 0x1000f074
inc edi
xor ebp, ebp
test edi, edi
mov esi, ebx
jle 0x1000f098
mov ebx, dword [sym.imp.USER32.dll_GetParent]
push esi
call ebx
mov esi, eax
test esi, esi
je 0x1000f137
inc ebp
cmp ebp, edi
jl 0x1000f082
mov ebx, dword [esp + 0x14]
test esi, esi
je 0x1000f13b
mov al, byte [esp + 0x12]
test al, al
jne 0x1000f0f2
mov edx, dword [str.ToolbarWindow32]
push 0
push edx
push 0
push esi
call dword [sym.imp.USER32.dll_FindWindowExA]
mov ecx, dword [0x100621fc]
mov esi, eax
xor eax, eax
cmp ecx, 3
setne al
push 0
push 0
push 0x418
push esi
dec eax
and eax, 5
inc eax
mov edi, eax
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, edi
jne 0x1000f13b
call fcn.1000c630
mov ecx, dword [eax + 0xc]
mov dword [ecx + 4], esi
jmp 0x1000f13b
mov al, byte [0x1007a3f0]
test al, al
jne 0x1000f111
mov edx, dword [str.L_ICe8rWsWPPUca]
push 0x10
push 0x1007a3f0
push edx
call fcn.1000d6e0
add esp, 0xc
push 0x100539ea
push 0x1007a3f0
push 0
push esi
call dword [sym.imp.USER32.dll_FindWindowExA]
mov esi, eax
test esi, esi
je 0x1000f13b
call fcn.1000c630
mov eax, dword [eax + 0xc]
mov dword [eax + 4], esi
jmp 0x1000f13b
mov ebx, dword [esp + 0x14]
push 0
push 1
call fcn.10001ea0
mov eax, dword [0x100621fc]
add esp, 8
jmp 0x1000f155
mov byte [0x1007ae4d], 1
cmp eax, 5
je 0x1000f15f
cmp eax, 6
jne 0x1000f176
call fcn.1000c630
mov ecx, dword [eax + 0xc]
push 1
push 1
mov dword [ecx + 4], ebx
call fcn.10001ea0
add esp, 8
mov byte [esp + 0x12], 1
mov byte [0x100621f8], 0
mov ecx, dword [esp + 0x220]
mov al, byte [esp + 0x12]
pop edi
pop esi
pop ebp
pop ebx
call fcn.1004189e
add esp, 0x214
ret