Function at 0x44ccf7
Capabilities:
Get common file path

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x28
push ebx
push ebp
push esi
push edi
push 0x465118
mov dword [0x465200], eax
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov esi, 0x465b28
push esi
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
xor ebx, ebx
test eax, eax
jne 0x44cd2f
mov byte [0x465b28], bl
push 0xffffffffffffffff
push esi
call fcn.0044bee8
xor ebp, ebp
inc ebp
cmp dword [0x468f98], ebp
pop ecx
pop ecx
mov dword [0x465c2c], eax
mov byte [esp + 0x10], bl
mov byte [esp + 0x3c], bl
mov edi, ebp
jle 0x44ce23
cmp byte [esp + 0x3c], bl
mov eax, dword [0x468f9c]
mov esi, dword [eax + ebp*4]
je 0x44cda2
push ebx
push ebx
push edi
lea eax, [esp + 0x24]
push 0x45874c
push eax
call fcn.00409d3b
add esp, 0xc
push eax
lea eax, [esp + 0x24]
push eax
mov ecx, 0x465c88
call fcn.0041c17a
cmp eax, ebx
je 0x44cfe5
push 1
push ebx
push 0xffffffffffffffff
push esi
mov ecx, eax
call fcn.00401592
inc edi
jmp 0x44ce16
push 0x458748
push esi
call fcn.00441811
test eax, eax
pop ecx
pop ecx
je 0x44ce11
push str._restart
push esi
call fcn.00441811
test eax, eax
pop ecx
pop ecx
je 0x44ce11
push 0x458738
push esi
call fcn.00441811
test eax, eax
pop ecx
pop ecx
je 0x44ce08
push str._force
push esi
call fcn.00441811
test eax, eax
pop ecx
pop ecx
je 0x44ce08
push str._ErrorStdOut
push esi
call fcn.00441811
test eax, eax
pop ecx
pop ecx
jne 0x44ce00
mov byte [0x466138], 1
jmp 0x44ce16
mov byte [esp + 0x3c], 1
dec ebp
jmp 0x44ce16
mov byte [0x465344], 1
jmp 0x44ce16
mov byte [esp + 0x10], 1
inc ebp
cmp ebp, dword [0x468f98]
jl 0x44cd57
push ebx
push ebx
push ebx
mov esi, 0x465c88
push 0x45871c
mov ecx, esi
call fcn.0041c17a
cmp eax, ebx
je 0x44cfe5
dec edi
push edi
mov ecx, eax
call fcn.004018c8
mov edi, 0x465138
push edi
call fcn.00409e14
pop ecx
push dword [esp + 0x10]
mov ecx, esi
push 0x4585d8
call fcn.0044d34b
xor ebp, ebp
inc ebp
cmp eax, ebp
jne 0x44cfe5
push 0xc8
push edi
push 0x464f28
call fcn.00455650
add esp, 0xc
mov ecx, esi
call fcn.0044e7cd
cmp eax, 0xffffffff
je 0x44cfe5
cmp eax, ebx
je 0x44d106
cmp dword [0x465348], ebx
jne 0x44ced2
mov eax, dword [0x4641d0]
cmp word [eax], bx
jne 0x44cecc
cmp dword [0x466edc], ebx
jne 0x44cecc
cmp dword [0x465338], ebx
jne 0x44cecc
cmp dword [0x46533c], ebx
jne 0x44cecc
cmp byte [0x46534c], bl
je 0x44cf48
mov dword [0x465348], ebp
cmp dword [0x465348], 4
je 0x44cf48
cmp byte [esp + 0x10], bl
jne 0x44cf52
cmp byte [0x465344], bl
jne 0x44cfd4
push dword [0x466130]
push str.AutoHotkey
call dword [sym.imp.USER32.dll_FindWindowA]
mov ebp, eax
cmp ebp, ebx
je 0x44cfd4
mov eax, dword [0x465348]
cmp eax, 3
je 0x44d106
cmp eax, 2
je 0x44cf41
push ebx
fldz
push ecx
push ecx
fstp qword [esp]
push dword [0x466124]
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.0043b5df
add esp, 0x18
cmp eax, 7
je 0x44d106
mov eax, 0x407
jmp 0x44cf6e
cmp byte [esp + 0x10], bl
je 0x44cfd4
push dword [0x466130]
push str.AutoHotkey
call dword [sym.imp.USER32.dll_FindWindowA]
mov ebp, eax
cmp ebp, ebx
je 0x44cfd4
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 0x44cfbf
cmp dword [esp + 0x3c], 0x64
jne 0x44cfb7
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.0043b5df
add esp, 0x18
cmp eax, 7
je 0x44cfe5
mov dword [esp + 0x3c], ebx
inc dword [esp + 0x3c]
push 0x14
call esi
push ebp
call edi
test eax, eax
jne 0x44cf8f
push 0x64
call esi
mov edi, 0x465138
mov esi, 0x465c88
call fcn.0043b75a
mov ecx, esi
call fcn.0044d112
cmp eax, 1
je 0x44cfed
push 2
pop eax
jmp 0x44d108
mov eax, dword [0x46306c]
cmp eax, ebx
je 0x44d01d
imul eax, eax, 0x70
push eax
call fcn.0043ea34
cmp eax, ebx
pop ecx
mov dword [0x465c34], eax
je 0x44d01d
mov ecx, dword [0x46306c]
imul ecx, ecx, 0x70
push ecx
push ebx
push eax
call fcn.00455b20
add esp, 0xc
cmp byte [0x466347], bl
jne 0x44d05f
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 0x44d059
lea ecx, [esp + 0x10]
push ecx
mov dword [esp + 0x14], 8
mov dword [esp + 0x18], 0x1ff
call eax
jmp 0x44d05f
call dword [sym.imp.COMCTL32.dll_InitCommonControls]
call fcn.0040ed59
mov ecx, esi
mov byte [0x466134], 1
call fcn.0044681e
mov ecx, dword [0x4641d0]
cmp word [ecx], bx
jne 0x44d0b0
cmp dword [0x466edc], ebx
jne 0x44d0b0
cmp dword [0x465338], ebx
jne 0x44d0b0
cmp dword [0x46533c], ebx
jne 0x44d0b0
cmp byte [0x46534c], bl
jne 0x44d0b0
neg eax
sbb eax, eax
and eax, 7
push ebx
inc eax
push ebx
inc eax
push eax
mov ecx, esi
call fcn.004152c3
push edi
call fcn.00409dc4
push 0xc8
push edi
push 0x464f28
call fcn.00455650
mov ecx, dword [0x465b20]
add esp, 0x10
push 1
push ebx
push 0xffffffffffffffff
push 0x45871c
call fcn.00401592
push ebx
push 0xa
mov dword [0x465164], 0x80000000
mov byte [0x4651f2], bl
mov byte [0x4651f1], 1
mov byte [0x4651f0], 1
call fcn.0040b5c4
pop ecx
pop ecx
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 0x10