Function at 0x44c8e3
Capabilities:
Get common file path

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x28
push ebx
push ebp
push esi
push edi
push 0x4641d8
mov dword [0x4642c0], eax
call dword [sym.imp.KERNEL32.DLL_InitializeCriticalSection]
mov esi, 0x464be8
push esi
push 0x104
call dword [sym.imp.KERNEL32.DLL_GetCurrentDirectoryA]
xor ebx, ebx
test eax, eax
jne 0x44c91b
mov byte [0x464be8], bl
push 0xffffffffffffffff
push esi
call fcn.0044bad4
xor ebp, ebp
inc ebp
cmp dword [0x468058], ebp
pop ecx
pop ecx
mov dword [0x464cec], eax
mov byte [esp + 0x10], bl
mov byte [esp + 0x3c], bl
mov edi, ebp
jle 0x44ca0f
cmp byte [esp + 0x3c], bl
mov eax, dword [0x46805c]
mov esi, dword [eax + ebp*4]
je 0x44c98e
push ebx
push ebx
push edi
lea eax, [esp + 0x24]
push 0x45774c
push eax
call fcn.00409d03
add esp, 0xc
push eax
lea eax, [esp + 0x24]
push eax
mov ecx, 0x464d48
call fcn.0041bdf6
cmp eax, ebx
je 0x44cbd1
push 1
push ebx
push 0xffffffffffffffff
push esi
mov ecx, eax
call fcn.00401592
inc edi
jmp 0x44ca02
push 0x457748
push esi
call fcn.00441451
test eax, eax
pop ecx
pop ecx
je 0x44c9fd
push 0x45773c
push esi
call fcn.00441451
test eax, eax
pop ecx
pop ecx
je 0x44c9fd
push 0x457738
push esi
call fcn.00441451
test eax, eax
pop ecx
pop ecx
je 0x44c9f4
push 0x457730
push esi
call fcn.00441451
test eax, eax
pop ecx
pop ecx
je 0x44c9f4
push 0x457720
push esi
call fcn.00441451
test eax, eax
pop ecx
pop ecx
jne 0x44c9ec
mov byte [0x4651f8], 1
jmp 0x44ca02
mov byte [esp + 0x3c], 1
dec ebp
jmp 0x44ca02
mov byte [0x464404], 1
jmp 0x44ca02
mov byte [esp + 0x10], 1
inc ebp
cmp ebp, dword [0x468058]
jl 0x44c943
push ebx
push ebx
push ebx
mov esi, 0x464d48
push 0x45771c
mov ecx, esi
call fcn.0041bdf6
cmp eax, ebx
je 0x44cbd1
dec edi
push edi
mov ecx, eax
call fcn.004018c8
mov edi, 0x4641f8
push edi
call fcn.00409ddc
pop ecx
push dword [esp + 0x10]
mov ecx, esi
push 0x4575d8
call fcn.0044cf6e
xor ebp, ebp
inc ebp
cmp eax, ebp
jne 0x44cbd1
push 0xc8
push edi
push 0x463fe8
call fcn.00454510
add esp, 0xc
mov ecx, esi
call fcn.0044e3b5
cmp eax, 0xffffffff
je 0x44cbd1
cmp eax, ebx
je 0x44ccf2
cmp dword [0x464408], ebx
jne 0x44cabe
mov eax, dword [0x4631d0]
cmp word [eax], bx
jne 0x44cab8
cmp dword [0x465f9c], ebx
jne 0x44cab8
cmp dword [0x4643f8], ebx
jne 0x44cab8
cmp dword [0x4643fc], ebx
jne 0x44cab8
cmp byte [0x46440c], bl
je 0x44cb34
mov dword [0x464408], ebp
cmp dword [0x464408], 4
je 0x44cb34
cmp byte [esp + 0x10], bl
jne 0x44cb3e
cmp byte [0x464404], bl
jne 0x44cbc0
push dword [0x4651f0]
push 0x457710
call dword [sym.imp.USER32.dll_FindWindowA]
mov ebp, eax
cmp ebp, ebx
je 0x44cbc0
mov eax, dword [0x464408]
cmp eax, 3
je 0x44ccf2
cmp eax, 2
je 0x44cb2d
push ebx
fldz
push ecx
push ecx
fstp qword [esp]
push dword [0x4651e4]
push 4
push 0x457678
call fcn.0043b223
add esp, 0x18
cmp eax, 7
je 0x44ccf2
mov eax, 0x407
jmp 0x44cb5a
cmp byte [esp + 0x10], bl
je 0x44cbc0
push dword [0x4651f0]
push 0x457710
call dword [sym.imp.USER32.dll_FindWindowA]
mov ebp, eax
cmp ebp, ebx
je 0x44cbc0
mov eax, 0x406
push ebx
push eax
push 0x44
push ebp
call dword [sym.imp.USER32.dll_PostMessageA]
mov esi, dword [sym.imp.KERNEL32.DLL_Sleep]
push 0x14
mov dword [esp + 0x40], ebx
call esi
mov edi, dword [sym.imp.USER32.dll_IsWindow]
jmp 0x44cbab
cmp dword [esp + 0x3c], 0x64
jne 0x44cba3
push ebx
fldz
push ecx
push ecx
fstp qword [esp]
push ebx
push 4
push 0x457630
call fcn.0043b223
add esp, 0x18
cmp eax, 7
je 0x44cbd1
mov dword [esp + 0x3c], ebx
inc dword [esp + 0x3c]
push 0x14
call esi
push ebp
call edi
test eax, eax
jne 0x44cb7b
push 0x64
call esi
mov edi, 0x4641f8
mov esi, 0x464d48
call fcn.0043b39e
mov ecx, esi
call fcn.0044ccfe
cmp eax, 1
je 0x44cbd9
push 2
pop eax
jmp 0x44ccf4
mov eax, dword [0x46206c]
cmp eax, ebx
je 0x44cc09
imul eax, eax, 0x70
push eax
call fcn.0043e678
cmp eax, ebx
pop ecx
mov dword [0x464cf4], eax
je 0x44cc09
mov ecx, dword [0x46206c]
imul ecx, ecx, 0x70
push ecx
push ebx
push eax
call fcn.004549e0
add esp, 0xc
cmp byte [0x465407], bl
jne 0x44cc4b
push 0x457614
push 0x457608
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
cmp eax, ebx
je 0x44cc45
lea ecx, [esp + 0x10]
push ecx
mov dword [esp + 0x14], 8
mov dword [esp + 0x18], 0x1ff
call eax
jmp 0x44cc4b
call dword [sym.imp.COMCTL32.dll_InitCommonControls]
call fcn.0040ed21
mov ecx, esi
mov byte [0x4651f4], 1
call fcn.0044645c
mov ecx, dword [0x4631d0]
cmp word [ecx], bx
jne 0x44cc9c
cmp dword [0x465f9c], ebx
jne 0x44cc9c
cmp dword [0x4643f8], ebx
jne 0x44cc9c
cmp dword [0x4643fc], ebx
jne 0x44cc9c
cmp byte [0x46440c], bl
jne 0x44cc9c
neg eax
sbb eax, eax
and eax, 7
push ebx
inc eax
push ebx
inc eax
push eax
mov ecx, esi
call fcn.00415276
push edi
call fcn.00409d8c
push 0xc8
push edi
push 0x463fe8
call fcn.00454510
mov ecx, dword [0x464be0]
add esp, 0x10
push 1
push ebx
push 0xffffffffffffffff
push 0x45771c
call fcn.00401592
push ebx
push 0xa
mov dword [0x464224], 0x80000000
mov byte [0x4642b2], bl
mov byte [0x4642b1], 1
mov byte [0x4642b0], 1
call fcn.0040b58c
pop ecx
pop ecx
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 0x10