Function at 0x41dc60
Capabilities:
Check if file exists
Get file attributes
Set current directory

Disassembly:
mov eax, 0x10410
call fcn.004a78d0
mov al, byte [esp + 0x10418]
push ebp
push esi
push edi
push 0x8000
lea ecx, [esp + 0x41c]
push ecx
push 0
mov byte [ebx + 0xae6], al
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov dword [esp + 0xc], eax
test eax, eax
je 0x41dd00
cmp eax, 0x8000
jne 0x41dcac
xor eax, eax
pop edi
pop esi
pop ebp
add esp, 0x10410
ret 8
lea edx, [esp + 0x418]
push edx
mov ecx, eax
call fcn.0047c7a0
add esp, 4
mov dword [ebx + 0xad4], eax
test eax, eax
je 0x41dc9e
lea eax, [esp + 0x418]
push 0x5c
push eax
call fcn.0049a072
add esp, 8
test eax, eax
je 0x41dd00
mov ecx, eax
lea edx, [esp + 0x418]
sub ecx, edx
mov eax, edx
sar ecx, 1
push eax
call fcn.0047c7a0
add esp, 4
mov dword [ebx + 0xad8], eax
test eax, eax
je 0x41dc9e
mov ebp, dword [esp + 0x10420]
test ebp, ebp
jne 0x41de44
lea ecx, [esp + 0x418]
push 0x5c
push ecx
call fcn.0049a072
mov esi, eax
add esp, 8
test esi, esi
je 0x41dc9e
push 0x2e
push esi
call fcn.0049a072
add esp, 8
test eax, eax
je 0x41dc9e
mov edx, eax
lea ecx, [esp + 0x418]
sub edx, ecx
sar edx, 1
add edx, 5
cmp edx, 0x8000
jae 0x41dc9e
mov ecx, str..ahk
mov edx, eax
sub edx, ecx
movzx eax, word [ecx]
mov word [edx + ecx], ax
add ecx, 2
test ax, ax
jne 0x41dd63
mov ebp, dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
lea edx, [esp + 0x418]
mov eax, edx
push eax
mov dword [esp + 0x10424], edx
call ebp
cmp eax, 0xffffffff
jne 0x41de3d
lea ecx, [esp + 0x10]
mov edx, ecx
push 0x4af9bc
push edx
mov dword [esp + 0x10428], ecx
call fcn.0044f800
mov ecx, esi
add esp, 8
lea edi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x41ddb4
sub ecx, edi
sar ecx, 1
lea ecx, [ecx + eax + 1]
cmp ecx, 0x201
ja 0x41dc9e
lea edx, [esp + eax*2 + 0x10]
mov ecx, esi
sub edx, esi
jmp 0x41dde0
movzx eax, word [ecx]
mov word [edx + ecx], ax
add ecx, 2
test ax, ax
jne 0x41dde0
lea edx, [esp + 0x10]
push edx
call ebp
cmp eax, 0xffffffff
jne 0x41de3d
mov eax, dword [ebx + 0xad8]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
push str.AutoHotkey.chm
call ebp
cmp eax, 0xffffffff
je 0x41de3d
push 0
push 0
push 0
push 0
push 0x4b61fc
push 0
push 0
push str._ms_its:AutoHotkey.chm::_docs_Welcome.htm_
push ebx
mov edx, str.hh.exe
call fcn.0043b150
test eax, eax
jne 0x41dc9e
mov ebp, dword [esp + 0x10420]
cmp word [ebp], 0x2a
jne 0x41de90
cmp word [ebp + 2], 0
jne 0x41de7d
mov dword [ebx + 0xae0], 2
mov dword [esp + 0x418], 0x2a
mov dword [0x4d97f8], 4
mov dword [0x4d980c], 1
jmp 0x41de9a
mov dword [ebx + 0xae0], 1
mov byte [0x4d54c2], 0
jmp 0x41de9a
mov dword [ebx + 0xae0], 0
lea eax, [esp + 0x418]
cmp ebp, eax
je 0x41ded6
cmp dword [ebx + 0xae0], 1
je 0x41ded6
push 0
mov ecx, eax
push ecx
push 0x8000
push ebp
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
mov dword [esp + 0xc], eax
test eax, eax
je 0x41dc9e
cmp eax, 0x8000
jae 0x41dc9e
cmp dword [ebx + 0xae0], 2
je 0x41deef
lea esi, [esp + 0xc]
lea edi, [esp + 0x418]
call fcn.00480810
lea edx, [esp + 0x418]
push edx
or ecx, 0xffffffff
call fcn.0047c7a0
add esp, 4
mov dword [ebx + 0xac8], eax
test eax, eax
je 0x41dc9e
lea eax, [esp + 0x418]
push 0x5c
push eax
call fcn.0049a072
mov esi, eax
add esp, 8
test esi, esi
je 0x41df53
lea edx, [esp + 0x418]
mov ecx, esi
sub ecx, edx
mov eax, edx
sar ecx, 1
push eax
call fcn.0047c7a0
add esp, 4
mov dword [ebx + 0xacc], eax
test eax, eax
je 0x41dc9e
add esi, 2
jmp 0x41df5a
lea esi, [esp + 0x418]
push esi
or ecx, 0xffffffff
call fcn.0047c7a0
add esp, 4
mov dword [ebx + 0xad0], eax
test eax, eax
je 0x41dc9e
mov ecx, 0x4af9d0
mov eax, ebp
jmp 0x41df80
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x41dfa6
test dx, dx
je 0x41dfa2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x41dfa6
add eax, 4
add ecx, 4
test dx, dx
jne 0x41df80
xor eax, eax
jmp 0x41dfab
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x41dfd9
cmp dword [ebx + 0xae0], 1
mov eax, str.AutoHotkey_v1.1.36.00
jne 0x41dfbf
mov eax, ebp
push eax
push str.____s
mov eax, 0x8000
lea ecx, [esp + 0x420]
call fcn.0047f840
add esp, 8
lea ecx, [esp + 0x418]
push ecx
or ecx, 0xffffffff
call fcn.0047c7a0
add esp, 4
xor edx, edx
test eax, eax
setne dl
pop edi
pop esi
mov dword [ebx + 0xadc], eax
pop ebp
mov eax, edx
add esp, 0x10410
ret 8