Function at 0x441fab
Capabilities:
Get common file path
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push ecx
push ecx
mov eax, dword [ebp + 0x14]
push ebx
push esi
push edi
push 1
mov esi, ecx
pop edi
mov dword [eax], edi
mov ax, word [ebp + 0xc]
cmp ax, 0x806c
jne 0x442113
push edi
push ecx
mov ecx, esp
push str.tree_mode
mov dword [0x4c322c], edi
call fcn.0040a529
mov ecx, esi
call fcn.0043519f
xor ebx, ebx
lea ecx, [esi + 0x4ae0]
mov dword [0x4c6840], ebx
call fcn.00476c7d
lea ecx, [esi + 0x52ac]
call fcn.00476c7d
lea ecx, [esi + 0x5a78]
call fcn.00476c7d
lea ecx, [esi + 0x6244]
call fcn.00476c7d
lea ecx, [esi + 0x330]
push 0xffffffffffffffff
call fcn.00418c2d
mov eax, dword [esi + 0x6a60]
lea edi, [esi + 0x310]
neg edi
mov dword [esi + 0x360], eax
lea eax, [esi + 0x314]
sbb edi, edi
lea ecx, [esi + 0x6a14]
and edi, eax
lea eax, [esi + 0x6a10]
neg eax
push dword [edi]
sbb eax, eax
and eax, ecx
push dword [eax]
call dword [sym.imp.USER32.dll_SetParent]
mov ecx, esi
call fcn.0043f01c
lea ecx, [esi + 0x384]
mov dword [ebp - 4], eax
call fcn.00431c1c
lea eax, [ebp + 0x14]
mov dword [ebp + 0x14], ebx
push eax
push ebx
push ebx
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderLocation]
mov ecx, dword [ebp - 4]
mov dword [ebp + 0xc], ebx
cmp ecx, ebx
je 0x4420b0
lea eax, [ebp - 8]
push eax
call fcn.0046dc79
mov ecx, eax
add eax, 4
neg ecx
sbb ecx, ecx
and ecx, eax
mov eax, dword [ecx]
lea ecx, [ebp - 8]
mov dword [ebp + 0xc], eax
call fcn.004893ad
push dword [ebp + 0xc]
lea ecx, [esi + 0x384]
push dword [ebp + 0x14]
call fcn.00431b57
cmp dword [edi], ebx
je 0x4420ed
cmp dword [esi + 0x36c], ebx
push 1
je 0x4420dd
push ebx
lea ecx, [esi + 0x330]
call fcn.00418bcb
jmp 0x4420ed
push 0x96
lea ecx, [esi + 0x330]
call fcn.00418f56
push 1
mov ecx, esi
call fcn.0043bc8b
mov ecx, esi
call fcn.004422f6
push dword [0x4c322c]
lea ecx, [esi + 0x5c]
call fcn.004144a9
push 1
pop edi
jmp 0x4422ed
cmp ax, 0x806d
jne 0x4421b7
push 2
pop eax
push eax
push ecx
mov ecx, esp
push str.tree_mode
mov dword [0x4c322c], eax
call fcn.0040a529
mov ecx, esi
call fcn.0043519f
mov ebx, dword [sym.imp.USER32.dll_ShowWindow]
push 0
mov dword [0x4c6840], edi
push dword [esi + 0x6a14]
call ebx
lea ecx, [esi + 0x4ae0]
call fcn.00476c7d
lea ecx, [esi + 0x52ac]
call fcn.00476c7d
lea ecx, [esi + 0x5a78]
call fcn.00476c7d
lea ecx, [esi + 0x6244]
call fcn.00476c7d
push edi
lea ecx, [esi + 0x330]
call fcn.00418c2d
lea ecx, [esi + 0x384]
call fcn.00431c1c
push 5
push dword [esi + 0x6a14]
call ebx
mov ecx, esi
call fcn.004422f6
push dword [0x4c322c]
lea ecx, [esi + 0x5c]
call fcn.004144a9
jmp 0x4422ed
cmp ax, 0x806b
jne 0x442228
xor ebx, ebx
push ebx
push ecx
mov ecx, esp
push str.tree_mode
mov dword [0x4c322c], ebx
call fcn.0040a529
mov ecx, esi
call fcn.0043519f
lea ecx, [esi + 0x4ae0]
mov dword [0x4c6840], ebx
call fcn.00476c7d
lea ecx, [esi + 0x52ac]
call fcn.00476c7d
lea ecx, [esi + 0x5a78]
call fcn.00476c7d
lea ecx, [esi + 0x6244]
call fcn.00476c7d
push edi
lea ecx, [esi + 0x330]
call fcn.00418c2d
lea ecx, [esi + 0x384]
call fcn.00431c1c
jmp 0x44219d
cmp ax, 0x806a
jne 0x442246
mov eax, dword [0x4c322c]
inc dword [0x4c322c]
push eax
mov ecx, esi
call fcn.0044235d
jmp 0x4422ed
cmp ax, 0x413
jb 0x4422ed
cmp ax, 0x415
ja 0x4422ed
mov ecx, dword [0x4b843c]
cmp ax, 0x413
jne 0x44226d
and dword [0x4b843c], 0
cmp ax, 0x414
jne 0x442279
mov dword [0x4b843c], edi
cmp ax, 0x415
jne 0x442289
mov dword [0x4b843c], 2
cmp ecx, dword [0x4b843c]
je 0x44229c
call fcn.00433175
inc dword [0x4b62c0]
lea ecx, [esi + 0x830]
call fcn.0048d5fd
lea ecx, [esi + 0x4d98]
call fcn.0048d5fd
lea ecx, [esi + 0x5564]
call fcn.0048d5fd
lea ecx, [esi + 0x5d30]
call fcn.0048d5fd
lea ecx, [esi + 0x64fc]
call fcn.0048d5fd
push dword [0x4b843c]
push ecx
mov ecx, esp
push 0x4b37ec
call fcn.0040a529
mov ecx, esi
call fcn.0043519f
mov eax, edi
pop edi
pop esi
pop ebx
leave
ret 0x10