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

Disassembly:
sub esp, 0x238
push ebx
mov ebx, dword [esp + 0x240]
xor eax, eax
mov dword [esp + 8], ecx
mov dword [esp + 0x30], 0x90020
mov word [esp + 0x36], ax
push ebp
mov bp, word [0x51cbe0]
mov word [esp + 0x38], bp
push esi
push edi
mov edi, ebx
test ebx, ebx
je 0x4318d5
movzx eax, word [ebx]
test ax, ax
je 0x4318d5
mov esi, eax
lea ecx, [esp + 0x3c]
mov edx, 0x20
nop dword [eax]
cmp si, dx
je 0x43196e
movzx eax, word [ecx + 2]
add ecx, 2
mov edx, eax
test ax, ax
jne 0x4318b0
movzx eax, word [edi + 2]
add edi, 2
mov esi, eax
test ax, ax
jne 0x4318a0
mov ecx, ebx
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4318e0
sub ecx, edx
sar ecx, 1
lea edi, [ebx + ecx*2]
xor esi, esi
mov dword [esp + 0x18], esi
sub edi, ebx
mov byte [esp + 0x38], 0
sar edi, 1
mov edx, str.Include
push 0xffffffffffffffff
push edi
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
je 0x432b72
push 0xffffffffffffffff
push edi
mov edx, str.IncludeAgain
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
sete byte [esp + 0x38]
test eax, eax
je 0x432b72
push 0xffffffffffffffff
push edi
mov edx, str.NoEnv
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x4319bd
mov dword [0x51cbf4], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
mov esi, edi
movzx eax, word [esi]
mov ecx, eax
cmp eax, 0x20
je 0x43197f
cmp eax, 9
jne 0x431984
add esi, 2
jmp 0x431970
mov dword [esp + 0x18], esi
test ax, ax
je 0x4318f2
cmp cx, bp
jne 0x4318f8
movzx eax, word [esi + 2]
add esi, 2
cmp eax, 0x20
je 0x43199a
cmp eax, 9
je 0x43199a
mov dword [esp + 0x18], esi
test ax, ax
jne 0x4318f8
jmp 0x4318f2
push 0xffffffffffffffff
push edi
mov edx, str.NoTrayIcon
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x4319ec
mov byte [0x51eb87], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.Persistent
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x431a1b
mov byte [0x51eae9], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.SingleInstance
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x431ad5
mov dword [0x51eafc], 1
test esi, esi
je 0x43195c
push str.Force
push esi
call fcn.004ce516
add esp, 8
test eax, eax
jne 0x431a75
mov dword [0x51eafc], 2
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push str.Ignore
push esi
call fcn.004ce516
add esp, 8
test eax, eax
jne 0x431aa3
mov dword [0x51eafc], 3
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0x5068e8
push esi
call fcn.004ce516
add esp, 8
test eax, eax
jne 0x43195c
mov dword [0x51eafc], 4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.InstallKeybdHook
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x431b04
or byte [0x51f5e7], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.InstallMouseHook
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x431b33
or byte [0x51f5e7], 2
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.UseHook
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x431b8d
test esi, esi
je 0x431b74
xor edx, edx
mov ecx, esi
call fcn.004140c0
cmp eax, 2
jne 0x431b74
xor al, al
mov byte [0x51eb5f], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
mov al, 1
mov byte [0x51eb5f], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, 0x505790
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x431c51
test esi, esi
je 0x431d0d
mov ecx, esi
call fcn.00414690
mov dword [0x51f4a4], eax
test eax, eax
jne 0x43195c
mov eax, dword [0x51b98c]
mov ebx, dword [esp + 0x14]
mov ecx, ebx
push 0
push 0
mov edi, dword [eax + 0xb4]
push 0
push 0x4f03e8
push 0
push 0xe5
mov dword [eax + 0xb4], 0
push esi
mov byte [ebx + 0x25], 1
call fcn.004333e0
test eax, eax
je 0x432e64
mov eax, dword [0x51b98c]
mov byte [ebx + 0x25], 0
mov dword [eax + 0xb4], edi
mov esi, dword [ebx + 0x614]
call fcn.00414610
mov dword [0x51f4a4], eax
test eax, eax
je 0x432e64
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], 0x4f03e8
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.IfTimeout
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x431c8d
test esi, esi
je 0x43195c
mov ecx, esi
call fcn.00405350
mov dword [0x51cbe4], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 6
push str.IfWin
push ebx
call fcn.004cff45
add esp, 0xc
test eax, eax
jne 0x431e64
push 3
lea eax, [ebx + 0xc]
push 0x506a84
push eax
call fcn.004cff45
add esp, 0xc
mov edx, 0x12
test eax, eax
mov edi, 0xc
sete cl
test eax, eax
push 6
cmove edi, edx
mov byte [esp + 0x17], cl
add edi, ebx
push str.Active
push edi
call fcn.004cff45
add esp, 0xc
test eax, eax
jne 0x431cec
inc byte [esp + 0x13]
jmp 0x431d09
push 5
push str.Exist
push edi
call fcn.004cff45
add esp, 0xc
test eax, eax
jne 0x431e52
add byte [esp + 0x13], 3
test esi, esi
jne 0x431d29
mov dword [0x51f4a4], 0
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
mov bp, word [0x51cbe0]
mov edi, esi
mov dword [esp + 0x1c], 0
nop word [eax + eax]
movzx eax, word [edi]
mov edx, eax
test ax, ax
je 0x431d80
mov ecx, eax
nop dword [eax]
movzx edx, cx
cmp cx, word [0x51cbd8]
je 0x431d85
movzx edx, cx
cmp cx, bp
je 0x431d80
movzx edx, cx
cmp cx, word [0x51cbdc]
je 0x431d80
movzx eax, word [edi + 2]
add edi, 2
mov ecx, eax
mov edx, eax
test ax, ax
jne 0x431d50
test dx, dx
je 0x431dcd
cmp dx, word [0x51cbdc]
je 0x431db1
cmp dx, bp
jne 0x431da3
cmp dword [esp + 0x1c], 0
jne 0x431db1
mov dword [esp + 0x1c], edi
add edi, 2
jmp 0x431d40
add edi, 2
cmp word [edi], 0
je 0x431dcd
add edi, 2
jmp 0x431d40
mov ecx, dword [esp + 0x14]
push ebx
push str.Literal_commas_and_percent_signs_must_be_escaped__e.g.____
call fcn.0044ddc0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
mov ecx, dword [esp + 0x1c]
test ecx, ecx
je 0x431e0a
lea edi, [ecx + 2]
movzx eax, word [edi]
cmp eax, 0x20
je 0x431de5
cmp eax, 9
jne 0x431dea
add edi, 2
jmp 0x431dd8
xor eax, eax
mov word [ecx], ax
sub ecx, esi
sar ecx, 1
mov edx, ecx
mov ecx, esi
call fcn.004298c0
push 1
mov ecx, edi
call fcn.004b1940
add esp, 4
jmp 0x431e0f
mov edi, 0x4f03e8
push 1
mov ecx, esi
call fcn.004b1940
mov cl, byte [esp + 0x17]
add esp, 4
mov edx, esi
push edi
call fcn.00414450
add esp, 4
test eax, eax
jne 0x43195c
mov ecx, dword [esp + 0x14]
push 0x4f03e8
push 0x504378
call fcn.0044ddc0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
mov eax, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, 0x50b338
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x431fb1
test esi, esi
je 0x43195c
mov edx, str.EndChars
mov ecx, esi
call fcn.004afb20
mov edi, eax
test edi, edi
je 0x431f2e
movzx eax, word [edi]
test ax, ax
je 0x43195c
mov esi, eax
nop word [eax + eax]
mov ecx, 0x50b350
mov edx, 9
nop word [eax + eax]
cmp si, dx
je 0x431ef3
movzx eax, word [ecx + 2]
add ecx, 2
mov edx, eax
test ax, ax
jne 0x431ec0
movzx eax, word [edi + 2]
add edi, 2
mov esi, eax
test ax, ax
jne 0x431eb0
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0x64
lea eax, [edi + 2]
push eax
push str._____:____.___n__t
call fcn.004d95fc
add esp, 0xc
xor eax, eax
mov ecx, str._____:____.___n__t
mov word [0x51cbd0], ax
push eax
call fcn.004b1940
mov eax, 3
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 7
push str.NoMouse
push esi
call fcn.004cff45
add esp, 0xc
test eax, eax
jne 0x431f59
mov byte [0x51cb04], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0x51eae8
push 0x51eb6f
push 0x51eb72
push 0x51cb05
push 0x51eb77
push 0x51eb73
push 0x51cb06
push 0x51cb07
push 0x51eb76
push 0x51cbd4
push 0x51eca8
mov edx, 0x51ecac
mov ecx, esi
call fcn.004176b0
add esp, 0x2c
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.HotkeyModifierTimeout
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x431fed
test esi, esi
je 0x43195c
mov ecx, esi
call fcn.00419340
mov dword [0x51cbf8], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.HotkeyInterval
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x43203c
test esi, esi
je 0x43195c
mov ecx, esi
call fcn.00419340
mov dword [0x51cbe8], eax
cmp eax, 0xa
jge 0x43195c
mov dword [0x51cbe8], 0xa
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxHotkeysPerInterval
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x43208b
test esi, esi
je 0x43195c
mov ecx, esi
call fcn.00419340
mov dword [0x51cbec], eax
cmp eax, 1
jge 0x43195c
mov dword [0x51cbec], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxThreadsPerHotkey
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x4320f2
test esi, esi
je 0x43195c
mov ecx, esi
call fcn.00419340
cmp eax, 0xff
jle 0x4320d3
mov eax, 0xff
mov byte [0x51cbd2], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
mov ecx, 1
cmp eax, ecx
cmovl eax, ecx
mov byte [0x51cbd2], al
lea eax, [ecx + 2]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxThreadsBuffer
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x43214c
test esi, esi
je 0x432133
xor edx, edx
mov ecx, esi
call fcn.004140c0
cmp eax, 2
jne 0x432133
xor al, al
mov byte [0x51eb82], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
mov al, 1
mov byte [0x51eb82], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxThreads
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x4321b3
test esi, esi
je 0x43195c
mov ecx, esi
call fcn.00419340
cmp eax, 0xff
jle 0x432194
mov eax, 0xff
mov dword [0x51b988], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
mov ecx, 1
cmp eax, ecx
cmovl eax, ecx
mov dword [0x51b988], eax
lea eax, [ecx + 2]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.ClipboardTimeout
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x4321ef
test esi, esi
je 0x43195c
mov ecx, esi
call fcn.00419340
mov dword [0x51b998], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.LTrim
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x432249
test esi, esi
je 0x432230
xor edx, edx
mov ecx, esi
call fcn.004140c0
cmp eax, 2
jne 0x432230
xor al, al
mov byte [0x51eb6e], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
mov al, 1
mov byte [0x51eb6e], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.WinActivateForce
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x432278
mov byte [0x51eb8e], 1
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.ErrorStdOut
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x4322b8
mov ebx, dword [esp + 0x14]
mov ecx, esi
mov byte [ebx + 0xafb], 1
call fcn.0042c220
mov dword [ebx + 0xafc], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MaxMem
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x432321
test esi, esi
je 0x43195c
mov ecx, esi
call fcn.00429920
movsd xmm1, qword [0x514a18]
maxsd xmm1, xmm0
movsd xmm0, qword [0x514a58]
minsd xmm0, xmm1
mulsd xmm0, qword [0x514a50]
mulsd xmm0, qword [0x514a50]
call fcn.004e8d30
mov dword [0x51cbf0], eax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.KeyHistory
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x432392
test esi, esi
je 0x43195c
mov ecx, esi
call fcn.00419340
mov dword [0x51b990], eax
test eax, eax
jns 0x43236b
mov dword [0x51b990], 0
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
cmp eax, 0x1f4
jle 0x43195c
mov dword [0x51b990], 0x1f4
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.CommentFlag
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x43247c
test esi, esi
je 0x43195c
cmp word [esi + 2], ax
jne 0x432435
movzx eax, word [esi]
cmp eax, 0x23
je 0x432675
cmp ax, word [0x51cbdc]
je 0x432675
cmp ax, word [0x51cbd8]
je 0x432675
cmp ax, word [0x51cbe0]
je 0x432675
cmp eax, 0x21
je 0x432675
cmp eax, 0x5e
je 0x432675
cmp eax, 0x2b
je 0x432675
cmp eax, 0x24
je 0x432675
cmp eax, 0x7e
je 0x432675
cmp eax, 0x2a
je 0x432675
cmp eax, 0x3c
je 0x432675
cmp eax, 0x3e
je 0x432675
push 0xf
push esi
push 0x51d3f8
call fcn.004d95fc
mov ecx, 0x51d3f8
add esp, 0xc
xor eax, eax
mov word [0x51d416], ax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x432455
sub ecx, edx
mov eax, 3
sar ecx, 1
mov dword [0x51d418], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.EscapeChar
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x4324f7
test esi, esi
je 0x43195c
movzx eax, word [esi]
cmp eax, 0x23
je 0x432675
cmp ax, word [0x51cbdc]
je 0x432675
cmp ax, word [0x51cbe0]
je 0x432675
cmp eax, 0x2e
je 0x432675
cmp dword [0x51d418], 1
jne 0x4324df
cmp ax, word [0x51d3f8]
je 0x432675
mov word [0x51cbd8], ax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.DerefChar
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x432569
test esi, esi
je 0x43195c
movzx eax, word [esi]
cmp ax, word [0x51cbd8]
je 0x432675
cmp ax, word [0x51cbe0]
je 0x432675
cmp eax, 0x2e
je 0x432675
cmp dword [0x51d418], 1
jne 0x432551
cmp ax, word [0x51d3f8]
je 0x432675
mov word [0x51cbdc], ax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, 0x50b51c
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x4325e4
test esi, esi
je 0x43195c
movzx eax, word [esi]
cmp eax, 0x23
je 0x432675
cmp ax, word [0x51cbd8]
je 0x432675
cmp ax, word [0x51cbdc]
je 0x432675
cmp eax, 0x2e
je 0x432675
cmp dword [0x51d418], 1
jne 0x4325cc
cmp ax, word [0x51d3f8]
je 0x432675
mov word [0x51cbe0], ax
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.MenuMaskKey
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x43264b
test esi, esi
je 0x432624
push eax
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
push eax
push 0
push 0x51cbfc
mov edx, 0x51cbda
mov ecx, esi
call fcn.0041e580
add esp, 0xc
test al, al
jne 0x43195c
test esi, esi
mov ecx, str.Parameter_1_required
mov eax, str.Parameter_1_invalid.
cmove eax, ecx
mov ecx, dword [esp + 0x14]
push ebx
push eax
call fcn.0044ddc0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.InputLevel
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x4326aa
test esi, esi
je 0x432691
mov ecx, esi
call fcn.00419340
test eax, eax
js 0x432675
cmp eax, 0x64
jle 0x432693
mov ecx, dword [esp + 0x14]
push ebx
push str.Parameter_1_invalid.
call fcn.0044ddc0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
xor eax, eax
mov byte [0x51eb7f], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.WarnContinuableException
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x432708
test esi, esi
je 0x4326ef
push 0x5068e8
push esi
call fcn.004ce516
add esp, 8
test eax, eax
jne 0x4326ef
xor al, al
mov byte [0x51cbd3], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
mov al, 1
mov byte [0x51cbd3], al
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.Warn
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x43289b
movzx eax, word [0x51cbe0]
test esi, esi
mov edi, 0x4f03e8
cmovne edi, esi
push eax
push edi
call fcn.004cbd94
mov ecx, eax
add esp, 8
mov ebp, 0x4f03e8
test ecx, ecx
je 0x43278a
lea ebp, [ecx + 2]
nop dword [eax + eax]
movzx eax, word [ebp]
cmp eax, 0x20
je 0x43275e
cmp eax, 9
jne 0x432763
add ebp, 2
jmp 0x432750
lea eax, [ecx - 2]
cmp eax, edi
jbe 0x432784
nop word [eax + eax]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x43277d
cmp ecx, 9
jne 0x432784
sub eax, 2
cmp eax, edi
ja 0x432770
xor ecx, ecx
mov word [eax + 2], cx
cmp word [edi], 0
mov esi, 6
je 0x4327d6
xor esi, esi
nop word [eax + eax]
push dword [esi*4 + 0x50f49c]
push edi
call fcn.004ce516
add esp, 8
test eax, eax
je 0x4327d6
inc esi
cmp esi, 7
jne 0x4327a0
mov ecx, dword [esp + 0x14]
push ebx
push str.Parameter_1_invalid.
call fcn.0044ddc0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
cmp word [ebp], 0
mov edi, 2
je 0x432826
xor edi, edi
nop dword [eax]
nop dword [eax + eax]
push dword [edi*4 + 0x50f48c]
push ebp
call fcn.004ce516
add esp, 8
test eax, eax
je 0x432826
inc edi
cmp edi, 4
jne 0x4327f0
mov ecx, dword [esp + 0x14]
push ebp
push str.Parameter_2_invalid.
call fcn.0044ddc0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
test esi, esi
je 0x43282f
cmp esi, 6
jne 0x432835
mov dword [0x51f4bc], edi
cmp esi, 1
je 0x43283f
cmp esi, 6
jne 0x432845
mov dword [0x51f4b8], edi
cmp esi, 3
je 0x43284f
cmp esi, 6
jne 0x432855
mov dword [0x51f4b4], edi
cmp esi, 2
je 0x43285f
cmp esi, 6
jne 0x432865
mov dword [0x51f4b0], edi
cmp esi, 4
je 0x43286f
cmp esi, 6
jne 0x432875
mov dword [0x51f4ac], edi
cmp esi, 5
je 0x432883
cmp esi, 6
jne 0x43195c
mov dword [0x51f4a8], edi
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.Requires
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x4329a2
test esi, esi
jne 0x4328d9
mov ecx, dword [esp + 0x14]
push 0x4f03e8
push str.Parameter_1_required
call fcn.0044ddc0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xa
push str.AutoHotkey
push esi
xor bl, bl
call fcn.004cff45
add esp, 0xc
test eax, eax
jne 0x43295d
movzx eax, word [esi + 0x14]
test ax, ax
je 0x43195c
cmp eax, 0x20
je 0x432906
cmp eax, 9
jne 0x43295d
lea edi, [esi + 0x16]
nop dword [eax]
movzx eax, word [edi]
cmp eax, 0x20
je 0x43291d
cmp eax, 9
jne 0x432922
add edi, 2
jmp 0x432910
cmp eax, 0x76
jne 0x43292a
add edi, 2
push 3
push str.1.1.33.10
push edi
call fcn.004d9d9e
add esp, 0xc
test eax, eax
jne 0x43295b
movzx eax, word [edi + 6]
test ax, ax
je 0x43294c
cmp eax, 0x2e
jne 0x43295b
mov ecx, edi
call fcn.004b1e30
test eax, eax
jle 0x43195c
mov bl, 1
mov ecx, 0x4f03e8
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 + 0x54]
push 0x64
push eax
call fcn.004af740
mov ecx, dword [esp + 0x28]
lea eax, [esp + 0x5c]
add esp, 0x14
push 0x4f03e8
push eax
call fcn.0044ddc0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.WindowClassMain
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x432a72
test esi, esi
je 0x43195c
mov ecx, esi
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4329d0
sub ecx, edx
sar ecx, 1
lea edi, [ecx*2 + 2]
lea eax, [edi - 1]
cmp eax, 0xffff
ja 0x432a44
cmp dword [0x5203c4], 0
jne 0x432a07
call fcn.004ac4d0
mov dword [0x5203c4], eax
test eax, eax
je 0x432a44
mov edx, dword [0x5203c0]
cmp edi, dword [edx + 8]
jbe 0x432a24
call fcn.004ac4d0
mov edx, dword [0x5203c0]
mov dword [edx + 0xc], eax
test eax, eax
je 0x432a44
mov ecx, dword [edx + 4]
mov eax, edi
mov dword [0x5203bc], ecx
and eax, 3
je 0x432a39
sub edi, eax
add edi, 4
sub dword [edx + 8], edi
lea eax, [edi + ecx]
mov dword [edx + 4], eax
jmp 0x432a46
xor ecx, ecx
mov dword [str.AutoHotkey], ecx
sub ecx, esi
nop
movzx eax, word [esi]
lea esi, [esi + 2]
mov word [ecx + esi - 2], ax
test ax, ax
jne 0x432a50
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, str.WindowClassGui
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x432b42
test esi, esi
je 0x43195c
mov ecx, esi
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x432aa0
sub ecx, edx
sar ecx, 1
lea edi, [ecx*2 + 2]
lea eax, [edi - 1]
cmp eax, 0xffff
ja 0x432b14
cmp dword [0x5203c4], 0
jne 0x432ad7
call fcn.004ac4d0
mov dword [0x5203c4], eax
test eax, eax
je 0x432b14
mov edx, dword [0x5203c0]
cmp edi, dword [edx + 8]
jbe 0x432af4
call fcn.004ac4d0
mov edx, dword [0x5203c0]
mov dword [edx + 0xc], eax
test eax, eax
je 0x432b14
mov ecx, dword [edx + 4]
mov eax, edi
mov dword [0x5203bc], ecx
and eax, 3
je 0x432b09
sub edi, eax
add edi, 4
sub dword [edx + 8], edi
lea eax, [edi + ecx]
mov dword [edx + 4], eax
jmp 0x432b16
xor ecx, ecx
mov dword [str.AutoHotkeyGUI], ecx
sub ecx, esi
nop
movzx eax, word [esi]
lea esi, [esi + 2]
mov word [ecx + esi - 2], ax
test ax, ax
jne 0x432b20
mov eax, 3
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push 0xffffffffffffffff
push edi
mov edx, 0x50b680
mov ecx, ebx
call fcn.004af7f0
add esp, 8
test eax, eax
jne 0x431e52
mov edx, ebx
mov ecx, esi
call fcn.004b1f80
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
test esi, esi
jne 0x432b92
mov ecx, dword [esp + 0x14]
push ebx
push str.Parameter_1_required
call fcn.0044ddc0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
cmp word [esi], 0x2a
jne 0x432be1
movzx edi, word [esi + 2]
test edi, 0xffffff80
jne 0x432bb6
push 2
push edi
call fcn.004d4154
add esp, 8
test eax, eax
je 0x432bb6
and edi, 0xffffffdf
cmp di, 0x49
jne 0x432be1
movzx ecx, word [esi + 4]
add esi, 4
mov byte [esp + 0x30], 1
mov eax, ecx
mov dword [esp + 0x18], esi
cmp ecx, 0x20
je 0x432bd8
cmp ecx, 9
jne 0x432be9
add esi, 2
mov dword [esp + 0x18], esi
jmp 0x432be6
mov byte [esp + 0x30], 0
movzx eax, word [esi]
cmp ax, 0x3c
jne 0x432c9b
push 0x3e
push esi
call fcn.004cbd94
mov edi, eax
add esp, 8
test edi, edi
je 0x432c9b
cmp word [edi + 2], 0
jne 0x432c9b
xor eax, eax
add esi, 2
mov word [edi], ax
call fcn.00461390
push 0
mov ebp, eax
mov ecx, edi
lea eax, [esp + 0x27]
sub ecx, esi
push eax
lea eax, [esp + 0x1b]
sar ecx, 1
push eax
push ecx
push esi
mov esi, dword [esp + 0x28]
mov ecx, esi
call fcn.0043c5d0
test ebp, ebp
je 0x432c55
push ebp
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
push ebp
call fcn.004cfed0
add esp, 4
mov al, byte [esp + 0x13]
test al, al
jne 0x432c71
cmp byte [esp + 0x23], al
jne 0x43195c
cmp byte [esp + 0x30], al
jne 0x43195c
mov ecx, 0x3e
mov word [edi], cx
test al, al
jne 0x432e64
push ebx
push str.Function_library_not_found.
mov ecx, esi
call fcn.0044ddc0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
mov bp, word [0x51cbdc]
xor edi, edi
xor eax, eax
mov dword [esp + 0x34], edi
mov edi, dword [esp + 0x28]
mov dword [esp + 0x1c], eax
test eax, eax
je 0x432ce3
lea eax, [edi*2 + 2]
push eax
call fcn.004cfec5
mov ebx, eax
add esp, 4
mov dword [esp + 0x34], ebx
test ebx, ebx
je 0x432e64
mov bp, word [0x51cbdc]
mov edx, ebx
mov dword [esp + 0x24], edx
jmp 0x432ced
mov edx, dword [esp + 0x24]
xor edi, edi
mov dword [esp + 0x28], edi
movzx eax, word [esi]
mov ecx, esi
mov dword [esp + 0x2c], esi
test ax, ax
je 0x432e17
mov esi, dword [esp + 0x28]
mov edi, eax
cmp di, bp
jne 0x432dd3
lea eax, [ecx + 2]
mov edi, eax
mov dword [esp + 0x44], eax
movzx eax, word [edi]
mov edx, eax
test ax, ax
je 0x432d3f
mov ecx, eax
movzx edx, cx
cmp cx, bp
je 0x432d3b
movzx eax, word [edi + 2]
add edi, 2
mov ecx, eax
mov edx, eax
test ax, ax
jne 0x432d23
mov ecx, dword [esp + 0x2c]
mov ebx, edi
sub ebx, ecx
sar ebx, 1
dec ebx
test dx, dx
je 0x432dd3
test ebx, ebx
je 0x432dd3
cmp ebx, 0xfd
ja 0x432dd3
push ebx
push dword [esp + 0x48]
lea eax, [esp + 0x50]
push eax
call fcn.004d95fc
add esp, 0xc
lea ecx, [esp + 0x48]
xor eax, eax
mov word [esp + ebx*2 + 0x48], ax
call fcn.0043fac0
test eax, eax
je 0x432dc8
cmp dword [esp + 0x1c], 0
lea ecx, [esp + 0x48]
mov eax, dword [eax + 4]
push ecx
je 0x432db0
mov ebx, dword [esp + 0x28]
push ebx
call eax
mov bp, word [0x51cbdc]
add esp, 8
mov ecx, edi
lea ebx, [ebx + eax*2]
mov dword [esp + 0x24], ebx
jmp 0x432df5
push 0
call eax
mov bp, word [0x51cbdc]
add esp, 8
add esi, eax
mov ecx, edi
mov dword [esp + 0x28], esi
jmp 0x432df5
mov bp, word [0x51cbdc]
mov ecx, dword [esp + 0x2c]
cmp dword [esp + 0x1c], 0
je 0x432ded
mov edx, dword [esp + 0x24]
mov ax, word [ecx]
mov word [edx], ax
add edx, 2
mov dword [esp + 0x24], edx
jmp 0x432df9
inc dword [esp + 0x28]
mov esi, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
movzx eax, word [ecx + 2]
add ecx, 2
mov dword [esp + 0x2c], ecx
mov edi, eax
test ax, ax
jne 0x432d05
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, 2
jl 0x432cb2
mov edi, dword [esp + 0x34]
xor eax, eax
push edi
mov word [edx], ax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x432e73
test al, 0x10
je 0x432e73
mov ecx, edi
call fcn.00461270
push edi
call fcn.004cfed0
mov eax, 3
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4
push dword [esp + 0x30]
mov ecx, dword [esp + 0x18]
push dword [esp + 0x3c]
push edi
call fcn.0042f000
neg eax
push edi
sbb esi, esi
and esi, 3
call fcn.004cfed0
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x238
ret 4