Function at 0x44c688
Capabilities:
Get common file path
Get file system object information
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 5
add esp, 0xfffff004
push eax
dec eax
jne 0x44c691
mov eax, dword [ebp - 4]
add esp, 0xfffffb54
push ebx
push esi
push edi
mov edi, 0x4b6ec4
mov eax, 0x4a6104
call fcn.00495294
lea edx, [ebp - 0xab0]
push edx
push 0x441490
push dword [0x4c2340]
push 0x4a518c
push dword [0x4af654]
call sub.USER32.DLL_DialogBoxParamA
test eax, eax
jne 0x44c6f0
mov ecx, dword [ebp - 0x22c]
mov dword fs:[0], ecx
mov eax, ecx
jmp 0x44cc91
mov word [ebp - 0x21c], 8
lea eax, [ebp - 0x110]
call fcn.0046b638
add dword [ebp - 0x210], 6
mov word [ebp - 0x21c], 0x14
cmp dword [0x4c4ce0], 0
je 0x44c75a
lea ecx, [ebp - 0x1ec0]
lea edx, [ebp - 0x16c0]
mov eax, 0x4c309c
call fcn.00462684
lea ecx, [ebp - 0x1ec0]
lea edx, [ebp - 0x16c0]
lea eax, [ebp - 0x110]
call fcn.0046b908
lea eax, [ebp - 0x110]
call fcn.0046ba2c
jmp 0x44c82b
mov word [ebp - 0x21c], 0x20
lea eax, [ebp - 0x208]
call fcn.0040f5f8
add dword [ebp - 0x210], 4
mov word [ebp - 0x21c], 0x2c
lea edx, [ebp - 0x208]
mov eax, 0x4c2354
xor ecx, ecx
call fcn.00468fcc
push 0
push 1
push 0
push 1
lea ecx, [ebp - 0x110]
lea eax, [ebp - 0x208]
mov edx, 2
call fcn.0046f370
test al, al
jne 0x44c80b
sub dword [ebp - 0x210], 4
lea eax, [ebp - 0x208]
mov edx, 2
call fcn.0040f6d0
dec dword [ebp - 0x210]
dec dword [ebp - 0x210]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.0043cc44
sub dword [ebp - 0x210], 4
lea eax, [ebp - 0x110]
mov edx, 2
call fcn.0040f6d0
mov ecx, dword [ebp - 0x22c]
mov dword fs:[0], ecx
jmp 0x44cc91
sub dword [ebp - 0x210], 4
lea eax, [ebp - 0x208]
mov edx, 2
call fcn.0040f6d0
mov word [ebp - 0x21c], 0x14
lea edx, [ebp - 0x22c0]
mov eax, 0x4a5194
call fcn.0046e748
test al, al
jne 0x44c881
dec dword [ebp - 0x210]
dec dword [ebp - 0x210]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.0043cc44
sub dword [ebp - 0x210], 4
lea eax, [ebp - 0x110]
mov edx, 2
call fcn.0040f6d0
mov ecx, dword [ebp - 0x22c]
mov dword fs:[0], ecx
jmp 0x44cc91
lea eax, [ebp - 0x26c0]
push eax
push 0x400
call sub.KERNEL32.DLL_GetCurrentDirectoryA
mov word [ebp - 0x21c], 0x14
xor ebx, ebx
jmp 0x44ca28
lea eax, [ebp - 0x22c0]
push eax
call fcn.004967f8
pop ecx
lea ecx, [ebp - 0x36f0]
lea eax, [ebp - 0x110]
mov edx, ebx
call fcn.0046b960
lea eax, [ebp - 0x36f0]
call fcn.0040ba60
push eax
lea edx, [ebp - 0x2ac0]
push edx
call fcn.00494e64
add esp, 8
lea eax, [ebp - 0x2ac0]
xor ecx, ecx
xor edx, edx
call fcn.0040a05c
test eax, eax
je 0x44c939
lea eax, [ebp - 0x2ac0]
mov dl, 1
call fcn.0040c310
lea eax, [ebp - 0x2ac0]
xor ecx, ecx
xor edx, edx
call fcn.0040a05c
test eax, eax
je 0x44c939
lea eax, [ebp - 0x2ac0]
push eax
mov eax, 0x1f7
call fcn.0041202c
push eax
call fcn.0044e3e0
add esp, 8
mov eax, 0x4af020
call fcn.0042cfac
jmp 0x44ca27
lea edx, [ebp - 0x2ac0]
push edx
call fcn.004967f8
pop ecx
call fcn.00456d34
lea ecx, [ebp - 0x4320]
lea eax, [ebp - 0x110]
mov edx, ebx
call fcn.0046b960
lea eax, [ebp - 0x4320]
lea edx, [edi + 0x3ef0]
call fcn.0040a9a4
lea ecx, [ebp - 0x4f50]
lea eax, [ebp - 0x110]
mov edx, ebx
call fcn.0046b960
lea eax, [ebp - 0x4f50]
lea edx, [edi + 0x42f0]
add eax, 0x400
call fcn.0040a9ec
cmp dword [0x4c4ce0], 0
jne 0x44c9bb
push 1
push 0
lea ecx, [edi + 0x42f0]
lea edx, [edi + 0x3ef0]
mov eax, 0x4c309c
call fcn.0046109c
mov ecx, dword [0x4c32a4]
mov dword [edi + 0x2aa8], ecx
mov eax, dword [edi + 0x4afc]
call fcn.0040f74c
mov eax, dword [edi + 0x4af0]
call fcn.0040f74c
mov edx, 0x4a4ddd
mov eax, dword [edi + 0x4af0]
call fcn.0040f77c
call fcn.0044e5e8
mov esi, eax
mov word [ebp - 0x21c], 0x14
mov eax, 0x4c309c
mov cl, 1
xor edx, edx
call fcn.0045d68c
call fcn.0044e5e8
cmp esi, eax
je 0x44ca1e
mov dword [0x4c4cf4], 1
cmp dword [0x4c4cf4], 0
jne 0x44ca3a
inc ebx
cmp ebx, dword [ebp - 0xc]
jae 0x44ca3a
cmp dword [0x4c4cf0], 0
je 0x44c8a2
xor ebx, ebx
cmp dword [0x4c4cf4], 0
jne 0x44cc1e
push 0
lea edx, [edi + 0x3ef0]
xor ecx, ecx
mov eax, 9
call fcn.0047cca0
mov ebx, eax
lea eax, [ebp - 0xab0]
call fcn.0047e9a0
mov eax, 0x543
call fcn.0041202c
call fcn.0047e9a0
lea edx, [ebp - 0x22c0]
push edx
call fcn.004967f8
pop ecx
lea edx, [ebp - 0x22c0]
lea eax, [ebp - 0x6b0]
call fcn.00441e43
push 0x2000
lea ecx, [ebp - 0x50b0]
push 0x160
push ecx
lea eax, [ebp - 0xab0]
push 0
push eax
call sub.SHELL32.DLL_SHGetFileInfoA
mov ecx, eax
shr ecx, 0x10
test cx, cx
jne 0x44cad5
mov edx, eax
and dx, 0xffff
cmp dx, 0x5a4d
je 0x44cad9
cmp dx, 0x4550
je 0x44cad9
xor eax, eax
jmp 0x44cade
mov eax, 1
test al, al
je 0x44cba2
lea edx, [ebp - 0x22c0]
push edx
lea ecx, [ebp - 0x54b0]
push ecx
call fcn.00494e64
add esp, 8
lea eax, [ebp - 0x54b0]
call fcn.0040bf64
call fcn.0049d288
push eax
push 0x4a51a1
lea edx, [ebp - 0x54b0]
push edx
call fcn.00494e94
pop ecx
lea ecx, [ebp - 0x54b0]
add eax, ecx
push eax
call fcn.00497dc4
add esp, 0xc
push 0x4a4e15
lea eax, [ebp - 0x54b0]
push eax
call fcn.00496d9c
add esp, 8
mov esi, eax
test esi, esi
je 0x44cba2
xor eax, eax
mov al, byte [ebp - 0xab0]
cmp eax, 0x22
je 0x44cb62
lea eax, [ebp - 0xab0]
call fcn.004485d4
lea edx, [ebp - 0x6b0]
push edx
lea ecx, [ebp - 0xab0]
push ecx
push 0x4a51b2
push esi
call fcn.00496dd0
add esp, 0x10
push esi
call fcn.004968a0
pop ecx
lea eax, [ebp - 0x54b0]
push eax
lea edx, [ebp - 0xab0]
push edx
call fcn.00494e64
add esp, 8
mov byte [ebp - 0x6b0], 0
lea ecx, [ebp - 0x6b0]
lea eax, [ebp - 0x230]
push ecx
push 0
push eax
lea eax, [ebp - 0xab0]
push 0
lea ecx, [ebp - 0x22c0]
xor edx, edx
call fcn.00474930
test al, al
jne 0x44cbf3
lea ecx, [ebp - 0xab0]
mov eax, 0x201
push ecx
call fcn.0041202c
push eax
call fcn.0044e3e0
add esp, 8
jmp 0x44cbf3
push 0x14
call sub.KERNEL32.DLL_Sleep
call fcn.004483d0
push 0xc8
push dword [ebp - 0x230]
call sub.KERNEL32.DLL_WaitForSingleObject
cmp eax, 0x102
jne 0x44cc13
cmp dword [0x4c4cf0], 0
je 0x44cbe7
push dword [ebp - 0x230]
call sub.KERNEL32.DLL_CloseHandle
lea edx, [ebp - 0x26c0]
push edx
call fcn.004967f8
pop ecx
lea eax, [ebp - 0x22c0]
call fcn.0046e968
test al, al
je 0x44cc45
lea eax, [ebp - 0x22c0]
call fcn.0046e148
test bl, bl
je 0x44cc54
push dword [0x4c234c]
call sub.USER32.DLL_DestroyWindow
dec dword [ebp - 0x210]
dec dword [ebp - 0x210]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.0043cc44
sub dword [ebp - 0x210], 4
lea eax, [ebp - 0x110]
mov edx, 2
call fcn.0040f6d0
mov ecx, dword [ebp - 0x22c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret