Function at 0x44c67f
Capabilities:
Get common file path

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x28
push ebx
push ebp
push esi
push edi
push 0x464218
mov dword [0x464378], eax
call dword [sym.imp.KERNEL32.DLL_InitializeCriticalSection]
mov esi, 0x464ca0
push esi
push 0x104
call dword [sym.imp.KERNEL32.DLL_GetCurrentDirectoryA]
xor ebx, ebx
test eax, eax
jne 0x44c6b7
mov byte [0x464ca0], bl
push 0xffffffffffffffff
push esi
call fcn.0044b90a
xor ebp, ebp
inc ebp
cmp dword [0x468510], ebp
pop ecx
pop ecx
mov dword [0x464da4], eax
mov byte [esp + 0x10], bl
mov byte [esp + 0x3c], bl
mov esi, ebp
jle 0x44c7ad
cmp byte [esp + 0x3c], bl
mov eax, dword [0x468514]
mov edi, dword [eax + ebp*4]
je 0x44c72c
push esi
push 0x45774c
lea eax, [esp + 0x20]
push 0x20
push eax
call fcn.0040aa6c
add esp, 0x10
push ebx
push ebx
push ebx
lea eax, [esp + 0x24]
push eax
mov ecx, 0x464e00
call fcn.0041c6e8
cmp eax, ebx
je 0x44c96f
push 1
push ebx
push 0xffffffffffffffff
push edi
mov ecx, eax
call fcn.0040152b
inc esi
jmp 0x44c7a0
push 0x457748
push edi
call fcn.00441439
test eax, eax
pop ecx
pop ecx
je 0x44c79b
push str._restart
push edi
call fcn.00441439
test eax, eax
pop ecx
pop ecx
je 0x44c79b
push 0x457738
push edi
call fcn.00441439
test eax, eax
pop ecx
pop ecx
je 0x44c792
push str._force
push edi
call fcn.00441439
test eax, eax
pop ecx
pop ecx
je 0x44c792
push str._ErrorStdOut
push edi
call fcn.00441439
test eax, eax
pop ecx
pop ecx
jne 0x44c78a
mov byte [0x4652b0], 1
jmp 0x44c7a0
mov byte [esp + 0x3c], 1
dec ebp
jmp 0x44c7a0
mov byte [0x4644bc], 1
jmp 0x44c7a0
mov byte [esp + 0x10], 1
inc ebp
cmp ebp, dword [0x468510]
jl 0x44c6df
push ebx
push ebx
push ebx
mov edi, 0x464e00
push 0x45771c
mov ecx, edi
call fcn.0041c6e8
cmp eax, ebx
je 0x44c96f
dec esi
push esi
mov ecx, eax
call fcn.00401861
mov esi, 0x464238
push esi
call fcn.0040ab98
pop ecx
push dword [esp + 0x10]
mov ecx, edi
push 0x4575d8
call fcn.0044cd0e
xor ebp, ebp
inc ebp
cmp eax, ebp
jne 0x44c96f
push 0x140
push esi
push 0x463fc8
call fcn.00454280
add esp, 0xc
mov ecx, edi
call fcn.0044e150
cmp eax, 0xffffffff
je 0x44c96f
cmp eax, ebx
je 0x44ca92
cmp dword [0x4644c0], ebx
jne 0x44c85c
mov eax, dword [0x4631d0]
cmp word [eax], bx
jne 0x44c856
cmp dword [0x466054], ebx
jne 0x44c856
cmp dword [0x4644b0], ebx
jne 0x44c856
cmp dword [0x4644b4], ebx
jne 0x44c856
cmp byte [0x4644c4], bl
je 0x44c8d2
mov dword [0x4644c0], ebp
cmp dword [0x4644c0], 4
je 0x44c8d2
cmp byte [esp + 0x10], bl
jne 0x44c8dc
cmp byte [0x4644bc], bl
jne 0x44c95e
push dword [0x4652a8]
push str.AutoHotkey
call dword [sym.imp.USER32.dll_FindWindowA]
mov ebp, eax
cmp ebp, ebx
je 0x44c95e
mov eax, dword [0x4644c0]
cmp eax, 3
je 0x44ca92
cmp eax, 2
je 0x44c8cb
push ebx
fldz
push ecx
push ecx
fstp qword [esp]
push dword [0x46529c]
push 4
push str.An_older_instance_of_this_script_is_already_running.__Replace_it_with_this_instance__nNote:_To_avoid_this_message__see_SingleInstance_in_the_help_file.
call fcn.0043b17b
add esp, 0x18
cmp eax, 7
je 0x44ca92
mov eax, 0x407
jmp 0x44c8f8
cmp byte [esp + 0x10], bl
je 0x44c95e
push dword [0x4652a8]
push str.AutoHotkey
call dword [sym.imp.USER32.dll_FindWindowA]
mov ebp, eax
cmp ebp, ebx
je 0x44c95e
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 0x44c949
cmp dword [esp + 0x3c], 0x64
jne 0x44c941
push ebx
fldz
push ecx
push ecx
fstp qword [esp]
push ebx
push 4
push str.Could_not_close_the_previous_instance_of_this_script.__Keep_waiting_
call fcn.0043b17b
add esp, 0x18
cmp eax, 7
je 0x44c96f
mov dword [esp + 0x3c], ebx
inc dword [esp + 0x3c]
push 0x14
call esi
push ebp
call edi
test eax, eax
jne 0x44c919
push 0x64
call esi
mov edi, 0x464e00
mov esi, 0x464238
call fcn.0043b2f6
mov ecx, edi
call fcn.0044ca9e
cmp eax, 1
je 0x44c977
push 2
pop eax
jmp 0x44ca94
mov eax, dword [0x46206c]
cmp eax, ebx
je 0x44c9a7
imul eax, eax, 0x70
push eax
call fcn.0043e5d0
cmp eax, ebx
pop ecx
mov dword [0x464dac], eax
je 0x44c9a7
mov ecx, dword [0x46206c]
imul ecx, ecx, 0x70
push ecx
push ebx
push eax
call fcn.00454750
add esp, 0xc
cmp byte [0x4654bf], bl
jne 0x44c9e9
push str.InitCommonControlsEx
push str.comctl32
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.DLL_GetProcAddress]
cmp eax, ebx
je 0x44c9e3
lea ecx, [esp + 0x10]
push ecx
mov dword [esp + 0x14], 8
mov dword [esp + 0x18], 0x1ff
call eax
jmp 0x44c9e9
call dword [sym.imp.COMCTL32.dll_InitCommonControls]
call fcn.0040f86e
mov ecx, edi
mov byte [0x4652ac], 1
call fcn.0044643e
mov ecx, dword [0x4631d0]
cmp word [ecx], bx
jne 0x44ca3a
cmp dword [0x466054], ebx
jne 0x44ca3a
cmp dword [0x4644b0], ebx
jne 0x44ca3a
cmp dword [0x4644b4], ebx
jne 0x44ca3a
cmp byte [0x4644c4], bl
jne 0x44ca3a
neg eax
sbb eax, eax
and eax, 7
push ebx
inc eax
push ebx
inc eax
push eax
mov ecx, edi
call fcn.00415eb0
push esi
call fcn.0040ab48
mov dword [esp], 0x140
push esi
push 0x463fc8
call fcn.00454280
mov ecx, dword [0x464c98]
add esp, 0xc
push 1
push ebx
push 0xffffffffffffffff
push 0x45771c
call fcn.0040152b
push ebx
push 0xa
mov dword [0x464264], 0x80000000
mov byte [0x46436e], bl
mov byte [0x46436d], 1
mov byte [0x46436c], 1
call fcn.0040be3b
pop ecx
pop ecx
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 0x10