Function at 0x431330
Capabilities:
Check if file exists
Get common file path
Get file attributes
Get keyboard layout
Set current directory

Disassembly:
sub esp, 0x198
mov ah, byte [0x4f9b6f]
push ebx
mov ebx, dword [esp + 0x1a0]
mov word [esp + 0x1c], 0x920
mov byte [esp + 0x1e], ah
mov byte [esp + 0x1f], 0
push ebp
mov ebp, ecx
mov dword [esp + 0xc], ebp
push esi
push edi
mov edi, ebx
test ebx, ebx
je 0x43138e
mov dl, byte [ebx]
test dl, dl
je 0x43138e
nop dword [eax]
lea ecx, [esp + 0x28]
mov al, 0x20
cmp dl, al
je 0x431419
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x431376
mov dl, byte [edi + 1]
inc edi
test dl, dl
jne 0x431370
mov ecx, ebx
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x431393
sub ecx, edx
lea edi, [ecx + ebx]
xor esi, esi
mov dword [esp + 0x18], esi
sub edi, ebx
mov byte [esp + 0x34], 0
push 0xffffffffffffffff
push edi
mov edx, str.Include
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
je 0x4329ef
push 0xffffffffffffffff
push edi
mov edx, str.IncludeAgain
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
sete byte [esp + 0x34]
test eax, eax
je 0x4329ef
push 0xffffffffffffffff
push edi
mov edx, str.NoEnv
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x43145e
mov dword [0x4f9b88], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
mov esi, edi
nop dword [eax + eax]
mov al, byte [esi]
cmp al, 0x20
je 0x43142a
cmp al, 9
jne 0x43142d
inc esi
jmp 0x431420
mov dword [esp + 0x18], esi
test al, al
je 0x43139f
cmp al, ah
jne 0x4313a5
mov al, byte [esi + 1]
inc esi
cmp al, 0x20
je 0x431441
cmp al, 9
je 0x431441
mov dword [esp + 0x18], esi
test al, al
jne 0x4313a5
jmp 0x43139f
push 0xffffffffffffffff
push edi
mov edx, str.NoTrayIcon
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x43148d
mov byte [0x4fc2a9], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.Persistent
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x4314bc
mov byte [0x4fb979], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.SingleInstance
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x431576
mov dword [0x4fb98c], 1
test esi, esi
je 0x431407
push str.Force
push esi
call fcn.004c408e
add esp, 8
test eax, eax
jne 0x431516
mov dword [0x4fb98c], 2
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push str.Ignore
push esi
call fcn.004c408e
add esp, 8
test eax, eax
jne 0x431544
mov dword [0x4fb98c], 3
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0x4e8db0
push esi
call fcn.004c408e
add esp, 8
test eax, eax
jne 0x431407
mov dword [0x4fb98c], 4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.InstallKeybdHook
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x4315a5
or byte [0x4fc3ef], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.InstallMouseHook
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x4315d4
or byte [0x4fc3ef], 2
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.UseHook
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x431670
test esi, esi
je 0x431657
cmp byte [esi], al
je 0x431657
push 0x4e8dac
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x431657
push 0x4e37f8
push esi
call fcn.004c4262
add esp, 8
test eax, eax
je 0x431657
push 0x4e8db0
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x43163e
push 0x4e33f8
push esi
call fcn.004c4262
add esp, 8
test eax, eax
jne 0x431657
xor al, al
mov byte [0x4fba01], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
mov al, 1
mov byte [0x4fba01], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, 0x4e8498
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x43176f
test esi, esi
je 0x43189d
mov edi, dword [0x4fc298]
test edi, edi
je 0x4316bb
nop dword [eax]
push dword [edi + 4]
push esi
call fcn.004c4262
add esp, 8
test eax, eax
je 0x43174f
mov edi, dword [edi + 0x10]
test edi, edi
jne 0x4316a0
mov dword [0x4fc2a4], 0
mov eax, dword [0x4f898c]
mov ecx, ebp
push 0
push 0
push 0
mov edi, dword [eax + 0x94]
push 0x4e3371
push 0
push 0xe5
mov dword [eax + 0x94], 0
push esi
mov byte [ebp + 0x25], 1
call fcn.00433390
test eax, eax
je 0x432cc6
mov eax, dword [0x4f898c]
mov byte [ebp + 0x25], 0
mov dword [eax + 0x94], edi
mov esi, dword [ebp + 0x354]
call fcn.00413ac0
mov dword [0x4fc2a4], eax
test eax, eax
je 0x432cc6
mov byte [eax], 5
mov dword [eax + 0xc], esi
mov ecx, dword [esi + 8]
mov ecx, dword [ecx + 4]
mov dword [eax + 4], ecx
mov dword [eax + 8], 0x4e3371
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
mov dword [0x4fc2a4], edi
test edi, edi
je 0x4316c5
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.IfTimeout
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x431817
test esi, esi
je 0x431407
mov ecx, esi
mov al, byte [ecx]
cmp al, 0x20
je 0x43179d
cmp al, 9
jne 0x4317a0
inc ecx
jmp 0x431793
test al, al
je 0x4317f7
cmp al, 0x2d
je 0x4317ac
cmp al, 0x2b
jne 0x4317b3
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x4317f7
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x4317c2
cmp al, 0x58
jne 0x4317f7
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x4317f7
push 0x10
push 0
push esi
call fcn.004c4c8d
mov dword [0x4f9b74], eax
add esp, 0xc
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push esi
call fcn.004c4db1
mov dword [0x4f9b74], eax
add esp, 4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 6
push str.IfWin
push ebx
call fcn.004c4e4b
add esp, 0xc
test eax, eax
jne 0x431a0b
push 3
lea eax, [ebx + 6]
push 0x4e8e88
push eax
call fcn.004c4e4b
add esp, 0xc
mov edx, 9
test eax, eax
sete cl
test eax, eax
mov byte [esp + 0x12], cl
mov ecx, 6
cmove ecx, edx
push 6
push str.Active
lea edi, [ecx + ebx]
push edi
call fcn.004c4e4b
add esp, 0xc
test eax, eax
jne 0x431877
inc byte [esp + 0x12]
jmp 0x431899
push 5
push str.Exist
push edi
call fcn.004c4e4b
add esp, 0xc
test eax, eax
jne 0x4319f9
mov al, byte [esp + 0x12]
add al, 3
mov byte [esp + 0x12], al
test esi, esi
jne 0x4318b9
mov dword [0x4fc2a4], 0
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
mov ah, byte [0x4f9b6f]
xor ebp, ebp
mov ch, byte [0x4f9b6e]
mov edx, esi
nop dword [eax]
mov al, byte [edx]
test al, al
je 0x431936
mov cl, al
nop dword [eax + eax]
mov al, cl
cmp cl, byte [0x4f9b6d]
je 0x431900
cmp cl, ah
je 0x4318fc
cmp cl, ch
je 0x4318fc
mov al, byte [edx + 1]
inc edx
mov cl, al
test al, al
jne 0x4318e0
test al, al
je 0x431936
cmp al, ch
je 0x43191a
cmp al, ah
jne 0x431911
test ebp, ebp
jne 0x43191a
mov ebp, edx
inc edx
jmp 0x4318d0
inc edx
cmp byte [edx], 0
je 0x431936
inc edx
jmp 0x4318d0
mov ecx, dword [esp + 0x14]
push ebx
push str.Literal_commas_and_percent_signs_must_be_escaped__e.g.____
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
test ebp, ebp
je 0x4319b1
lea edi, [ebp + 1]
nop dword [eax]
mov al, byte [edi]
cmp al, 0x20
je 0x43194a
cmp al, 9
jne 0x43194d
inc edi
jmp 0x431940
mov byte [ebp], 0
sub ebp, esi
cmp byte [esi], 0
je 0x4319a3
cmp ebp, 0xffffffff
jne 0x43196c
mov ebp, esi
lea ecx, [ebp + 1]
mov al, byte [ebp]
inc ebp
test al, al
jne 0x431962
sub ebp, ecx
lea eax, [ebp - 1]
add eax, esi
mov cl, byte [eax]
cmp cl, 0x20
je 0x43197d
cmp cl, 9
jne 0x431984
cmp eax, esi
je 0x431996
dec eax
jmp 0x431971
push 1
mov ecx, edi
mov byte [eax + 1], 0
call fcn.004adb40
add esp, 4
jmp 0x4319b6
cmp cl, 0x20
je 0x4319a0
cmp cl, 9
jne 0x4319a3
mov byte [eax], 0
push 1
mov ecx, edi
call fcn.004adb40
add esp, 4
jmp 0x4319b6
mov edi, 0x4e3371
push 1
mov ecx, esi
call fcn.004adb40
mov cl, byte [esp + 0x16]
add esp, 4
mov edx, esi
push edi
call fcn.004137e0
add esp, 4
test eax, eax
jne 0x431407
mov ecx, dword [esp + 0x14]
push 0x4e3371
push str.Out_of_memory.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
mov eax, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, 0x4ebec8
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x431b3b
test esi, esi
je 0x431407
mov edx, str.EndChars
mov ecx, esi
call fcn.004abe60
mov edi, eax
test edi, edi
je 0x431ab8
mov dl, byte [edi]
test dl, dl
je 0x431407
nop dword [eax]
mov ecx, 0x4ebed4
mov al, 9
cmp dl, al
je 0x431a7d
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x431a57
mov dl, byte [edi + 1]
inc edi
test dl, dl
jne 0x431a50
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0x64
lea eax, [edi + 1]
push eax
push str._____:____.___n__t
call fcn.004cc440
add esp, 0xc
mov byte [0x4f9b6c], 0
mov ecx, str._____:____.___n__t
push 0
call fcn.004adb40
mov eax, 3
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 7
push str.NoMouse
push esi
call fcn.004c4e4b
add esp, 0xc
test eax, eax
jne 0x431ae3
mov byte [0x4f9b04], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0x4fb978
push 0x4fba03
push 0x4fbaf8
push 0x4f9b05
push 0x4fbafb
push 0x4fbaf9
push 0x4f9b06
push 0x4f9b07
push 0x4fbafa
push 0x4f9b70
push 0x4fbafc
mov edx, 0x4fbb00
mov ecx, esi
call fcn.00416c10
add esp, 0x2c
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.HotkeyModifierTimeout
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x431be4
test esi, esi
je 0x431407
mov ecx, esi
nop
mov al, byte [ecx]
cmp al, 0x20
je 0x431b6a
cmp al, 9
jne 0x431b6d
inc ecx
jmp 0x431b60
test al, al
je 0x431bc4
cmp al, 0x2d
je 0x431b79
cmp al, 0x2b
jne 0x431b80
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x431bc4
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x431b8f
cmp al, 0x58
jne 0x431bc4
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x431bc4
push 0x10
push 0
push esi
call fcn.004c4d25
mov dword [0x4f9b8c], eax
add esp, 0xc
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push esi
call fcn.004c4df6
mov dword [0x4f9b8c], eax
add esp, 4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.HotkeyInterval
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x431c8a
test esi, esi
je 0x431407
mov ecx, esi
mov al, byte [ecx]
cmp al, 0x20
je 0x431c12
cmp al, 9
jne 0x431c15
inc ecx
jmp 0x431c08
test al, al
je 0x431c57
cmp al, 0x2d
je 0x431c21
cmp al, 0x2b
jne 0x431c28
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x431c57
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x431c37
cmp al, 0x58
jne 0x431c57
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x431c57
push 0x10
push 0
push esi
call fcn.004c4d25
add esp, 0xc
jmp 0x431c60
push esi
call fcn.004c4df6
add esp, 4
mov dword [0x4f9b78], eax
cmp eax, 0xa
jge 0x431407
mov dword [0x4f9b78], 0xa
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxHotkeysPerInterval
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x431d32
test esi, esi
je 0x431407
mov ecx, esi
nop
mov al, byte [ecx]
cmp al, 0x20
je 0x431cba
cmp al, 9
jne 0x431cbd
inc ecx
jmp 0x431cb0
test al, al
je 0x431cff
cmp al, 0x2d
je 0x431cc9
cmp al, 0x2b
jne 0x431cd0
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x431cff
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x431cdf
cmp al, 0x58
jne 0x431cff
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x431cff
push 0x10
push 0
push esi
call fcn.004c4d25
add esp, 0xc
jmp 0x431d08
push esi
call fcn.004c4df6
add esp, 4
mov dword [0x4f9b7c], eax
cmp eax, 1
jge 0x431407
mov dword [0x4f9b7c], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxThreadsPerHotkey
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x431df0
test esi, esi
je 0x431407
mov ecx, esi
mov al, byte [ecx]
cmp al, 0x20
je 0x431d60
cmp al, 9
jne 0x431d63
inc ecx
jmp 0x431d56
test al, al
je 0x431da5
cmp al, 0x2d
je 0x431d6f
cmp al, 0x2b
jne 0x431d76
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x431da5
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x431d85
cmp al, 0x58
jne 0x431da5
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x431da5
push 0x10
push 0
push esi
call fcn.004c4d25
add esp, 0xc
jmp 0x431dae
push esi
call fcn.004c4df6
add esp, 4
cmp eax, 0xff
jle 0x431dd1
mov eax, 0xff
mov byte [0x4f9b80], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
mov ecx, 1
cmp eax, ecx
cmovl eax, ecx
mov byte [0x4f9b80], al
lea eax, [ecx + 2]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxThreadsBuffer
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x431e8c
test esi, esi
je 0x431e73
cmp byte [esi], al
je 0x431e73
push 0x4e8dac
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x431e73
push 0x4e37f8
push esi
call fcn.004c4262
add esp, 8
test eax, eax
je 0x431e73
push 0x4e8db0
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x431e5a
push 0x4e33f8
push esi
call fcn.004c4262
add esp, 8
test eax, eax
jne 0x431e73
xor al, al
mov byte [0x4fbb72], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
mov al, 1
mov byte [0x4fbb72], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxThreads
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x431f4a
test esi, esi
je 0x431407
mov ecx, esi
mov al, byte [ecx]
cmp al, 0x20
je 0x431eba
cmp al, 9
jne 0x431ebd
inc ecx
jmp 0x431eb0
test al, al
je 0x431eff
cmp al, 0x2d
je 0x431ec9
cmp al, 0x2b
jne 0x431ed0
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x431eff
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x431edf
cmp al, 0x58
jne 0x431eff
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x431eff
push 0x10
push 0
push esi
call fcn.004c4d25
add esp, 0xc
jmp 0x431f08
push esi
call fcn.004c4df6
add esp, 4
cmp eax, 0xff
jle 0x431f2b
mov eax, 0xff
mov dword [0x4f8988], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
mov ecx, 1
cmp eax, ecx
cmovl eax, ecx
mov dword [0x4f8988], eax
lea eax, [ecx + 2]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.ClipboardTimeout
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x431ff4
test esi, esi
je 0x431407
mov ecx, esi
nop
mov al, byte [ecx]
cmp al, 0x20
je 0x431f7a
cmp al, 9
jne 0x431f7d
inc ecx
jmp 0x431f70
test al, al
je 0x431fd4
cmp al, 0x2d
je 0x431f89
cmp al, 0x2b
jne 0x431f90
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x431fd4
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x431f9f
cmp al, 0x58
jne 0x431fd4
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x431fd4
push 0x10
push 0
push esi
call fcn.004c4d25
mov dword [0x4f8998], eax
add esp, 0xc
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push esi
call fcn.004c4df6
mov dword [0x4f8998], eax
add esp, 4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.LTrim
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x432090
test esi, esi
je 0x432077
cmp byte [esi], al
je 0x432077
push 0x4e8dac
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x432077
push 0x4e37f8
push esi
call fcn.004c4262
add esp, 8
test eax, eax
je 0x432077
push 0x4e8db0
push esi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x43205e
push 0x4e33f8
push esi
call fcn.004c4262
add esp, 8
test eax, eax
jne 0x432077
xor al, al
mov byte [0x4fba02], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
mov al, 1
mov byte [0x4fba02], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.WinActivateForce
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x4320bf
mov byte [0x4fc2c4], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.ErrorStdOut
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x4320fb
mov ecx, esi
mov byte [ebp + 0x633], 1
call fcn.0042b850
mov dword [ebp + 0x634], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxMem
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x432164
test esi, esi
je 0x431407
mov ecx, esi
call fcn.00428cb0
movsd xmm1, qword [0x4f13f8]
maxsd xmm1, xmm0
movsd xmm0, qword [0x4f1438]
minsd xmm0, xmm1
mulsd xmm0, qword [0x4f1430]
mulsd xmm0, qword [0x4f1430]
call fcn.004dbcd0
mov dword [0x4f9b84], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.KeyHistory
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x43222c
test esi, esi
je 0x431407
mov ecx, esi
mov al, byte [ecx]
cmp al, 0x20
je 0x432192
cmp al, 9
jne 0x432195
inc ecx
jmp 0x432188
test al, al
je 0x4321d7
cmp al, 0x2d
je 0x4321a1
cmp al, 0x2b
jne 0x4321a8
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x4321d7
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x4321b7
cmp al, 0x58
jne 0x4321d7
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x4321d7
push 0x10
push 0
push esi
call fcn.004c4d25
add esp, 0xc
jmp 0x4321e0
push esi
call fcn.004c4df6
add esp, 4
mov dword [0x4f8990], eax
test eax, eax
jns 0x432205
mov dword [0x4f8990], 0
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
cmp eax, 0x1f4
jle 0x431407
mov dword [0x4f8990], 0x1f4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.CommentFlag
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x432301
test esi, esi
je 0x431407
cmp byte [esi + 1], al
jne 0x4322c1
mov al, byte [esi]
cmp al, 0x23
je 0x432541
cmp al, byte [0x4f9b6e]
je 0x432541
cmp al, byte [0x4f9b6d]
je 0x432541
cmp al, byte [0x4f9b6f]
je 0x432541
cmp al, 0x21
je 0x432541
cmp al, 0x5e
je 0x432541
cmp al, 0x2b
je 0x432541
cmp al, 0x24
je 0x432541
cmp al, 0x7e
je 0x432541
cmp al, 0x2a
je 0x432541
cmp al, 0x3c
je 0x432541
cmp al, 0x3e
je 0x432541
push 0xf
push esi
push 0x4fa388
call fcn.004cc440
mov ecx, 0x4fa388
mov byte [0x4fa397], 0
add esp, 0xc
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4322e0
sub ecx, edx
mov eax, 3
mov dword [0x4fa398], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.EscapeChar
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x432375
test esi, esi
je 0x431407
mov al, byte [esi]
cmp al, 0x23
je 0x432541
cmp al, byte [0x4f9b6e]
je 0x432541
cmp al, byte [0x4f9b6f]
je 0x432541
cmp al, 0x2e
je 0x432541
cmp dword [0x4fa398], 1
jne 0x43235e
cmp al, byte [0x4fa388]
je 0x432541
mov byte [0x4f9b6d], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.DerefChar
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x4323e1
test esi, esi
je 0x431407
mov al, byte [esi]
cmp al, byte [0x4f9b6d]
je 0x432541
cmp al, byte [0x4f9b6f]
je 0x432541
cmp al, 0x2e
je 0x432541
cmp dword [0x4fa398], 1
jne 0x4323ca
cmp al, byte [0x4fa388]
je 0x432541
mov byte [0x4f9b6e], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, 0x4ebfc4
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x432455
test esi, esi
je 0x431407
mov al, byte [esi]
cmp al, 0x23
je 0x432541
cmp al, byte [0x4f9b6d]
je 0x432541
cmp al, byte [0x4f9b6e]
je 0x432541
cmp al, 0x2e
je 0x432541
cmp dword [0x4fa398], 1
jne 0x43243e
cmp al, byte [0x4fa388]
je 0x432541
mov byte [0x4f9b6f], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MenuMaskKey
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x4324ba
test esi, esi
je 0x432495
push eax
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
push eax
push 0
push 0x4f9b90
mov edx, 0x4f9b82
mov ecx, esi
call fcn.0041dac0
add esp, 0xc
test al, al
jne 0x431407
test esi, esi
mov ecx, str.Parameter_1_required
mov eax, str.Parameter_1_invalid.
cmove eax, ecx
mov ecx, ebp
push ebx
push eax
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.InputLevel
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x432574
test esi, esi
je 0x43255b
mov ecx, esi
nop
mov al, byte [ecx]
cmp al, 0x20
je 0x4324ea
cmp al, 9
jne 0x4324ed
inc ecx
jmp 0x4324e0
test al, al
je 0x43252f
cmp al, 0x2d
je 0x4324f9
cmp al, 0x2b
jne 0x432500
lea eax, [ecx + 1]
mov ecx, eax
mov al, byte [eax]
cmp al, 0x30
jne 0x43252f
mov al, byte [ecx + 1]
cmp al, 0x78
je 0x43250f
cmp al, 0x58
jne 0x43252f
movsx eax, byte [ecx + 2]
push eax
call fcn.004c4410
add esp, 4
test eax, eax
je 0x43252f
push 0x10
push 0
push esi
call fcn.004c4d25
add esp, 0xc
jmp 0x432538
push esi
call fcn.004c4df6
add esp, 4
test eax, eax
js 0x432541
cmp eax, 0x64
jle 0x43255d
push ebx
push str.Parameter_1_invalid.
mov ecx, ebp
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
xor eax, eax
mov byte [0x4fbb71], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.WarnContinuableException
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x4325d2
test esi, esi
je 0x4325b9
push 0x4e8db0
push esi
call fcn.004c408e
add esp, 8
test eax, eax
jne 0x4325b9
xor al, al
mov byte [0x4f9b81], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
mov al, 1
mov byte [0x4f9b81], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.Warn
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x43274b
movsx eax, byte [0x4f9b6f]
test esi, esi
mov edi, 0x4e3371
cmovne edi, esi
push eax
push edi
call fcn.004ca733
mov ecx, eax
add esp, 8
mov ebp, 0x4e3371
test ecx, ecx
je 0x432645
lea ebp, [ecx + 1]
mov al, byte [ebp]
cmp al, 0x20
je 0x432620
cmp al, 9
jne 0x432623
inc ebp
jmp 0x432615
lea eax, [ecx - 1]
cmp eax, edi
jbe 0x432641
nop word [eax + eax]
mov cl, byte [eax]
cmp cl, 0x20
je 0x43263c
cmp cl, 9
jne 0x432641
dec eax
cmp eax, edi
ja 0x432630
mov byte [eax + 1], 0
cmp byte [edi], 0
mov esi, 6
je 0x432687
xor esi, esi
push dword [esi*4 + 0x4ee0f4]
push edi
call fcn.004c408e
add esp, 8
test eax, eax
je 0x432687
inc esi
cmp esi, 7
jne 0x432651
mov ecx, dword [esp + 0x14]
push ebx
push str.Parameter_1_invalid.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
cmp byte [ebp], 0
mov edi, 2
je 0x4326d6
xor edi, edi
nop dword [eax]
nop dword [eax + eax]
push dword [edi*4 + 0x4ee0e4]
push ebp
call fcn.004c408e
add esp, 8
test eax, eax
je 0x4326d6
inc edi
cmp edi, 4
jne 0x4326a0
mov ecx, dword [esp + 0x14]
push ebp
push str.Parameter_2_invalid.
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
test esi, esi
je 0x4326df
cmp esi, 6
jne 0x4326e5
mov dword [0x4fc2c0], edi
cmp esi, 1
je 0x4326ef
cmp esi, 6
jne 0x4326f5
mov dword [0x4fc2bc], edi
cmp esi, 3
je 0x4326ff
cmp esi, 6
jne 0x432705
mov dword [0x4fc2b8], edi
cmp esi, 2
je 0x43270f
cmp esi, 6
jne 0x432715
mov dword [0x4fc2b4], edi
cmp esi, 4
je 0x43271f
cmp esi, 6
jne 0x432725
mov dword [0x4fc2b0], edi
cmp esi, 5
je 0x432733
cmp esi, 6
jne 0x431407
mov dword [0x4fc2ac], edi
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.Requires
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x43283e
test esi, esi
jne 0x432787
push 0x4e3371
push str.Parameter_1_required
mov ecx, ebp
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xa
push str.AutoHotkey
push esi
xor bl, bl
call fcn.004c4e4b
add esp, 0xc
test eax, eax
jne 0x4327f5
mov al, byte [esi + 0xa]
test al, al
je 0x431407
cmp al, 0x20
je 0x4327b0
cmp al, 9
jne 0x4327f5
lea edi, [esi + 0xb]
mov al, byte [edi]
cmp al, 0x20
je 0x4327bd
cmp al, 9
jne 0x4327c0
inc edi
jmp 0x4327b3
cmp al, 0x76
jne 0x4327c5
inc edi
push 3
push str.1.1.33.10
push edi
call fcn.004cc747
add esp, 0xc
test eax, eax
jne 0x4327f3
mov al, byte [edi + 3]
test al, al
je 0x4327e4
cmp al, 0x2e
jne 0x4327f3
mov ecx, edi
call fcn.004adf90
test eax, eax
jle 0x431407
mov bl, 1
mov ecx, 0x4e3371
test bl, bl
mov eax, str.__but_you_have_v1.1.33.10
cmove eax, ecx
push eax
push esi
push str.This_script_requires__s_s.
lea eax, [esp + 0x14c]
push 0x64
push eax
call fcn.004aba90
add esp, 0x14
lea eax, [esp + 0x140]
mov ecx, ebp
push 0x4e3371
push eax
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.WindowClassMain
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x4328ff
test esi, esi
je 0x431407
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x432865
sub ecx, edx
lea edi, [ecx*2 + 2]
lea eax, [edi - 1]
cmp eax, 0x7fff
ja 0x4328d3
cmp dword [0x4fd1cc], 0
jne 0x432896
call fcn.004a8b90
mov dword [0x4fd1cc], eax
test eax, eax
je 0x4328d3
mov edx, dword [0x4fd1c8]
cmp edi, dword [edx + 8]
jbe 0x4328b3
call fcn.004a8b90
mov edx, dword [0x4fd1c8]
mov dword [edx + 0xc], eax
test eax, eax
je 0x4328d3
mov ecx, dword [edx + 4]
mov eax, edi
mov dword [0x4fd1c4], ecx
and eax, 3
je 0x4328c8
sub edi, eax
add edi, 4
sub dword [edx + 8], edi
lea eax, [ecx + edi]
mov dword [edx + 4], eax
jmp 0x4328d5
xor ecx, ecx
mov dword [str.AutoHotkey], ecx
sub ecx, esi
nop dword [eax]
mov al, byte [esi]
lea esi, [esi + 1]
mov byte [ecx + esi - 1], al
test al, al
jne 0x4328e0
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.WindowClassGui
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x4329bf
test esi, esi
je 0x431407
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x432926
sub ecx, edx
lea edi, [ecx*2 + 2]
lea eax, [edi - 1]
cmp eax, 0x7fff
ja 0x432994
cmp dword [0x4fd1cc], 0
jne 0x432957
call fcn.004a8b90
mov dword [0x4fd1cc], eax
test eax, eax
je 0x432994
mov edx, dword [0x4fd1c8]
cmp edi, dword [edx + 8]
jbe 0x432974
call fcn.004a8b90
mov edx, dword [0x4fd1c8]
mov dword [edx + 0xc], eax
test eax, eax
je 0x432994
mov ecx, dword [edx + 4]
mov eax, edi
mov dword [0x4fd1c4], ecx
and eax, 3
je 0x432989
sub edi, eax
add edi, 4
sub dword [edx + 8], edi
lea eax, [edi + ecx]
mov dword [edx + 4], eax
jmp 0x432996
xor ecx, ecx
mov dword [str.AutoHotkeyGUI], ecx
sub ecx, esi
nop
mov al, byte [esi]
lea esi, [esi + 1]
mov byte [ecx + esi - 1], al
test al, al
jne 0x4329a0
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0xffffffffffffffff
push edi
mov edx, 0x4ec078
mov ecx, ebx
call fcn.004abb40
add esp, 8
test eax, eax
jne 0x4319f9
mov edx, ebx
mov ecx, esi
call fcn.004ae0c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
test esi, esi
jne 0x432a0d
push ebx
push str.Parameter_1_required
mov ecx, ebp
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
cmp byte [esi], 0x2a
jne 0x432a59
movzx eax, byte [esi + 1]
mov dword [esp + 0x24], eax
test eax, 0xffffff80
jne 0x432a37
push 2
push eax
call fcn.004c7451
add esp, 8
test eax, eax
mov eax, dword [esp + 0x24]
je 0x432a37
and eax, 0xffffffdf
cmp al, 0x49
jne 0x432a59
mov al, byte [esi + 2]
add esi, 2
mov byte [esp + 0x24], 1
mov dword [esp + 0x18], esi
cmp al, 0x20
je 0x432a52
cmp al, 9
jne 0x432a60
inc esi
mov dword [esp + 0x18], esi
jmp 0x432a5e
mov byte [esp + 0x24], 0
mov al, byte [esi]
cmp al, 0x3c
jne 0x432b41
push 0x3e
push esi
call fcn.004ca733
mov edi, eax
add esp, 8
test edi, edi
je 0x432b41
cmp byte [edi + 1], 0
jne 0x432b41
lea eax, [esp + 0x38]
mov byte [edi], 0
push eax
push 0x104
inc esi
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
test eax, eax
je 0x432b26
lea eax, [esp + 0x38]
push eax
call fcn.004cb5c0
add esp, 4
mov ebp, eax
lea eax, [esp + 0x13]
mov ecx, edi
sub ecx, esi
push 0
push eax
lea eax, [esp + 0x1a]
push eax
push ecx
mov ecx, dword [esp + 0x24]
push esi
call fcn.0043c570
test ebp, ebp
je 0x432ae1
push ebp
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
push ebp
call fcn.004c4247
add esp, 4
mov ebp, dword [esp + 0x14]
mov al, byte [esp + 0x12]
test al, al
jne 0x432b01
cmp byte [esp + 0x13], al
jne 0x431407
cmp byte [esp + 0x24], al
jne 0x431407
mov byte [edi], 0x3e
test al, al
jne 0x432cc6
push ebx
push str.Function_library_not_found.
mov ecx, ebp
call fcn.0044dd10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push 0
lea eax, [esp + 0x17]
mov ecx, ebp
push eax
lea eax, [esp + 0x1a]
push eax
mov eax, edi
sub eax, esi
push eax
push esi
call fcn.0043c570
jmp 0x432ae5
mov dl, byte [0x4f9b6e]
xor edi, edi
xor eax, eax
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x20]
mov dword [esp + 0x2c], eax
test eax, eax
je 0x432b83
lea eax, [edi + 1]
push eax
call fcn.004c4e35
mov ebx, eax
add esp, 4
mov dword [esp + 0x30], ebx
test ebx, ebx
je 0x432cc6
mov dl, byte [0x4f9b6e]
mov ecx, ebx
mov dword [esp + 0x1c], ecx
jmp 0x432b8d
mov ecx, dword [esp + 0x1c]
xor edi, edi
mov dword [esp + 0x20], edi
mov al, byte [esi]
mov ebp, esi
test al, al
je 0x432c7b
mov esi, dword [esp + 0x20]
nop dword [eax]
cmp al, dl
jne 0x432c44
lea ecx, [ebp + 1]
mov edi, ecx
mov al, byte [edi]
test al, al
je 0x432bc8
mov cl, al
mov al, cl
cmp cl, dl
je 0x432bc5
mov al, byte [edi + 1]
inc edi
mov cl, al
test al, al
jne 0x432bb5
lea ecx, [ebp + 1]
mov ebx, edi
sub ebx, ebp
dec ebx
test al, al
je 0x432c44
test ebx, ebx
je 0x432c44
cmp ebx, 0xfd
ja 0x432c44
push ebx
push ecx
lea eax, [esp + 0x40]
push eax
call fcn.004cc440
add esp, 0xc
mov byte [esp + ebx + 0x38], 0
lea ecx, [esp + 0x38]
call fcn.0043fa70
test eax, eax
je 0x432c3e
cmp dword [esp + 0x2c], 0
lea ecx, [esp + 0x38]
mov eax, dword [eax + 4]
push ecx
je 0x432c27
mov ebx, dword [esp + 0x20]
push ebx
call eax
mov dl, byte [0x4f9b6e]
add esp, 8
add ebx, eax
mov ebp, edi
mov dword [esp + 0x1c], ebx
jmp 0x432c63
push 0
call eax
mov dl, byte [0x4f9b6e]
add esp, 8
add esi, eax
mov ebp, edi
mov dword [esp + 0x20], esi
jmp 0x432c63
mov dl, byte [0x4f9b6e]
cmp dword [esp + 0x2c], 0
je 0x432c5b
mov ecx, dword [esp + 0x1c]
mov al, byte [ebp]
mov byte [ecx], al
inc ecx
mov dword [esp + 0x1c], ecx
jmp 0x432c67
inc dword [esp + 0x20]
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov al, byte [ebp + 1]
inc ebp
test al, al
jne 0x432ba0
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x2c]
inc eax
mov dword [esp + 0x2c], eax
cmp eax, 2
jl 0x432b57
mov edi, dword [esp + 0x30]
push edi
mov byte [ecx], 0
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x432cd5
test al, 0x10
je 0x432cd5
mov ecx, edi
call fcn.00461a80
push edi
call fcn.004c4247
mov eax, 3
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4
push dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
push dword [esp + 0x38]
push edi
call fcn.0042e880
neg eax
push edi
sbb esi, esi
and esi, 3
call fcn.004c4247
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x198
ret 4