Function at 0x4029a9
Capabilities:
Check for time delay via gettickcount
Find taskbar
Move file
Print debug messages
Set environment variable

Disassembly:
sub esp, 0x4b0
mov eax, dword [esp + 0x4bc]
push ebx
push ebp
push esi
xor esi, esi
cmp eax, esi
push edi
mov dword [esp + 0x6c], ecx
jne 0x4029c8
lea eax, [esp + 0x68]
cmp ecx, esi
mov edi, dword [0x45b170]
mov dword [esp + 0x38], eax
mov dword [eax], esi
mov dword [esp + 0x5c], edi
mov ebp, ecx
je 0x402bef
mov ebx, dword [esp + 0x6c]
cmp dword [0x460068], esi
je 0x402a00
xor edi, edi
mov esi, 0x460050
call fcn.0043c45d
mov edi, dword [esp + 0x5c]
xor esi, esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [0x45b170]
mov ecx, eax
sub ecx, dword [0x460024]
cmp ecx, dword [edx + 0xb0]
jbe 0x402a48
push esi
push esi
push esi
push esi
lea eax, [esp + 0xb4]
push eax
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
je 0x402a3d
push 1
push 0xffffffffffffffff
call fcn.0040d9dd
pop ecx
pop ecx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x460024], eax
cmp byte [edi + 0xc4], 0
jne 0x402a79
cmp byte [edi + 0xc6], 0
jne 0x402a79
mov edx, dword [0x460018]
cmp edx, 0xffffffff
jle 0x402a79
mov ecx, dword [edi + 0x28]
cmp ecx, edx
jle 0x402a75
mov byte [edi + 0xc4], 1
jmp 0x402a79
inc ecx
mov dword [edi + 0x28], ecx
mov ecx, dword [edi + 4]
cmp ecx, 0xffffffff
mov edx, dword [edi]
jl 0x402a9c
jg 0x402a8a
cmp edx, 0xffffffff
jbe 0x402a9c
cmp dword [0x460014], ecx
jg 0x402aae
jl 0x402a9c
cmp dword [0x460010], edx
jae 0x402aae
mov ecx, dword [edi + 0x24]
cmp ecx, 0xffffffff
jle 0x402ac2
sub eax, dword [0x460020]
cmp eax, ecx
jb 0x402ac2
push 1
push 0xa
jmp 0x402abb
push 1
push 0x8000012f
call fcn.0040d9dd
pop ecx
pop ecx
cmp byte [edi + 0xce], 0
jne 0x402ab4
mov dword [0x45fd94], ebp
cmp byte [edi + 0xcf], 0
je 0x402b0e
mov eax, dword [0x45faa0]
mov dword [eax*4 + 0x45f460], ebp
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x45faa0]
mov dword [ecx*4 + 0x45d2e0], eax
inc ecx
cmp ecx, 0x190
mov dword [0x45faa0], ecx
jl 0x402b0e
mov dword [0x45faa0], esi
mov al, byte [ebp]
cmp al, 1
je 0x402b31
cmp al, 0x69
je 0x402b31
push esi
or eax, 0xffffffff
mov ebx, ebp
call fcn.0040269e
mov ebx, eax
cmp ebx, 1
jne 0x405e61
xor esi, esi
mov al, byte [ebp]
cmp al, 0xa
jb 0x402c75
cmp al, 0x21
ja 0x402c75
add dword [0x460010], 1
push ebp
adc dword [0x460014], 0
call fcn.004062e4
push 3
pop esi
cmp eax, esi
jne 0x402bdd
mov ecx, dword [ebp + 0x14]
cmp byte [ecx], 0x6c
jne 0x402b8c
mov ecx, dword [ecx + 0x14]
lea eax, [esp + 0x24]
push eax
push dword [esp + 0x4cc]
push 2
call fcn.004029a9
mov ecx, dword [ebp + 0x14]
mov edx, dword [esp + 0x24]
cmp edx, ecx
mov ebx, eax
je 0x402b67
jmp 0x402ba4
lea eax, [esp + 0x24]
push eax
push dword [esp + 0x4cc]
push esi
call fcn.004029a9
mov edx, dword [esp + 0x24]
mov ebx, eax
cmp edx, ebp
je 0x402bd2
cmp dword [esp + 0x4c4], esi
je 0x405e6b
cmp ebx, 1
jne 0x405e61
test edx, edx
jne 0x402c62
mov ebp, dword [ebp + 0x18]
cmp byte [ebp], 9
jne 0x402bd2
mov ebp, dword [ebp + 0x18]
test ebp, ebp
je 0x402bef
xor esi, esi
jmp 0x4029e6
mov ebp, dword [ebp + 0x18]
cmp byte [ebp], 9
je 0x402bff
cmp dword [esp + 0x4c4], esi
jne 0x402bd2
xor eax, eax
inc eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x4b0
ret 0xc
mov ecx, dword [ebp + 0x14]
cmp byte [ecx], 0x6c
jne 0x402c2c
mov ecx, dword [ecx + 0x14]
lea eax, [esp + 0x24]
push eax
push dword [esp + 0x4cc]
push 2
call fcn.004029a9
mov ecx, dword [ebp + 0x14]
mov edx, dword [esp + 0x24]
cmp edx, ecx
mov ebx, eax
je 0x402c07
jmp 0x402c44
lea eax, [esp + 0x24]
push eax
push dword [esp + 0x4cc]
push esi
call fcn.004029a9
mov edx, dword [esp + 0x24]
mov ebx, eax
cmp dword [esp + 0x4c4], esi
je 0x405e6b
cmp ebx, 1
jne 0x405e61
test edx, edx
je 0x402bcf
mov eax, dword [edx + 0x1c]
cmp eax, dword [ebp + 0x1c]
jne 0x405e68
mov ebp, edx
jmp 0x402bd2
movzx eax, al
cmp eax, 0x6a
jg 0x40316a
je 0x405f09
cmp eax, 8
je 0x402cbb
cmp eax, 0x5f
je 0x402d96
cmp eax, 0x60
je 0x402ce2
cmp eax, 0x66
je 0x405ea6
cmp eax, 0x67
je 0x405e73
jle 0x403193
cmp eax, 0x69
jg 0x403193
mov eax, dword [ebp + 0xc]
cmp eax, 4
mov dword [esp + 0x10], eax
jne 0x402ded
push esi
push dword [0x45d920]
call fcn.00419859
pop ecx
pop ecx
mov dword [esp + 0x58], eax
jmp 0x402ebc
add dword [0x460010], 1
adc dword [0x460014], esi
mov eax, dword [ebp + 0x18]
cmp eax, esi
je 0x402d5f
mov ecx, eax
xor eax, eax
cmp dword [ebp + 0xc], 1
mov dword [esp + 0x44], ecx
sete al
mov esi, eax
test esi, esi
je 0x402d1c
lea eax, [edi + 0x94]
mov edx, dword [eax]
and dword [eax], 0
mov dword [edi + 0x98], edx
call fcn.004062b9
test esi, esi
mov ebx, eax
je 0x402d38
lea eax, [edi + 0x98]
mov ecx, dword [eax]
and dword [eax], 0
mov dword [edi + 0x94], ecx
test ebx, ebx
je 0x405e61
cmp ebx, 8
je 0x405e61
cmp dword [esp + 0x4c4], 3
je 0x405f30
mov ebp, dword [ebp + 0x14]
jmp 0x402bd2
push 1
mov esi, ebp
call fcn.00424f54
mov ecx, eax
xor esi, esi
cmp ecx, esi
mov dword [esp + 0x44], ecx
je 0x405f29
cmp dword [edi + 0x94], esi
je 0x402d07
mov eax, dword [ecx + 4]
call fcn.00424fba
test eax, eax
je 0x402d07
inc esi
jmp 0x402d0b
add dword [0x460010], 1
adc dword [0x460014], esi
mov eax, dword [ebp + 0x18]
cmp eax, esi
mov dword [esp + 0x44], eax
jne 0x402dc3
push 1
mov esi, ebp
call fcn.00424f54
test eax, eax
mov dword [esp + 0x44], eax
je 0x405f29
cmp dword [esp + 0x4c4], 3
mov dword [edi + 0x9c], eax
je 0x405ece
mov ecx, dword [eax + 4]
mov edx, dword [ebp + 0x1c]
cmp edx, dword [ecx + 0x1c]
jne 0x405ece
mov ebp, ecx
jmp 0x402bd2
cmp eax, 1
ja 0x402e70
movzx eax, byte [ebp + 1]
sub eax, esi
je 0x402e68
dec eax
je 0x402e43
push str.Read
push dword [0x45d920]
call dword [sym.imp.MSVCR71.dll__stricmp]
test eax, eax
pop ecx
pop ecx
jne 0x402e21
mov dword [esp + 0x10], 5
jmp 0x402eff
push esi
push dword [0x45d920]
call fcn.00419859
pop ecx
pop ecx
xor ecx, ecx
cmp eax, esi
setne cl
mov dword [esp + 0x58], eax
add ecx, 3
mov dword [esp + 0x10], ecx
jmp 0x402e70
mov eax, dword [0x45d920]
push esi
push 1
push 1
push 1
call fcn.00401cdc
add esp, 0x10
test eax, eax
je 0x402e21
mov dword [esp + 0x10], 2
jmp 0x402eff
mov dword [esp + 0x10], 2
cmp dword [esp + 0x10], 3
jne 0x402eb5
cmp byte [ebp + 1], 1
ja 0x402e87
mov dword [esp + 0x40], 1
jmp 0x402e9e
mov esi, dword [0x45d924]
call fcn.0041653d
test eax, eax
mov dword [esp + 0x40], eax
je 0x405edc
mov eax, dword [0x45d928]
cmp byte [eax], 0x31
jne 0x402ef8
cmp byte [eax + 1], 0
jne 0x402ef8
mov byte [esp + 0x48], 1
jmp 0x402efd
cmp dword [esp + 0x10], 4
jne 0x402eff
cmp byte [ebp + 1], 2
ja 0x402ecc
mov dword [esp + 0x40], 1
jmp 0x402ee3
mov esi, dword [0x45d928]
call fcn.0041653d
test eax, eax
mov dword [esp + 0x40], eax
je 0x405eeb
mov eax, dword [0x45d92c]
cmp byte [eax], 0x31
jne 0x402ef8
cmp byte [eax + 1], 0
mov byte [esp + 0x48], 1
je 0x402efd
mov byte [esp + 0x48], 0
xor esi, esi
mov eax, dword [edi + 8]
mov dword [esp + 0x80], eax
mov eax, dword [edi + 0xc]
mov dword [esp + 0x84], eax
mov eax, dword [edi + 0x10]
mov dword [esp + 0x20], eax
mov eax, dword [edi + 0x14]
mov dword [esp + 0x34], eax
mov eax, dword [edi + 0x18]
mov dword [esp + 0x18], eax
mov eax, dword [edi + 0x1c]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x10]
dec eax
dec eax
mov byte [esp + 0x17], 0
mov dword [esp + 0x24], esi
mov dword [edi + 8], 1
mov dword [edi + 0xc], esi
je 0x40309c
dec eax
je 0x403074
dec eax
je 0x403016
dec eax
je 0x402fc3
dec eax
je 0x402f86
dec eax
jne 0x4030e8
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x1b]
push eax
push dword [esp + 0x4d0]
mov eax, ebp
call fcn.0040148c
jmp 0x4030e6
push 0x454ad8
push dword [0x45d928]
call dword [sym.imp.MSVCR71.dll__stricmp]
pop ecx
pop ecx
test eax, eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x1b]
push eax
push dword [esp + 0x4d0]
push ebp
je 0x402fb9
call fcn.00409c5c
jmp 0x4030e6
call fcn.00409e7d
jmp 0x4030e6
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x40306f
push 0x454ad4
push eax
call dword [sym.imp.MSVCR71.dll_fopen]
mov esi, eax
test esi, esi
pop ecx
pop ecx
je 0x40306f
push dword [0x45d928]
lea eax, [esp + 0x28]
push esi
push eax
lea eax, [esp + 0x23]
push eax
push dword [esp + 0x4d8]
push ebp
call fcn.00419230
push esi
mov ebx, eax
call dword [sym.imp.MSVCR71.dll_fclose]
pop ecx
jmp 0x4030e8
lea eax, [esp + 0x3d]
push eax
push dword [0x45d920]
call fcn.00419859
mov esi, eax
test esi, esi
pop ecx
pop ecx
je 0x40306f
push dword [0x45d924]
lea eax, [esp + 0x28]
push esi
push dword [esp + 0x60]
mov ecx, ebp
push dword [esp + 0x54]
push dword [esp + 0x50]
push eax
lea eax, [esp + 0x2f]
push eax
push dword [esp + 0x4e4]
call fcn.00419506
cmp byte [esp + 0x3d], 0
mov ebx, eax
je 0x4030e8
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x4030e8
xor ebx, ebx
inc ebx
jmp 0x4030e8
push dword [0x45d920]
lea eax, [esp + 0x28]
push dword [esp + 0x4c]
mov ecx, ebp
push dword [esp + 0x48]
push eax
lea eax, [esp + 0x27]
push eax
push dword [esp + 0x4dc]
call fcn.0040a093
jmp 0x4030e6
xor eax, eax
cmp byte [ebp + 1], al
jbe 0x4030bd
mov ecx, ebp
call fcn.00408da3
cmp byte [ebp], 8
jne 0x4030b6
mov ecx, eax
or ecx, edx
je 0x4030bf
mov byte [esp + 0x4c], 0
jmp 0x4030c4
xor edx, edx
mov byte [esp + 0x4c], 1
push dword [esp + 0x4c]
mov edi, ebp
push edx
push eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x27]
push eax
push dword [esp + 0x4dc]
call fcn.0040151e
mov edi, dword [esp + 0x5c]
mov ebx, eax
test ebx, ebx
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x84]
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0x20]
mov dword [edi + 0x10], eax
mov eax, dword [esp + 0x34]
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0x18]
mov dword [edi + 0x18], eax
mov eax, dword [esp + 0x50]
mov dword [edi + 0x1c], eax
je 0x405e61
cmp ebx, 7
je 0x405e61
cmp ebx, 8
je 0x405e61
cmp byte [esp + 0x17], 0
jne 0x402bd2
cmp dword [esp + 0x4c4], 3
je 0x405efa
mov eax, dword [esp + 0x24]
test eax, eax
je 0x402bcf
mov ecx, dword [eax + 0x1c]
cmp ecx, dword [ebp + 0x1c]
jne 0x405ed1
mov ebp, eax
jmp 0x402bd2
sub eax, 0x6b
je 0x405f63
dec eax
je 0x405e06
dec eax
je 0x405f3e
sub eax, 0x21
je 0x405d3e
sub eax, 0x48
je 0x405f0d
mov edi, dword [0x45d970]
mov ebx, dword [0x45b170]
xor esi, esi
inc esi
add dword [0x460010], esi
mov dword [esp + 0x28], edi
adc dword [0x460014], 0
mov al, byte [ebp]
movzx ecx, al
dec ecx
cmp ecx, 0xd6
ja case.0x4031cd.8
movzx ecx, byte [ecx + 0x4061e2]
jmp dword [ecx*4 + 0x405f6a]
push ebp
call fcn.00401162
jmp 0x404d75
cmp byte [ebp + 1], 1
mov edx, dword [0x45d924]
jbe 0x40324d
mov eax, dword [ebp + 4]
cmp byte [eax + 0x11], 0
jne case.0x4031cd.3
mov eax, dword [eax + 0x1c]
test eax, eax
je 0x403210
push dword [eax + 4]
push dword [eax]
mov eax, edi
call fcn.00401b0f
jmp 0x404d75
mov eax, dword [0x45d974]
test eax, eax
je 0x40324d
cmp byte [edx], 0
jne 0x40324d
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x40322b
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x17]
movzx ecx, cl
dec ecx
je 0x403241
dec ecx
dec ecx
jne 0x40324d
mov eax, edi
call fcn.0043c967
jmp 0x404d75
mov ecx, edi
call fcn.00401881
jmp 0x404d75
push esi
push 0
push 0xffffffffffffffff
push edx
mov ecx, edi
call fcn.0040161c
jmp 0x404d75
mov eax, dword [ebp + 4]
xor ebx, ebx
cmp dword [eax + 0x1c], ebx
je 0x403278
cmp byte [eax + 0x11], bl
jne 0x403278
mov dword [esp + 0x10], esi
mov dword [esp + 0x18], esi
jmp 0x4032c6
mov ecx, dword [0x45d974]
cmp ecx, ebx
mov eax, dword [0x45d924]
mov dword [esp + 0x10], ebx
je 0x4032a6
cmp byte [eax], 0
jne 0x4032a6
mov dl, byte [ecx + 0x17]
test dl, dl
jne 0x40329d
mov edx, dword [ecx + 0xc]
mov dl, byte [edx + 0x17]
cmp dl, 1
jne 0x4032a6
mov ebx, ecx
jmp 0x4032a8
xor ebx, ebx
test ebx, ebx
push esi
je 0x4032b6
mov eax, ebx
call fcn.00401e35
jmp 0x4032c2
push esi
push 0
push esi
call fcn.00401cdc
add esp, 0x10
mov dword [esp + 0x18], eax
push esi
mov eax, edi
call fcn.00401e35
mov dword [esp + 0x50], eax
mov eax, dword [0x45d928]
mov al, byte [eax]
test al, al
je 0x40340a
movsx eax, al
push eax
call dword [sym.imp.MSVCR71.dll_toupper]
pop ecx
push eax
push str.SMHD
call dword [sym.imp.MSVCR71.dll_strchr]
test eax, eax
pop ecx
pop ecx
je 0x40340a
xor eax, eax
cmp dword [esp + 0x18], eax
je case.0x4031cd.3
cmp dword [esp + 0x10], eax
je 0x40331e
mov eax, dword [ebp + 4]
mov eax, dword [eax + 0x1c]
fild qword [eax]
jmp 0x403338
cmp ebx, eax
je 0x40332c
push eax
mov eax, ebx
call fcn.00402096
jmp 0x403338
push dword [0x45d924]
call fcn.0040105e
pop ecx
push esi
fstp qword [esp + 0x2c]
mov ecx, edi
call fcn.00401c0d
cmp byte [eax], 0
je 0x40336a
lea eax, [esp + 0x60]
push eax
push ecx
push esi
mov ecx, edi
call fcn.00401c0d
pop ecx
push eax
call fcn.00438f1f
test eax, eax
pop ecx
pop ecx
jne 0x40338b
push esi
jmp 0x40353d
lea eax, [esp + 0x9c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemTimeAsFileTime]
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0xa0]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
mov eax, dword [0x45d928]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCR71.dll_toupper]
cmp eax, 0x44
fld qword [esp + 0x2c]
pop ecx
je 0x4033cb
cmp eax, 0x48
je 0x4033c3
cmp eax, 0x4d
je 0x4033bb
cmp eax, 0x53
jne 0x4033d1
fmul qword [0x458b20]
jmp 0x4033d1
fmul qword [0x458b18]
jmp 0x4033d1
fmul qword [0x458b10]
jmp 0x4033d1
fmul qword [0x458b08]
mov esi, dword [esp + 0x60]
mov ebx, dword [esp + 0x64]
call fcn.0044ffe0
push 1
push 0
add esi, eax
push 0xffffffffffffffff
lea eax, [esp + 0x6c]
adc ebx, edx
mov dword [esp + 0x6c], esi
push 0
push eax
lea esi, [esp + 0xd4]
mov dword [esp + 0x78], ebx
call fcn.00438e15
pop ecx
pop ecx
jmp 0x4039dc
cmp dword [esp + 0x18], 2
je 0x40345d
cmp dword [esp + 0x50], 2
je 0x40345d
cmp dword [esp + 0x10], 0
je 0x40342c
mov eax, dword [ebp + 4]
mov eax, dword [eax + 0x1c]
mov esi, dword [eax]
mov ebx, dword [eax + 4]
jmp 0x40344a
test ebx, ebx
je 0x40343b
push 0
mov eax, ebx
call fcn.00401a38
jmp 0x403446
mov esi, dword [0x45d924]
call fcn.00401ca2
mov esi, eax
mov ebx, edx
push 0
mov eax, edi
call fcn.00401a38
add eax, esi
adc edx, ebx
push edx
jmp 0x403b27
cmp dword [esp + 0x10], 0
je 0x40346e
mov eax, dword [ebp + 4]
mov eax, dword [eax + 0x1c]
fild qword [eax]
jmp 0x403489
test ebx, ebx
je 0x40347d
push 0
mov eax, ebx
call fcn.00402096
jmp 0x403489
push dword [0x45d924]
call fcn.0040105e
pop ecx
push 0
fstp qword [esp + 0x2c]
mov eax, edi
call fcn.00402096
fadd qword [esp + 0x28]
push ecx
push ecx
fstp qword [esp]
mov eax, edi
call fcn.0040c3ce
jmp 0x404d75
mov eax, dword [0x45d928]
mov al, byte [eax]
test al, al
je 0x403592
movsx eax, al
push eax
call dword [sym.imp.MSVCR71.dll_toupper]
pop ecx
push eax
push str.SMHD
call dword [sym.imp.MSVCR71.dll_strchr]
test eax, eax
pop ecx
pop ecx
je 0x403592
mov eax, dword [0x45d974]
test eax, eax
mov edx, dword [0x45d924]
je 0x403501
cmp byte [edx], 0
jne 0x403501
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x4034fc
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 1
je 0x403503
xor eax, eax
test eax, eax
je 0x403515
push esi
mov ecx, eax
call fcn.00401c0d
mov dword [esp + 0x20], eax
jmp 0x403519
mov dword [esp + 0x20], edx
push esi
mov ecx, edi
call fcn.00401c0d
push eax
mov eax, dword [esp + 0x24]
lea ebx, [esp + 0x42]
call fcn.00438e97
cmp byte [esp + 0x42], 0
pop ecx
mov esi, eax
mov ebx, edx
je 0x40354b
push 1
push 0
push 0xffffffffffffffff
push 0x45282f
jmp 0x403253
mov eax, dword [0x45d928]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCR71.dll_toupper]
cmp eax, 0x44
pop ecx
je 0x403579
cmp eax, 0x48
je 0x403570
cmp eax, 0x4d
jne 0x40358b
push 0
push 0x3c
jmp 0x403580
push 0
push 0xe10
jmp 0x403580
push 0
push 0x15180
push ebx
push esi
call fcn.00450060
mov esi, eax
mov ebx, edx
push ebx
push esi
jmp 0x403204
mov eax, dword [ebp + 4]
xor edx, edx
cmp dword [eax + 0x1c], edx
je 0x4035ad
cmp byte [eax + 0x11], dl
jne 0x4035ad
mov dword [esp + 0x10], esi
mov ebx, esi
mov dword [esp + 0x18], edx
jmp 0x4035ff
mov ecx, dword [0x45d974]
cmp ecx, edx
mov eax, dword [0x45d924]
mov dword [esp + 0x10], edx
je 0x4035db
cmp byte [eax], 0
jne 0x4035db
mov bl, byte [ecx + 0x17]
test bl, bl
jne 0x4035d2
mov ebx, dword [ecx + 0xc]
mov bl, byte [ebx + 0x17]
cmp bl, 1
mov dword [esp + 0x18], ecx
je 0x4035df
mov dword [esp + 0x18], edx
cmp dword [esp + 0x18], edx
push esi
je 0x4035f1
mov eax, dword [esp + 0x1c]
call fcn.00401e35
jmp 0x4035fd
push esi
push 0
push esi
call fcn.00401cdc
add esp, 0x10
mov ebx, eax
push esi
mov eax, edi
call fcn.00401e35
cmp ebx, 2
je 0x403657
cmp eax, 2
je 0x403657
cmp dword [esp + 0x10], 0
je 0x403625
mov eax, dword [ebp + 4]
mov eax, dword [eax + 0x1c]
mov esi, dword [eax]
mov ebx, dword [eax + 4]
jmp 0x403645
mov eax, dword [esp + 0x18]
test eax, eax
je 0x403636
push 0
call fcn.00401a38
jmp 0x403641
mov esi, dword [0x45d924]
call fcn.00401ca2
mov esi, eax
mov ebx, edx
push 0
mov eax, edi
call fcn.00401a38
sub eax, esi
sbb edx, ebx
jmp 0x403457
cmp dword [esp + 0x10], 0
je 0x403668
mov eax, dword [ebp + 4]
mov eax, dword [eax + 0x1c]
fild qword [eax]
jmp 0x403685
mov eax, dword [esp + 0x18]
test eax, eax
je 0x403679
push 0
call fcn.00402096
jmp 0x403685
push dword [0x45d924]
call fcn.0040105e
pop ecx
push 0
fstp qword [esp + 0x2c]
mov eax, edi
call fcn.00402096
fsub qword [esp + 0x28]
jmp 0x40349a
mov eax, dword [ebp + 4]
xor edx, edx
cmp dword [eax + 0x1c], edx
je 0x4036b6
cmp byte [eax + 0x11], dl
jne 0x4036b6
mov dword [esp + 0x10], esi
mov ebx, esi
mov dword [esp + 0x18], edx
jmp 0x403708
mov ecx, dword [0x45d974]
cmp ecx, edx
mov eax, dword [0x45d924]
mov dword [esp + 0x10], edx
je 0x4036e4
cmp byte [eax], 0
jne 0x4036e4
mov bl, byte [ecx + 0x17]
test bl, bl
jne 0x4036db
mov ebx, dword [ecx + 0xc]
mov bl, byte [ebx + 0x17]
cmp bl, 1
mov dword [esp + 0x18], ecx
je 0x4036e8
mov dword [esp + 0x18], edx
cmp dword [esp + 0x18], edx
push esi
je 0x4036fa
mov eax, dword [esp + 0x1c]
call fcn.00401e35
jmp 0x403706
push esi
push 0
push esi
call fcn.00401cdc
add esp, 0x10
mov ebx, eax
push esi
mov eax, edi
call fcn.00401e35
cmp ebx, 2
je 0x403765
cmp eax, 2
je 0x403765
cmp dword [esp + 0x10], 0
je 0x40372e
mov eax, dword [ebp + 4]
mov eax, dword [eax + 0x1c]
mov esi, dword [eax]
mov ebx, dword [eax + 4]
jmp 0x40374e
mov eax, dword [esp + 0x18]
test eax, eax
je 0x40373f
push 0
call fcn.00401a38
jmp 0x40374a
mov esi, dword [0x45d924]
call fcn.00401ca2
mov esi, eax
mov ebx, edx
push 0
mov eax, edi
call fcn.00401a38
push ebx
push esi
push edx
push eax
call fcn.00450290
jmp 0x403457
cmp dword [esp + 0x10], 0
je 0x403776
mov eax, dword [ebp + 4]
mov eax, dword [eax + 0x1c]
fild qword [eax]
jmp 0x403793
mov eax, dword [esp + 0x18]
test eax, eax
je 0x403787
push 0
call fcn.00402096
jmp 0x403793
push dword [0x45d924]
call fcn.0040105e
pop ecx
push 0
fstp qword [esp + 0x2c]
mov eax, edi
call fcn.00402096
fmul qword [esp + 0x28]
jmp 0x40349a
mov eax, dword [ebp + 4]
xor edx, edx
cmp dword [eax + 0x1c], edx
je 0x4037c4
cmp byte [eax + 0x11], dl
jne 0x4037c4
mov dword [esp + 0x10], esi
mov ebx, esi
mov dword [esp + 0x18], edx
jmp 0x403816
mov ecx, dword [0x45d974]
cmp ecx, edx
mov eax, dword [0x45d924]
mov dword [esp + 0x10], edx
je 0x4037f2
cmp byte [eax], 0
jne 0x4037f2
mov bl, byte [ecx + 0x17]
test bl, bl
jne 0x4037e9
mov ebx, dword [ecx + 0xc]
mov bl, byte [ebx + 0x17]
cmp bl, 1
mov dword [esp + 0x18], ecx
je 0x4037f6
mov dword [esp + 0x18], edx
cmp dword [esp + 0x18], edx
push esi
je 0x403808
mov eax, dword [esp + 0x1c]
call fcn.00401e35
jmp 0x403814
push esi
push 0
push esi
call fcn.00401cdc
add esp, 0x10
mov ebx, eax
push esi
mov eax, edi
call fcn.00401e35
cmp ebx, 2
je 0x403887
cmp eax, 2
je 0x403887
cmp dword [esp + 0x10], 0
je 0x403840
mov eax, dword [ebp + 4]
mov eax, dword [eax + 0x1c]
mov ebx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x74], eax
jmp 0x403865
mov eax, dword [esp + 0x18]
test eax, eax
je 0x403851
push 0
call fcn.00401a38
jmp 0x40385f
mov esi, dword [0x45d924]
call fcn.00401ca2
xor esi, esi
inc esi
mov ebx, eax
mov dword [esp + 0x74], edx
mov eax, ebx
or eax, dword [esp + 0x74]
je 0x4038cc
push 0
mov eax, edi
call fcn.00401a38
push dword [esp + 0x74]
push ebx
push edx
push eax
call fcn.00450060
jmp 0x403457
cmp dword [esp + 0x10], 0
je 0x403898
mov eax, dword [ebp + 4]
mov eax, dword [eax + 0x1c]
fild qword [eax]
jmp 0x4038b5
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4038a9
push 0
call fcn.00402096
jmp 0x4038b5
push dword [0x45d924]
call fcn.0040105e
pop ecx
fstp qword [esp + 0x28]
fld qword [0x458a38]
fld qword [esp + 0x28]
fucompp
fnstsw ax
test ah, 0x44
jp 0x4038d2
push esi
jmp 0x4039b6
push 0
mov eax, edi
call fcn.00402096
fdiv qword [esp + 0x28]
jmp 0x40349a
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
mov ebx, eax
test ebx, ebx
jge 0x4038f8
xor ebx, ebx
jmp 0x403907
mov eax, esi
mov ecx, ebp
call fcn.0040c186
cmp ebx, eax
jle 0x403907
mov ebx, eax
push esi
push 0
push ebx
jmp 0x403a3d
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
mov ebx, eax
test ebx, ebx
jge 0x403922
xor ebx, ebx
mov eax, esi
mov ecx, ebp
call fcn.0040c186
cmp ebx, eax
jbe 0x403931
mov ebx, eax
sub eax, ebx
add eax, dword [0x45d924]
push esi
jmp 0x4039d9
cmp byte [ebp + 1], 4
jb 0x403965
mov eax, dword [ebp + 4]
mov eax, dword [eax + 0x34]
cmp byte [eax], 0
je 0x403965
push 3
pop eax
mov ecx, ebp
call fcn.00408da3
mov ebx, eax
cmp ebx, esi
jge 0x40396a
jmp 0x4038cc
mov ebx, 0x7fffffff
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
mov esi, eax
mov eax, dword [0x45d930]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCR71.dll_toupper]
cmp eax, 0x4c
pop ecx
jne 0x4039a0
xor eax, eax
inc eax
cmp esi, eax
jl 0x4039b4
mov ecx, eax
sub ecx, ebx
add esi, ecx
cmp esi, eax
jge 0x4039a9
lea ebx, [ebx + esi - 1]
xor eax, eax
inc eax
cmp esi, eax
jge 0x4039a9
mov esi, eax
mov ecx, ebp
call fcn.0040c186
cmp eax, esi
jae 0x4039c1
push 1
push 0
push 0xffffffffffffffff
push 0
jmp 0x403253
xor ecx, ecx
inc ecx
sub ecx, esi
add eax, ecx
cmp ebx, eax
jbe 0x4039ce
mov ebx, eax
mov eax, dword [0x45d924]
push 1
lea eax, [esi + eax - 1]
push 0
push ebx
push eax
jmp 0x403253
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
mov ebx, eax
test ebx, ebx
jge 0x4039f4
xor ebx, ebx
mov eax, esi
mov ecx, ebp
call fcn.0040c186
cmp ebx, eax
jbe 0x403a03
mov ebx, eax
push esi
sub eax, ebx
push 0
push eax
mov eax, dword [0x45d924]
add ebx, eax
push ebx
jmp 0x403253
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
mov ebx, eax
test ebx, ebx
jge 0x403a28
xor ebx, ebx
mov eax, esi
mov ecx, ebp
call fcn.0040c186
cmp ebx, eax
jbe 0x403a37
mov ebx, eax
push esi
push 0
sub eax, ebx
push eax
push dword [0x45d924]
jmp 0x403253
push esi
mov ecx, edi
call fcn.00401c0d
mov ebx, eax
cmp ebx, dword [0x45d924]
jne 0x403a6b
mov al, byte [edi + 0x17]
test al, al
jne 0x403a67
mov eax, dword [edi + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
je 0x403aa1
push esi
push 0
mov eax, esi
mov ecx, ebp
call fcn.0040c186
push eax
push 0
mov ecx, edi
call fcn.0040161c
cmp eax, esi
jne 0x405e5f
push esi
mov ecx, edi
call fcn.00401c0d
push dword [0x45d924]
mov ebx, eax
push ebx
call sub.MSVCR71.dll_strcpy
pop ecx
pop ecx
mov eax, dword [0x45d928]
mov al, byte [eax]
test al, al
je 0x403ad0
movsx eax, al
push eax
call dword [sym.imp.MSVCR71.dll_toupper]
cmp eax, 0x54
pop ecx
jne 0x403ad0
mov eax, dword [0x45d928]
cmp byte [eax + 1], 0
jne 0x403ad0
mov eax, ebx
call fcn.0041a34f
jmp 0x403ae5
cmp byte [ebp], 0x31
push ebx
jne 0x403adf
call dword [sym.imp.USER32.dll_CharLowerA]
jmp 0x403ae5
call dword [sym.imp.USER32.dll_CharUpperA]
push 0
mov eax, edi
call fcn.0040c147
jmp 0x404d75
mov eax, dword [0x45d974]
test eax, eax
je 0x403b1c
cmp byte [eax + 0x17], 0
jne 0x403b0a
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x15]
jmp 0x403b0d
mov cl, byte [eax + 0x15]
test cl, 1
je 0x403b1c
call fcn.00401b52
mov eax, dword [eax]
inc eax
jmp 0x403b25
mov eax, esi
mov ecx, ebp
call fcn.0040c186
push 0
push eax
jmp 0x403204
mov edi, dword [0x45d92c]
mov al, byte [edi]
or dword [esp + 0x20], 0xffffffff
test al, al
mov dword [esp + 0x50], edi
je 0x403b74
movsx eax, al
push eax
call dword [sym.imp.MSVCR71.dll_toupper]
pop ecx
push eax
push 0x454a5c
call dword [sym.imp.MSVCR71.dll_strchr]
test eax, eax
pop ecx
pop ecx
je 0x403b74
lea eax, [edi + 1]
cmp byte [eax], 0
je 0x403b74
mov esi, eax
call fcn.0040113f
mov dword [esp + 0x10], eax
jmp 0x403b78
mov dword [esp + 0x10], esi
cmp dword [esp + 0x10], 0
jle 0x403cc7
mov eax, dword [0x45d928]
cmp byte [eax], 0
jne 0x403bbd
and dword [esp + 0x20], 0
mov eax, 0x452954
mov ecx, dword [0x45e2f0]
xor ebx, ebx
inc ebx
push ebx
push 0
push 0xffffffffffffffff
push eax
call fcn.0040161c
mov eax, dword [esp + 0x20]
cdq
push 0x18
push edx
push eax
mov eax, dword [esp + 0x34]
jmp 0x404c72
mov ecx, dword [0x45d924]
push 4
mov dword [esp + 0x38], ecx
mov dword [esp + 0x1c], eax
pop eax
mov ecx, ebp
call fcn.00408da3
mov esi, eax
test esi, esi
jge 0x403bdf
xor esi, esi
test esi, esi
je 0x403bef
xor eax, eax
inc eax
mov ecx, ebp
call fcn.0040c186
mov edi, eax
jmp 0x403bf2
xor edi, edi
inc edi
cmp esi, edi
jge 0x403cc7
mov eax, dword [esp + 0x50]
mov al, byte [eax]
cmp al, 0x31
je 0x403c72
movsx eax, al
push eax
call dword [sym.imp.MSVCR71.dll_toupper]
cmp eax, 0x52
pop ecx
je 0x403c72
push 2
pop eax
mov ecx, ebp
call fcn.0040c186
mov ebx, eax
mov eax, dword [esp + 0x34]
xor edi, edi
inc edi
lea ecx, [esi + eax]
mov eax, dword [0x45b170]
mov al, byte [eax + 0xc9]
test al, al
jne 0x403c44
mov eax, dword [esp + 0x18]
call fcn.004388e8
jmp 0x403c61
cmp al, 2
jne 0x403c54
mov eax, dword [esp + 0x18]
push ecx
call fcn.004387ca
jmp 0x403c60
push dword [esp + 0x18]
push ecx
call dword [sym.imp.MSVCR71.dll_strstr]
pop ecx
pop ecx
mov ecx, eax
test ecx, ecx
je 0x403cc7
cmp edi, dword [esp + 0x10]
je 0x403cb5
inc edi
add ecx, ebx
jmp 0x403c2a
test esi, esi
je 0x403c89
sub edi, esi
add edi, dword [esp + 0x34]
mov al, byte [edi]
mov dword [esp + 0x7c], edi
mov byte [esp + 0x3f], al
mov byte [edi], 0
push dword [esp + 0x10]
movzx eax, byte [ebx + 0xc9]
push eax
push dword [esp + 0x20]
push dword [esp + 0x40]
call fcn.00438abf
add esp, 0x10
test esi, esi
mov ecx, eax
je 0x403cb5
mov al, byte [esp + 0x3f]
mov edx, dword [esp + 0x7c]
mov byte [edx], al
test ecx, ecx
je 0x403cc7
sub ecx, dword [esp + 0x34]
mov dword [esp + 0x20], ecx
jns 0x403b92
mov eax, 0x454094
jmp 0x403b97
push ebp
call fcn.0041c9cd
jmp 0x404d75
push dword [0x45d92c]
mov ecx, dword [0x45d924]
push dword [0x45d928]
push ebp
call fcn.0041f591
jmp 0x404d75
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
push ebp
call fcn.00429275
jmp 0x404d75
push dword [0x45d920]
mov eax, ebp
call fcn.00428f38
jmp 0x404d75
push dword [0x45d920]
mov eax, dword [0x45d924]
push ebp
call fcn.0042823e
jmp 0x404d75
push 0
push dword [0x45d940]
mov ecx, ebp
push 7
pop eax
call fcn.00408da3
push eax
push 6
pop eax
mov ecx, ebp
call fcn.00408da3
push eax
push 5
pop eax
mov ecx, ebp
call fcn.00408da3
push eax
push 4
pop eax
mov ecx, ebp
call fcn.00408da3
push eax
push 3
pop eax
mov ecx, ebp
call fcn.00408da3
push eax
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
push eax
push ebp
call fcn.0042094a
jmp 0x404d75
push dword [0x45d938]
mov ecx, ebp
push 5
pop eax
call fcn.00408da3
push eax
push 4
pop eax
mov ecx, ebp
call fcn.00408da3
push eax
push 3
pop eax
mov ecx, ebp
call fcn.00408da3
push eax
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
push eax
mov ecx, ebp
call fcn.0041ffdc
jmp 0x404d75
push dword [0x45d92c]
mov ecx, ebp
push 2
pop eax
call fcn.00408da3
push eax
mov eax, esi
mov ecx, ebp
call fcn.00408da3
push ebp
call fcn.00420f45
jmp 0x404d75
push 0
push dword [ebx + 0xac]
cmp al, 0x42
sete al
push eax
push dword [0x45d920]
call fcn.004141b3
add esp, 0x10
jmp case.0x4031cd.3
xor eax, eax
cmp dword [ebx + 0xac], 3
push 0
sete al
lea eax, [eax + eax + 1]
push eax
jmp 0x403e36
push 0
push 2
push 0
jmp 0x403e0a
xor eax, eax
push eax
push eax
jmp 0x403e09
push dword [0x45d920]
call fcn.004134ea
pop ecx
jmp 0x404d75
mov ecx, 0x45282f
push ecx
push dword [0x45d938]
push dword [0x45d930]
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
push eax
mov eax, ecx
mov ecx, dword [0x45d934]
mov edx, dword [0x45d920]
call fcn.0041354a
add esp, 0x1c
jmp 0x404d75
push dword [0x45d934]
mov ecx, 0x45282f
push dword [0x45d938]
push ecx
push ecx
push dword [0x45d928]
mov ecx, dword [0x45d930]
push dword [0x45d924]
push eax
mov eax, dword [0x45d92c]
jmp 0x403e7e
mov ecx, dword [0x45d928]
mov edx, 0x45282f
push edx
push dword [0x45d92c]
push edx
push edx
push dword [0x45d924]
push dword [0x45d920]
push eax
mov eax, edx
jmp 0x403e84
push 4
pop eax
mov ecx, ebp
call fcn.00408da3
push eax
push ebp
call fcn.00427033
jmp 0x404d75
mov edi, dword [0x45d928]
mov edx, dword [0x45d920]
cmp al, 0x6f
sete al
push 0
push 0
push eax
push dword [0x45d924]
mov eax, dword [0x45d92c]
push ebx
call fcn.0043b84b
add esp, 0x14
test eax, eax
je 0x405a9f
mov eax, dword [0x45b170]
mov eax, dword [eax + 0x54]
cmp eax, 0xffffffff
jle 0x405a9f
cmp eax, 0x19
jge 0x403f56
cmp byte [0x460211], 0
je 0x403f56
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x405a9f
push 1
push eax
call fcn.0040d9dd
pop ecx
pop ecx
jmp 0x405a9f
push 9
push str.ahk_group
push dword [0x45d920]
call dword [sym.imp.MSVCR71.dll__strnicmp]
add esp, 0xc
test eax, eax
jne 0x403f98
mov eax, dword [0x45d924]
cmp byte [eax], 0
jne 0x403f98
mov eax, dword [0x45d92c]
cmp byte [eax], 0
mov byte [esp + 0x1e], 1
je 0x403f9d
mov byte [esp + 0x1e], 0
mov al, byte [esp + 0x1e]
neg al
sbb eax, eax
and eax, 0xffffffec
add eax, 0x14
mov esi, eax
mov al, byte [ebp]
cmp al, 0x7b
je 0x403ffb
cmp al, 0x7c
je 0x403ffb
mov eax, dword [0x45d928]
cmp byte [eax], 0
je 0x404034
xor eax, eax
mov al, byte [ebp]
cmp al, 0x7b
je 0x404079
cmp al, 0x7c
je 0x40407b
push dword [0x45d928]
mov ecx, dword [0x45d92c]
mov edi, dword [0x45d924]
mov edx, dword [0x45d920]
push eax
push ebp
call fcn.0042720b
jmp 0x404d75
mov eax, dword [0x45d928]
cmp byte [eax], 0
je 0x404025
push 2
pop eax
mov ecx, ebp
call fcn.00408e2f
fmul qword [0x458a68]
call fcn.0044ffe0
mov esi, eax
test esi, esi
jne 0x404025
mov esi, 0x1f4
mov eax, dword [0x45d930]
cmp byte [eax], 0
je 0x404034
mov byte [esp + 0x1e], 0
cmp byte [esp + 0x1e], 0
je 0x403fc2
mov eax, dword [0x45d920]
add eax, 9
mov cl, byte [eax]
cmp cl, 0x20
je 0x40404f
cmp cl, 9
jne 0x404052
inc eax
jmp 0x404043
push 0
push eax
mov ecx, 0x45fb58
call fcn.00448743
test eax, eax
je 0x403fc2
xor ecx, ecx
mov cl, byte [ebp]
push esi
push ecx
push eax
call fcn.00448791
jmp 0x404d75
cmp al, 0x7c
mov edi, dword [0x45d920]
sete al
push eax
push dword [0x45d930]
push dword [0x45d92c]
push esi
push dword [0x45d924]
push ebx
call fcn.0043ba28
add esp, 0x18
jmp 0x403f23
push dword [0x45d924]
call fcn.00422bce
jmp 0x404d75
push dword [0x45d924]
push dword [0x45d920]
call dword [sym.imp.KERNEL32.dll_SetEnvironmentVariableA]
test eax, eax
jmp 0x40500e
lea eax, [esp + 0x8c]
push eax
push 0x3a98
push esi
push str.Environment
xor edi, edi
push edi
push 0x1a
push 0xffff
call dword [sym.imp.USER32.dll_SendMessageTimeoutA]
test eax, eax
mov ecx, dword [0x45e2f0]
push esi
push edi
push 0xffffffffffffffff
je 0x40410a
push 0x452954
jmp 0x403255
push 0x454094
jmp 0x403255
push dword [0x45d924]
push dword [0x45d920]
call fcn.0042b27b
jmp 0x404d75
cmp byte [0x46021a], 0
je case.0x4031cd.3
cmp byte [ebp + 1], 1
jae 0x40416d
xor eax, eax
cmp dword [0x460028], eax
mov ebx, esi
je 0x405d24
mov ecx, dword [0x460030]
mov word [ecx], ax
mov ecx, dword [0x46002c]
mov word [ecx], ax
mov ecx, dword [0x460028]
mov word [ecx], ax
jmp 0x405d24
mov eax, dword [0x460028]
test eax, eax
jne 0x4041ba
push 0x606
call dword [sym.imp.MSVCR71.dll_malloc]
test eax, eax
pop ecx
mov dword [0x460028], eax
jne 0x4041a2
push 0x45282f
push eax
push str.Out_of_memory.__The_current_thread_will_exit.
mov ecx, ebp
call fcn.00444eab
jmp 0x404d75
lea ecx, [eax + 0x202]
mov dword [0x46002c], ecx
add ecx, 0x202
mov dword [0x460030], ecx
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov ebx, 0x101
push ebx
push eax
push 0xffffffffffffffff
push dword [0x45d920]
push 0
push 0
call edi
push ebx
push dword [0x46002c]
push 0xffffffffffffffff
push dword [0x45d924]
push 0
push 0
call edi
push ebx
push dword [0x460030]
push 0xffffffffffffffff
push dword [0x45d928]
push 0
push 0
call edi
jmp case.0x4031cd.3
mov ecx, dword [0x45d928]
mov eax, str.UseErrorLevel
call fcn.004388e8
test eax, eax
je 0x404260
xor eax, eax
mov al, 3
cmp al, byte [ebp + 1]
sbb eax, eax
and eax, dword [0x45d97c]
xor edi, edi
push eax
push esi
push esi
push edi
push dword [0x45d928]
push edi
push dword [0x45d924]
push edi
push dword [0x45d920]
push 0x45fb58
call fcn.0040eb32
test eax, eax
mov eax, 0x452954
jne 0x404259
mov eax, str.ERROR
push esi
push edi
jmp 0x40501d
xor eax, eax
mov al, 3
cmp al, byte [ebp + 1]
sbb eax, eax
and eax, dword [0x45d97c]
push eax
push esi
xor eax, eax
push eax
push eax
push dword [0x45d928]
push esi
push dword [0x45d924]
push eax
push dword [0x45d920]
push 0x45fb58
call fcn.0040eb32
jmp 0x404d75
push ebp
call fcn.004272dd
jmp 0x404d75
cmp byte [ebp + 1], 2
jbe 0x4042da
push dword [0x45d934]
mov ecx, dword [0x45d93c]
push dword [0x45d930]
mov eax, dword [0x45d938]
push dword [0x45d92c]
mov edx, dword [0x45d920]
push dword [0x45d928]
push dword [0x45d924]
jmp 0x4042f2
mov eax, 0x45282f
push eax
push eax
push dword [0x45d924]
mov ecx, eax
push dword [0x45d920]
mov edx, eax
push eax
push ebp
call fcn.00439b76
jmp 0x404d75
push dword [0x45d948]
mov eax, dword [0x45d92c]
push dword [0x45d944]
mov ecx, dword [0x45d928]
push dword [0x45d940]
push dword [0x45d93c]
push dword [0x45d938]
push dword [0x45d934]
push dword [0x45d930]
push dword [0x45d924]
push dword [0x45d920]
push ebp
call fcn.0042be89
jmp 0x404d75
mov edi, dword [0x45d92c]
cmp al, 0x47
sete al
push eax
push dword [0x45d934]
push dword [0x45d930]
push dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
push ebp
call fcn.00421fac
jmp 0x404d75
mov edi, dword [0x45d92c]
push 1
xor al, al
call fcn.00411c4a
test al, al
pop ecx
mov byte [esp + 0x68], al
jne 0x4043a8
push dword [0x45d92c]
push 0
push str.Invalid_mouse_button__The_current_thread_will_exit.
jmp 0x404196
mov eax, dword [0x45d930]
cmp byte [eax], 0
je 0x4043be
push 4
pop eax
mov ecx, ebp
call fcn.00408da3
jmp 0x4043c1
xor eax, eax
inc eax
push dword [0x45d93c]
push dword [0x45d938]
push dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
push eax
push dword [esp + 0x80]
mov eax, dword [0x45d934]
push ebp
call fcn.00421099
jmp 0x404d75
push dword [0x45d938]
mov ecx, dword [0x45d940]
push dword [0x45d930]
mov eax, dword [0x45d93c]
push dword [0x45d92c]
mov edx, dword [0x45d934]
push dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
push ebp
call fcn.00421e36
jmp 0x404d75
push dword [0x45d940]
mov edx, dword [0x45d934]
push dword [0x45d93c]
push dword [0x45d938]
push dword [0x45d930]
push ebp
call fcn.00421bd7
jmp 0x404d75
push dword [0x45d930]
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
push ebp
call fcn.0042161f
jmp 0x404d75
push dword [0x45d930]
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
push ebp
call fcn.0042152c
jmp 0x404d75
push dword [0x45d934]
mov edi, dword [0x45d92c]
push dword [0x45d930]
push dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
push ebp
call fcn.00422031
jmp 0x404d75
push dword [0x45d934]
push dword [0x45d930]
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
push ebp
call fcn.00421d1d
jmp 0x404d75
push dword [0x45d938]
mov eax, dword [0x45d924]
push dword [0x45d934]
push dword [0x45d930]
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d920]
push ebp
call fcn.00429b04
jmp 0x404d75
push dword [0x45d93c]
push dword [0x45d938]
push dword [0x45d934]
push dword [0x45d930]
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
push ebp
call fcn.0042a1c1
jmp 0x404d75
push dword [0x45d92c]
mov ecx, dword [0x45d934]
mov eax, dword [0x45d930]
mov edx, dword [0x45d928]
mov esi, dword [0x45d924]
push ebp
call fcn.0042919f
jmp 0x404d75
push dword [0x45d938]
mov ecx, dword [0x45d93c]
push dword [0x45d934]
mov edx, dword [0x45d92c]
push dword [0x45d930]
push dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
push ebp
call fcn.004291e1
jmp 0x404d75
cmp al, 0x89
sete al
push eax
mov eax, ebp
call fcn.00427ef4
jmp 0x404d75
push dword [0x45d924]
mov eax, dword [0x45d928]
mov ecx, dword [0x45d920]
push ebp
call fcn.00427ca3
jmp 0x404d75
push dword [0x45d934]
mov eax, dword [0x45d924]
push dword [0x45d930]
mov ecx, dword [0x45d920]
push dword [0x45d92c]
push dword [0x45d928]
push ebp
call fcn.00439c7c
jmp 0x404d75
cmp byte [ebp + 1], 1
jbe 0x40465a
push dword [0x45d928]
mov ecx, dword [0x45d930]
mov eax, dword [0x45d92c]
mov edi, dword [0x45d924]
mov edx, dword [0x45d920]
push ebp
call fcn.0043a255
jmp 0x404d75
mov esi, dword [0x45d920]
mov eax, 0x45282f
mov ecx, eax
mov edi, eax
mov edx, eax
call fcn.0043a26f
test eax, eax
je 0x40467c
push esi
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
xor eax, eax
inc eax
jmp 0x404d75
push dword [0x45d928]
mov ecx, dword [0x45d930]
mov eax, dword [0x45d92c]
mov edx, dword [0x45d924]
push ebp
call fcn.00439acd
jmp 0x404d75
push dword [0x45d928]
mov ecx, dword [0x45d930]
mov eax, dword [0x45d92c]
mov edx, dword [0x45d924]
push ebp
call fcn.0043967d
jmp 0x404d75
push dword [0x45d930]
mov eax, dword [0x45d934]
push dword [0x45d92c]
mov ecx, dword [0x45d928]
push dword [0x45d924]
push ebp
call fcn.00439230
jmp 0x404d75
push dword [0x45d930]
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
push ebp
call fcn.004399c0
jmp 0x404d75
push dword [0x45d93c]
mov edx, dword [0x45d930]
push dword [0x45d938]
push dword [0x45d934]
push ebp
call fcn.00439876
jmp 0x404d75
push dword [0x45d928]
push dword [0x45d924]
push ebp
call fcn.004294b1
jmp 0x404d75
push 0
push 0x1a3
push 0x111
push 0
push str.Shell_TrayWnd
call dword [sym.imp.USER32.dll_FindWindowA]
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, dword [0x45b170]
mov eax, dword [eax + 0x54]
cmp eax, 0xffffffff
jle case.0x4031cd.3
cmp eax, 0x19
jge 0x404798
cmp byte [0x460211], 0
je 0x404798
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp case.0x4031cd.3
push esi
push eax
call fcn.0040d9dd
pop ecx
pop ecx
jmp case.0x4031cd.3
push 0
push 0x1a0
jmp 0x404754
mov edi, dword [0x45d920]
cmp byte [edi], 0
jne 0x4047c6
and dword [0x45ffbc], 0
jmp case.0x4031cd.3
mov eax, dword [ebp + 0xc]
test eax, eax
jne 0x4047e6
mov eax, 0x45fb58
call fcn.00448666
test eax, eax
jne 0x4047e6
push dword [0x45d920]
jmp 0x404a23
mov dword [0x45ffbc], eax
jmp 0x405a9f
push dword [ebp + 0xc]
push dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
call fcn.0041017d
add esp, 0x10
jmp 0x404d75
mov eax, dword [ebp + 0xc]
test eax, eax
mov dword [esp + 0x20], eax
mov ebx, 0x45fb58
jne 0x404845
mov edi, dword [0x45d920]
mov eax, ebx
call fcn.00448666
xor esi, esi
cmp eax, esi
mov dword [esp + 0x20], eax
jne 0x404847
push dword [0x45d920]
push esi
jmp 0x404a25
xor esi, esi
mov edi, dword [0x45d924]
cmp byte [edi], 0
je 0x404886
push esi
call fcn.00416632
cmp eax, esi
pop ecx
jne 0x40488a
mov eax, dword [0x45d924]
push esi
push 1
push 1
push 1
call fcn.00401cdc
add esp, 0x10
test eax, eax
jne 0x4048ae
push dword [0x45d924]
push esi
push str.Parameter_2_invalid
jmp 0x404196
xor eax, eax
jmp 0x404890
mov edi, dword [0x45d924]
cmp eax, esi
jle 0x4048b4
cmp eax, 2
jg 0x4048b4
cmp eax, 1
sete al
push esi
push eax
push dword [0x45d928]
push 0x45282f
jmp 0x4048ce
mov edi, dword [0x45d924]
cmp byte [edi], 0
mov eax, dword [0x45d928]
jne 0x4048c7
cmp byte [eax], 0
je 0x4048c7
mov cl, 1
jmp 0x4048c9
xor cl, cl
push ecx
push 1
push eax
push edi
push dword [esp + 0x30]
mov eax, ebx
call fcn.0041a3f3
jmp 0x405a9f
mov eax, dword [0x45d920]
cmp byte [eax], 0
push 0x10
pop edi
je 0x40490c
push 0x45620c
push eax
call dword [sym.imp.MSVCR71.dll__stricmp]
test eax, eax
pop ecx
pop ecx
je 0x40490c
xor eax, eax
mov ecx, ebp
call fcn.00408da3
mov edi, eax
test edi, edi
je 0x40490e
mov eax, esi
test al, al
mov byte [ebx + 0xc6], al
je 0x404935
or dword [ebx], 0xffffffff
or dword [ebx + 4], 0xffffffff
or dword [ebx + 0x24], 0xffffffff
mov dword [ebx + 0xb0], edi
mov byte [ebx + 0xc4], 0
jmp case.0x4031cd.3
mov dword [ebx + 0xb0], 5
mov byte [ebx + 0xc4], 1
jmp case.0x4031cd.3
mov edi, dword [0x45d920]
call fcn.0041697a
dec eax
je 0x4049c8
dec eax
je 0x40498d
dec eax
jne 0x405a9f
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x404980
xor eax, eax
inc eax
mov ecx, ebp
call fcn.00408da3
or eax, edx
jne 0x404980
xor eax, eax
inc eax
jmp 0x404982
xor eax, eax
mov byte [ebx + 0xc5], al
jmp 0x405a9f
mov eax, dword [0x45d920]
cmp byte [eax], 0
je 0x4049a6
xor eax, eax
inc eax
mov ecx, ebp
call fcn.00408da3
mov dword [0x46001c], eax
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x405a9f
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
mov dword [0x460018], eax
jmp 0x405a9f
xor eax, eax
inc eax
mov ecx, ebp
call fcn.00408da3
mov dword [ebx + 0x2c], eax
jmp 0x405a9f
mov ebx, dword [ebp + 0xc]
test ebx, ebx
jne 0x4049fc
push esi
push dword [0x45d920]
mov ecx, 0x45fb58
call fcn.00448743
mov ebx, eax
test ebx, ebx
je 0x405e5f
mov edi, dword [0x45d92c]
xor eax, eax
cmp byte [edi], al
je 0x404a2f
mov eax, dword [ebp + 0x18]
test eax, eax
jne 0x404a2f
mov eax, 0x45fb58
call fcn.00448666
test eax, eax
jne 0x404a2f
push dword [0x45d92c]
push 0
push str.Target_label_does_not_exist.__The_current_thread_will_exit.
jmp 0x404196
push dword [0x45d934]
push dword [0x45d930]
push eax
push dword [0x45d928]
mov eax, dword [0x45d924]
push ebx
call fcn.00448a9f
jmp 0x404d75
mov edi, dword [ebp + 0xc]
test edi, edi
jne 0x404a74
push edi
push dword [0x45d920]
mov ecx, 0x45fb58
call fcn.00448743
mov edi, eax
test edi, edi
je case.0x4031cd.3
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x404a94
push 0x4542c8
push eax
call dword [sym.imp.MSVCR71.dll__stricmp]
test eax, eax
pop ecx
pop ecx
jne 0x404a94
mov al, 1
jmp 0x404a96
xor al, al
push eax
mov ecx, edi
call fcn.00448c7b
jmp case.0x4031cd.3
mov edi, dword [ebp + 0xc]
test edi, edi
jne 0x404ac5
push edi
push dword [0x45d920]
mov ecx, 0x45fb58
call fcn.00448743
mov edi, eax
test edi, edi
je case.0x4031cd.3
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x404b0d
mov ebx, dword [sym.imp.MSVCR71.dll__stricmp]
push 0x4558e0
push eax
call ebx
test eax, eax
pop ecx
pop ecx
jne 0x404af1
push eax
push 0x7b
push edi
call fcn.00448791
jmp case.0x4031cd.3
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x404b0d
push 0x4542c8
push eax
call ebx
test eax, eax
pop ecx
pop ecx
jne 0x404b0d
mov al, 1
jmp 0x404b0f
xor al, al
push eax
mov esi, edi
call fcn.00448bdb
xor esi, esi
inc esi
jmp case.0x4031cd.3
push dword [0x45d928]
push dword [0x45d924]
call fcn.00424b5b
jmp 0x404d75
test edi, edi
jne 0x404b4d
mov eax, esi
mov ecx, ebp
call fcn.00408da3
push eax
call fcn.00415930
jmp 0x4047a0
mov eax, dword [0x45d924]
xor ebx, ebx
push ebx
push esi
push ebx
push esi
call fcn.00401cdc
add esp, 0x10
cmp eax, 2
je 0x404b7b
mov eax, dword [0x45d928]
push ebx
push esi
push ebx
push esi
call fcn.00401cdc
add esp, 0x10
cmp eax, 2
jne 0x404bec
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x404b90
mov eax, esi
mov ecx, ebp
call fcn.00408e2f
jmp 0x404b92
fldz
mov eax, dword [0x45d928]
fstp qword [esp + 0x28]
cmp byte [eax], 0
je 0x404bac
push 2
pop eax
mov ecx, ebp
call fcn.00408e2f
jmp 0x404bb2
fld qword [0x458b00]
fld qword [esp + 0x28]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x404bcf
fld qword [esp + 0x28]
fstp qword [esp + 0x50]
fstp qword [esp + 0x28]
fld qword [esp + 0x50]
call fcn.004158d4
fld st(1)
fsub qword [esp + 0x28]
push ecx
push ecx
fmulp st(1)
fadd qword [esp + 0x30]
fstp qword [esp]
fstp st(0)
jmp 0x40349f
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x404c05
mov eax, esi
mov ecx, ebp
call fcn.00408da3
mov dword [esp + 0x10], eax
jmp 0x404c09
mov dword [esp + 0x10], ebx
mov eax, dword [0x45d928]
cmp byte [eax], 0
je 0x404c21
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
mov esi, eax
jmp 0x404c26
mov esi, 0x7fffffff
cmp dword [esp + 0x10], esi
jle 0x404c36
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], esi
mov esi, eax
call fcn.00415892
mov ecx, eax
mov eax, esi
cdq
mov esi, eax
mov eax, edx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x10]
cdq
sub esi, eax
mov eax, dword [esp + 0x28]
sbb eax, edx
xor ebx, ebx
inc ebx
add esi, ebx
adc eax, 0
push eax
push esi
push 0
push ecx
call fcn.004501d0
add eax, dword [esp + 0x10]
push 0x18
cdq
push edx
push eax
mov eax, edi
call fcn.004019da
jmp 0x405d24
mov eax, dword [0x45d924]
push esi
call fcn.004229ef
jmp 0x404d75
push dword [0x45d928]
mov eax, dword [0x45d924]
mov ecx, dword [0x45d920]
push ebp
call fcn.0042228a
jmp 0x404d75
push dword [0x45d924]
mov eax, dword [0x45d928]
push ebp
call fcn.00422440
jmp 0x404d75
mov eax, dword [0x45d92c]
cmp byte [eax], 0
je 0x404cd5
push 3
pop eax
mov ecx, ebp
call fcn.00408da3
dec eax
jmp 0x404cd7
xor eax, eax
cdq
test edx, edx
mov edi, eax
jg 0x404cea
jl 0x404ce4
test edi, edi
jae 0x404cea
xor edi, edi
and dword [esp + 0x2c], edi
mov ebx, dword [0x45d924]
cmp byte [ebx], 0
mov dword [esp + 0x20], esi
je 0x404d08
lea eax, [esp + 0x20]
push eax
call fcn.00416fb9
pop ecx
mov esi, eax
jmp 0x404d0b
push 4
pop esi
mov eax, dword [0x45d928]
cmp byte [eax], 0
je 0x404d1c
call fcn.00417198
jmp 0x404d21
mov eax, 0x50030001
push edi
push eax
mov al, byte [ebp]
push dword [esp + 0x28]
sub al, 0x94
neg al
push esi
sbb eax, eax
and eax, dword [0x45d920]
push eax
push ebp
call fcn.00428a01
jmp 0x404d75
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x404d56
mov eax, esi
mov ecx, ebp
call fcn.00408da3
dec eax
jmp 0x404d58
xor eax, eax
cdq
test edx, edx
jg 0x404d69
jl 0x404d63
test eax, eax
jae 0x404d69
xor eax, eax
and dword [esp + 0x2c], eax
cmp byte [ebp], 0x96
push eax
jne 0x404d7c
call fcn.00428847
mov ebx, eax
jmp 0x405d1c
mov esi, dword [0x45d920]
mov ebx, ebp
call fcn.00428e45
jmp 0x404d75
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x404da2
mov eax, esi
mov ecx, ebp
call fcn.00408da3
mov edi, eax
jmp 0x404da7
mov edi, 0x96
mov eax, dword [0x45d920]
cmp byte [eax], 0
je 0x404dbc
xor eax, eax
mov ecx, ebp
call fcn.00408da3
jmp 0x404dc1
mov eax, 0x20b
push edi
push eax
call dword [sym.imp.KERNEL32.dll_Beep]
jmp case.0x4031cd.3
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x404def
push str.wait
push eax
call dword [sym.imp.MSVCR71.dll__stricmp]
test eax, eax
pop ecx
pop ecx
je 0x404e05
mov eax, dword [0x45d924]
push 0x454094
push eax
call dword [sym.imp.MSVCR71.dll__stricmp]
test eax, eax
pop ecx
pop ecx
je 0x404e05
xor al, al
jmp 0x404e09
xor eax, eax
mov al, 1
push eax
push dword [0x45d920]
call fcn.004288b7
jmp 0x404d75
cmp byte [ebp + 1], 2
jae 0x404e25
mov ebx, dword [ebx + 0x18]
jmp 0x404e27
xor ebx, ebx
mov eax, dword [0x45d924]
push ebx
push dword [0x45d920]
push ebp
call fcn.00422c14
jmp 0x404d75
mov eax, dword [0x45d924]
push ebp
call fcn.004233f9
jmp 0x404d75
push dword [0x45d928]
push dword [0x45d924]
call fcn.0042365b
jmp 0x404d75
push ebp
call fcn.00422ed8
jmp 0x404d75
mov eax, dword [0x45d920]
call fcn.0042aea8
jmp 0x404d75
mov edi, dword [0x45d920]
call fcn.0042af3a
jmp 0x404d75
push dword [0x45d928]
mov eax, dword [0x45d924]
push dword [0x45d920]
call fcn.004232c0
jmp 0x404d75
xor edi, edi
push edi
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
dec eax
neg eax
sbb al, al
inc al
push eax
push dword [0x45d924]
push dword [0x45d920]
call fcn.0042b652
add esp, 0x10
cmp eax, edi
jne 0x404ee4
push esi
push edi
push 0xffffffffffffffff
push 0x452954
jmp 0x405020
cmp byte [0x460007], 0
je 0x404f22
push esi
push edi
push 0xffffffffffffffff
push 0x454094
jmp 0x405020
push esi
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
dec eax
neg eax
sbb al, al
inc al
push eax
push dword [0x45d924]
push dword [0x45d920]
call fcn.0042b652
add esp, 0x10
cdq
push 0x18
push edx
push eax
mov eax, dword [0x45e2f0]
call fcn.004019da
jmp case.0x4031cd.3
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
dec eax
neg eax
sbb al, al
inc al
push eax
push dword [0x45d924]
push dword [0x45d920]
call fcn.0042b570
add esp, 0xc
jmp 0x40500c
mov eax, dword [0x45d928]
movsx eax, byte [eax]
push eax
call dword [sym.imp.MSVCR71.dll_toupper]
cmp eax, 0x52
pop ecx
jne 0x404fac
push dword [0x45d924]
push dword [0x45d920]
call dword [sym.imp.KERNEL32.dll_MoveFileA]
test eax, eax
mov eax, 0x452954
jne 0x404f96
mov eax, 0x454094
mov ecx, dword [0x45e2f0]
push esi
push 0
push 0xffffffffffffffff
push eax
call fcn.0040161c
jmp case.0x4031cd.3
push 2
pop eax
mov ecx, ebp
call fcn.00408da3
push eax
push dword [0x45d924]
push dword [0x45d920]
call fcn.0042bbce
jmp 0x404f59
push dword [0x45d920]
mov ecx, ebp
call fcn.00422df0
jmp 0x404d75
mov eax, dword [0x45d920]
cmp byte [eax], 0
jne 0x404fee
push esi
push 0
jmp 0x404eef
mov eax, esi
mov ecx, ebp
call fcn.00408da3
dec eax
neg eax
sbb al, al
inc al
push eax
push dword [0x45d920]
call fcn.0042bcee
pop ecx
pop ecx
test al, al
mov eax, 0x452954
jne 0x40501a
mov eax, 0x454094
push esi
push 0
push 0xffffffffffffffff
push eax
mov ecx, dword [0x45e2f0]
jmp 0x403255
mov eax, dword [0x45d924]
cmp byte [eax], 0
jne 0x405044
mov ebx, dword [ebx + 0x10]
test ebx, ebx
lea eax, [ebx + 0x2c]
jne 0x405044
mov eax, 0x45282f
call fcn.00423083
jmp 0x404d75
mov edi, dword [0x45d924]
cmp byte [edi], 0
jne 0x405068
mov ebx, dword [ebx + 0x10]
test ebx, ebx
lea edi, [ebx + 0x2c]
jne 0x405068
mov edi, 0x45282f
push 0
push 3
pop eax
mov ecx, ebp
call fcn.00408da3
mov esi, dword [0x45d928]
dec eax
neg eax
sbb al, al
inc al
push eax
call fcn.0041653d
push eax
push edi
push dword [0x45d920]
mov ecx, ebp
call fcn.00423c53
jmp 0x405a9f
mov eax, dword [0x45d924]
cmp byte [eax], 0
jne 0x4050b4
mov ebx, dword [ebx + 0x10]
test ebx, ebx
lea eax, [ebx + 0x2c]
jne 0x4050b4
mov eax, 0x45282f
mov ecx, dword [0x45d928]
movsx ecx, byte [ecx]
push ecx
call fcn.004231e4
jmp 0x404d75
mov edi, dword [0x45d924]
cmp byte [edi], 0
jne 0x4050e2
mov ebx, dword [ebx + 0x10]
test ebx, ebx
lea edi, [ebx + 0x2c]
jne 0x4050e2
mov edi, 0x45282f
push 0
push 4
pop eax
mov ecx, ebp
call fcn.00408da3
mov esi, dword [0x45d92c]
dec eax
neg eax
sbb al, al
inc al
push eax
call fcn.0041653d
push eax
mov eax, dword [0x45d928]
movsx eax, byte [eax]
push eax
push edi
push dword [0x45d920]
mov ecx, ebp
call fcn.00424195
jmp 0x405a9f
mov eax, dword [0x45d924]
cmp byte [eax], 0
jne 0x405137
mov ebx, dword [ebx + 0x10]
test ebx, ebx
lea eax, [ebx + 0x2c]
jne 0x405137
mov eax, 0x45282f
push dword [0x45d928]
call fcn.0042310a
jmp 0x404d75
mov eax, dword [0x45d924]
cmp byte [eax], 0
jne 0x405160
mov ebx, dword [ebx + 0x10]
test ebx, ebx
lea eax, [ebx + 0x2c]
jne 0x405160
mov eax, 0x45282f
call fcn.0042ad9e
jmp 0x404d75
mov esi, dword [0x45d920]
call fcn.00440c61
jmp 0x405a9f
push dword [0x45d930]
mov ecx, dword [0x45d928]
push dword [0x45d92c]
push dword [0x45d924]
call fcn.004237c4
jmp 0x404d75
push dword [0x45d928]
mov ecx, dword [0x45d92c]
push dword [0x45d924]
call fcn.0042afa5
jmp 0x404d75
push dword [0x45d920]
mov eax, ebp
call fcn.0042aaa1
jmp 0x404d75
push dword [0x45d940]
mov eax, dword [0x45d92c]
push dword [0x45d93c]
mov ecx, dword [0x45d928]
push dword [0x45d938]
push dword [0x45d934]
push dword [0x45d930]
push dword [0x45d924]
push dword [0x45d920]
call fcn.0042a931
jmp 0x404d75
push 0
push 4
jmp 0x405276
mov edi, dword [0x45d920]
push 7
call fcn.00416632
cmp eax, 7
pop ecx
jne 0x405229
xor ecx, ecx
push 0
inc ecx
jmp 0x405277
cmp byte [ebx + 0xcf], 0
je 0x40525b
cmp dword [0x45faa0], 0
jle 0x405243
dec dword [0x45faa0]
jmp 0x40524d
mov dword [0x45faa0], 0x18f
mov ecx, dword [0x45faa0]
and dword [ecx*4 + 0x45f460], 0
cmp eax, 1
sete al
mov byte [ebx + 0xcf], al
jmp 0x405a9f
push 0
push 2
jmp 0x405276
push 0
push 3
pop ecx
call fcn.0044533e
jmp 0x403e4b
mov ebx, dword [ebx + 0x50]
cmp ebx, 0x63
jae 0x405298
mov eax, dword [ebx*4 + 0x45e0f8]
test eax, eax
je 0x405298
mov esi, dword [eax]
jmp 0x40529a
xor esi, esi
mov al, byte [ebp + 1]
test al, al
jne 0x4052b7
push ecx
fldz
push ecx
fstp qword [esp]
push esi
push 0
push 0x10000
push str.Press_OK_to_continue.
jmp 0x4052f8
cmp al, 1
jne 0x4052d2
push ecx
fldz
push ecx
fstp qword [esp]
push esi
push 0
push 0x10000
push dword [0x45d920]
jmp 0x4052f8
push 3
pop eax
mov ecx, ebp
call fcn.00408e2f
push ecx
push ecx
fstp qword [esp]
push esi
push dword [0x45d924]
xor eax, eax
mov ecx, ebp
call fcn.00408da3
push eax
push dword [0x45d928]
call fcn.0043b30a
xor ebx, ebx
add esp, 0x18
test eax, eax
setne bl
jmp 0x405d1c
mov eax, dword [0x45d93c]
cmp byte [eax], 0
je 0x40532b
push 7
pop eax
mov ecx, ebp
call fcn.00408da3
mov dword [esp + 0x20], eax
mov esi, 0x80000000
jmp 0x405334
mov esi, 0x80000000
mov dword [esp + 0x20], esi
mov eax, dword [0x45d938]
cmp byte [eax], 0
je 0x40534e
push 6
pop eax
mov ecx, ebp
call fcn.00408da3
mov dword [esp + 0x34], eax
jmp 0x405352
mov dword [esp + 0x34], esi
mov eax, dword [0x45d934]
cmp byte [eax], 0
je 0x40536a
push 5
pop eax
mov ecx, ebp
call fcn.00408da3
mov ebx, eax
jmp 0x40536c
mov ebx, esi
mov eax, dword [0x45d930]
cmp byte [eax], 0
je 0x405382
push 4
pop eax
mov ecx, ebp
call fcn.00408da3
mov esi, eax
push 9
pop eax
mov ecx, ebp
call fcn.00408e2f
mov eax, dword [0x45d92c]
movsx eax, byte [eax]
push ecx
push ecx
fstp qword [esp]
push dword [0x45d948]
push dword [esp + 0x2c]
push dword [esp + 0x44]
push ebx
push esi
push eax
call dword [sym.imp.MSVCR71.dll_toupper]
cmp eax, 0x48
sete al
pop ecx
mov ecx, edi
push eax
push dword [0x45d928]
push dword [0x45d924]
call fcn.00424fd3
add esp, 0x28
jmp 0x404d75
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x4053ea
mov eax, esi
mov ecx, ebp
call fcn.00408da3
mov esi, eax
jmp 0x4053ec
xor esi, esi
mov eax, dword [0x45d920]
cmp byte [eax], 0
je 0x405401
xor eax, eax
mov ecx, ebp
call fcn.00408da3
jmp 0x405406
mov eax, 0xc8
push dword [0x45d92c]
push dword [0x45d928]
push esi
push eax
call fcn.00426e6b
jmp 0x404d75
mov eax, dword [0x45d9d4]
test eax, eax
je 0x40543e
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x40543e
push dword [0x45d9d4]
call dword [sym.imp.USER32.dll_DestroyWindow]
and dword [0x45d9d4], 0
jmp case.0x4031cd.3
push 0
push dword [0x45d930]
mov eax, 0x45282f
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
push ebp
call fcn.00425f45
jmp 0x404d75
mov eax, dword [0x45d920]
push esi
push dword [0x45d934]
push dword [0x45d930]
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
jmp 0x40546f
push dword [0x45d928]
mov eax, dword [0x45d92c]
push dword [0x45d924]
push dword [0x45d920]
push ebp
call fcn.004297e2
jmp 0x404d75
push dword [0x45d92c]
mov edx, dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
call fcn.00429a61
jmp 0x404d75
push ebp
call fcn.0040c450
jmp 0x404d75
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x40552a
mov edi, dword [sym.imp.MSVCR71.dll__stricmp]
push str.Screen
push eax
call edi
test eax, eax
pop ecx
pop ecx
je 0x40552a
push str.Relative
push dword [0x45d924]
call edi
test eax, eax
pop ecx
pop ecx
jne case.0x4031cd.3
mov byte [esp + 0x1e], al
jmp 0x40552f
mov byte [esp + 0x1e], 1
mov edi, dword [0x45d920]
call fcn.00415d9f
test al, al
je 0x405a9f
cmp byte [esp + 0x1e], 0
je 0x405554
or byte [ebx + 0xc8], al
jmp 0x405a9f
not al
and byte [ebx + 0xc8], al
jmp 0x405a9f
xor eax, eax
mov ecx, ebp
call fcn.00408da3
add ebx, 0xc7
cmp al, 0x64
mov byte [ebx], al
jbe case.0x4031cd.3
mov byte [ebx], 2
jmp case.0x4031cd.3
mov eax, dword [0x45d920]
add ebx, 0xac
push dword [ebx]
call fcn.0041683d
pop ecx
mov dword [ebx], eax
jmp case.0x4031cd.3
push str.Play
push dword [0x45d928]
call dword [sym.imp.MSVCR71.dll__stricmp]
pop ecx
test eax, eax
mov eax, dword [0x45d920]
pop ecx
jne 0x4055e8
cmp byte [eax], 0
je 0x4055c9
xor eax, eax
mov ecx, ebp
call fcn.00408da3
mov dword [ebx + 0x60], eax
mov eax, dword [0x45d924]
cmp byte [eax], 0
je case.0x4031cd.3
mov eax, esi
mov ecx, ebp
call fcn.00408da3
mov dword [ebx + 0x68], eax
jmp case.0x4031cd.3
cmp byte [eax], 0
je 0x4055f9
xor eax, eax
mov ecx, ebp
call fcn.00408da3
mov dword [ebx + 0x5c], eax
mov eax, dword [0x45d924]
cmp byte [eax], 0
je case.0x4031cd.3
mov eax, esi
mov ecx, ebp
call fcn.00408da3
mov dword [ebx + 0x64], eax
jmp case.0x4031cd.3
push str.Play
push dword [0x45d924]
call dword [sym.imp.MSVCR71.dll__stricmp]
test eax, eax
pop ecx
pop ecx
mov ecx, ebp
jne 0x40563e
call fcn.00408da3
mov dword [ebx + 0x70], eax
jmp case.0x4031cd.3
xor eax, eax
call fcn.00408da3
mov dword [ebx + 0x6c], eax
jmp case.0x4031cd.3
xor eax, eax
mov ecx, ebp
call fcn.00408da3
mov dword [ebx + 0x54], eax
jmp case.0x4031cd.3
xor eax, eax
mov ecx, ebp
call fcn.00408da3
mov dword [ebx + 0x58], eax
jmp case.0x4031cd.3
mov ecx, dword [0x45d920]
mov eax, 0x4549d0
call fcn.004388e8
test eax, eax
mov ecx, ebp
je 0x40569b
or dword [ebx], 0xffffffff
or dword [ebx + 4], 0xffffffff
xor eax, eax
call fcn.00408da3
mov dword [ebx + 0x24], eax
jmp case.0x4031cd.3
or dword [ebx + 0x24], 0xffffffff
xor eax, eax
call fcn.00408da3
mov dword [ebx], eax
or eax, edx
mov dword [ebx + 4], edx
jne case.0x4031cd.3
and dword [ebx + 4], 0
mov dword [ebx], 0xa
jmp case.0x4031cd.3
mov edi, dword [0x45d920]
push 7
call fcn.00416632
cmp eax, 7
pop ecx
je 0x405a9f
cmp eax, 1
sete al
mov byte [ebx + 0xca], al
jmp 0x405a9f
mov esi, dword [0x45d920]
call fcn.004169c8
dec eax
je 0x405755
dec eax
je 0x405749
dec eax
je 0x40573d
dec eax
je 0x405731
dec eax
je 0x405725
dec eax
je 0x405719
push dword [0x45d920]
push 0
push str.Requires_1_2_3_Slow_Fast__The_current_thread_will_exit.
jmp 0x404196
mov byte [ebx + 0xc1], 0
jmp 0x405a9f
mov byte [ebx + 0xc1], 1
jmp 0x405a9f
mov dword [ebx + 0x20], 4
jmp 0x405a9f
mov dword [ebx + 0x20], 3
jmp 0x405a9f
mov dword [ebx + 0x20], 2
jmp 0x405a9f
xor eax, eax
inc eax
mov dword [ebx + 0x20], eax
mov ebx, eax
jmp 0x405d24
mov edi, dword [sym.imp.MSVCR71.dll__strnicmp]
push 5
push str.Float
push dword [0x45d920]
call edi
add esp, 0xc
test eax, eax
jne 0x40584b
mov eax, esi
mov ecx, ebp
call fcn.0040c186
cmp eax, 0x1e
jae case.0x4031cd.3
xor eax, eax
inc eax
mov ecx, ebp
call fcn.00408da3
push 0x2e
push dword [0x45d924]
mov esi, eax
mov dword [esp + 0x98], esi
mov edi, edx
call dword [sym.imp.MSVCR71.dll_strchr]
test eax, eax
pop ecx
pop ecx
mov dword [esp + 0x20], eax
je 0x4057d2
mov esi, eax
inc esi
call fcn.00401ca2
mov esi, dword [esp + 0x90]
jmp 0x4057d6
xor eax, eax
xor edx, edx
add esi, eax
adc edi, edx
add esi, 2
adc edi, 0
mov dword [esp + 0x2c], edi
js 0x4057f8
jg 0x405a9f
cmp esi, 0xff
ja 0x405a9f
mov eax, dword [0x45d924]
push 0
push 1
push 1
push 1
call fcn.00401cdc
add esp, 0x10
test eax, eax
mov ecx, 0x454994
jne 0x40581b
mov ecx, 0x45282f
cmp dword [esp + 0x20], 0
mov eax, 0x45282f
jne 0x40582c
mov eax, 0x454990
push ecx
push eax
push dword [0x45d924]
add ebx, 0x74
push str.___s_s_s
push ebx
call dword [sym.imp.MSVCR71.dll_sprintf]
add esp, 0x14
jmp 0x404b17
push 7
push str.Integer
push dword [0x45d920]
call edi
add esp, 0xc
test eax, eax
jne case.0x4031cd.3
mov eax, dword [0x45d924]
mov al, byte [eax]
cmp al, 0x44
je 0x40588c
cmp al, 0x48
je 0x405880
cmp al, 0x64
je 0x40588c
cmp al, 0x68
jne case.0x4031cd.3
mov byte [ebx + 0xcc], 1
jmp case.0x4031cd.3
mov byte [ebx + 0xcc], 0
jmp case.0x4031cd.3
push dword [0x45d928]
mov ecx, dword [0x45d924]
call fcn.0042457c
jmp 0x404d75
push dword [0x45d930]
mov eax, dword [0x45d924]
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d920]
push 0x45fb58
call fcn.00436a87
jmp 0x404d75
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
push 0x45fb58
call fcn.00434c3a
jmp 0x404d75
push dword [0x45d924]
mov eax, dword [0x45d928]
push dword [0x45d920]
push ebp
call fcn.004321da
jmp 0x404d75
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
call fcn.00432f31
jmp 0x404d75
mov edi, dword [0x45d920]
xor esi, esi
push esi
call fcn.00416722
sub eax, esi
pop ecx
je 0x405981
dec eax
je 0x40596a
dec eax
je 0x40595b
sub eax, 3
je 0x405977
dec eax
dec eax
jmp 0x405971
cmp byte [0x45db1c], 0
je 0x405a9f
jmp 0x405977
cmp byte [0x45db1c], 0
jne 0x405a9f
call fcn.0041a3a6
jmp 0x405a9f
push dword [0x45d920]
push esi
push str.Parameter_1_invalid
jmp 0x404196
xor eax, eax
inc eax
mov ecx, ebp
call fcn.00408da3
mov edi, dword [0x45d920]
test eax, eax
setne al
push eax
push 0
call fcn.004166d2
pop ecx
mov ecx, ebp
call fcn.004159b3
jmp 0x404d75
mov edi, dword [0x45d920]
push 7
call fcn.00416632
cmp eax, 7
pop ecx
je 0x405a9f
cmp eax, 1
sete al
mov byte [ebx + 0xcb], al
jmp 0x405a9f
mov edi, dword [0x45d920]
call fcn.004168b0
cmp al, 4
lea ecx, [ebx + 0xc9]
mov byte [ecx], al
jne 0x405a9f
mov byte [ecx], 0
jmp 0x405a9f
mov edi, dword [0x45d920]
push 7
call fcn.00416632
cmp eax, 7
pop ecx
je 0x405a9f
cmp eax, 1
sete al
mov byte [ebx + 0xc2], al
jmp 0x405a9f
mov edi, dword [0x45d920]
push 7
call fcn.00416632
cmp eax, 7
pop ecx
je 0x405a9f
cmp eax, 1
sete al
mov byte [ebx + 0xc3], al
jmp 0x405a9f
mov edi, dword [0x45d920]
call fcn.00415a4b
cmp eax, 1
je 0x405a98
cmp eax, 2
je 0x405a94
cmp eax, 7
jle 0x405a9f
cmp eax, 0xb
jle 0x405a8d
cmp eax, 0xc
je 0x405a7f
cmp eax, 0xd
jne 0x405a9f
mov byte [0x45e403], 0
jmp 0x405a9f
mov byte [0x45e403], 1
call fcn.00410f24
jmp 0x405a9f
mov dword [0x45b180], eax
jmp 0x405a9f
xor bl, bl
jmp 0x405a9a
mov bl, 1
call fcn.0041a306
xor ebx, ebx
inc ebx
jmp 0x405d24
push 0x90
mov esi, str._a_a_a_v
jmp 0x405ac6
push 0x14
mov esi, 0x45b178
jmp 0x405ac6
push 0x91
mov esi, 0x45b17c
mov edi, dword [0x45d920]
call fcn.004280b1
jmp 0x403e4b
push esi
push 0x45fb58
call fcn.0041a2d9
jmp case.0x4031cd.3
xor eax, eax
mov ecx, ebp
call fcn.00408da3
cmp eax, 0x19
jge 0x404798
test eax, eax
jle 0x404798
jmp 0x404783
push dword [0x45d92c]
mov ecx, dword [0x45d930]
push dword [0x45d928]
push dword [0x45d924]
call fcn.0041a1cb
jmp 0x404d75
push dword [0x45d92c]
push dword [0x45d928]
push dword [0x45d924]
push dword [0x45d920]
call fcn.0041a259
jmp 0x404d75
cmp byte [ebp + 1], 3
sbb eax, eax
not eax
and eax, dword [0x45d928]
push eax
push dword [0x45d924]
push dword [0x45d920]
call fcn.0041a14d
jmp 0x404d75
mov al, byte [ebp + 1]
cmp al, 2
jae 0x405b94
mov ebx, dword [ebx + 0x14]
test ebx, ebx
je 0x405b94
lea eax, [ebx + 0x408]
push eax
lea eax, [ebx + 8]
push eax
push dword [ebx + 4]
call fcn.00419b7a
jmp 0x404d75
cmp al, 4
ja 0x405bc7
mov edi, dword [0x45d924]
call fcn.004199ae
test eax, eax
jne 0x405bc7
lea eax, [esp + 0x1f]
push eax
push dword [0x45d924]
call fcn.00419859
pop ecx
pop ecx
push dword [0x45d92c]
push dword [0x45d928]
jmp 0x405be5
lea eax, [esp + 0x1f]
push eax
push dword [0x45d928]
call fcn.00419859
pop ecx
pop ecx
push dword [0x45d930]
push dword [0x45d92c]
mov esi, eax
push esi
call fcn.00419b7a
jmp 0x405cd9
cmp byte [ebp + 1], 2
jae 0x405c23
mov ebx, dword [ebx + 0x14]
test ebx, ebx
je 0x405c23
push dword [0x45d920]
lea eax, [ebx + 0x408]
push eax
lea eax, [ebx + 8]
push eax
push dword [ebx + 4]
push dword [ebx + 0x808]
call fcn.00419ed3
jmp 0x404d75
lea eax, [esp + 0x1f]
push eax
push dword [0x45d924]
call fcn.00419859
mov edi, dword [0x45d920]
pop ecx
pop ecx
push dword [0x45d930]
mov esi, eax
push dword [0x45d92c]
push dword [0x45d928]
push esi
call fcn.004199ae
push eax
call fcn.00419ed3
jmp 0x405cd9
cmp byte [ebp + 1], 1
jae 0x405cb4
mov ecx, dword [ebx + 0x14]
test ecx, ecx
je 0x405cb4
cmp dword [ecx + 0x808], 0xfffffffe
lea eax, [ecx + 0x408]
jne 0x405cac
push eax
add ecx, 8
push ecx
push str._s_s
mov esi, 0x400
lea edi, [esp + 0xcc]
call fcn.0040a3cc
mov eax, dword [ebx + 0x14]
add esp, 0xc
push dword [eax + 4]
mov eax, 0x45282f
call fcn.00419aad
jmp 0x404d75
push dword [ecx + 4]
lea edi, [ecx + 8]
jmp 0x405ca2
lea eax, [esp + 0x1f]
push eax
push dword [0x45d920]
call fcn.00419859
mov edi, dword [0x45d924]
pop ecx
mov esi, eax
mov eax, dword [0x45d928]
pop ecx
push esi
call fcn.00419aad
cmp byte [esp + 0x1f], 0
mov ebx, eax
je 0x405d1c
test esi, esi
je 0x405d1c
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x405d1c
push dword [0x45d920]
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov ebx, esi
jmp 0x405d24
xor eax, eax
mov ecx, ebp
call fcn.00408da3
push eax
call fcn.0042bd79
neg al
pop ecx
sbb eax, eax
neg eax
jmp 0x404d75
xor ebx, ebx
test ebx, ebx
je 0x405e61
cmp dword [esp + 0x4c4], 3
je 0x405e61
mov ebp, dword [ebp + 0x14]
mov edi, dword [esp + 0x5c]
jmp 0x402bd2
add dword [0x460010], 1
mov eax, dword [esp + 0x6c]
adc dword [0x460014], 0
mov esi, dword [eax + 0xc]
test esi, esi
jne 0x405d6a
push esi
push dword [0x45d920]
mov ecx, 0x45fb58
call fcn.00448743
mov esi, eax
xor ebx, ebx
inc ebx
test esi, esi
je 0x402d49
mov eax, dword [0x45d924]
cmp byte [eax], 0
je 0x405d95
push 0x4542c8
push eax
call dword [sym.imp.MSVCR71.dll__stricmp]
test eax, eax
pop ecx
pop ecx
jne 0x405d95
mov al, bl
jmp 0x405d97
xor al, al
lea ecx, [esp + 0x44]
push ecx
push eax
xor eax, eax
mov ecx, esi
call fcn.004488c0
mov esi, dword [esp + 0x44]
test esi, esi
je 0x402d49
mov eax, esi
mov ecx, ebp
call fcn.00427004
test eax, eax
je 0x405f29
mov ecx, dword [edi + 0x94]
test ecx, ecx
je 0x405dff
mov eax, dword [esi + 4]
call fcn.00424fba
test eax, eax
je 0x405dff
and dword [edi + 0x94], 0
mov dword [esp + 0x20], 1
mov dword [edi + 0x98], ecx
mov ecx, esi
call fcn.004062b9
cmp dword [esp + 0x20], 0
jmp 0x402d23
and dword [esp + 0x20], 0
jmp 0x405dee
cmp dword [ebp + 0xc], 1
je 0x402bcf
mov ecx, dword [ebp + 0x14]
lea eax, [esp + 0x24]
push eax
push dword [esp + 0x4cc]
push 2
call fcn.004029a9
mov ecx, dword [esp + 0x24]
cmp ecx, ebp
mov ebx, eax
je 0x402bd2
cmp dword [esp + 0x4c4], 3
je 0x405e57
cmp ebx, 1
jne 0x405e61
cmp ecx, esi
je 0x402bcf
mov eax, dword [ebp + 0x1c]
cmp eax, dword [ecx + 0x1c]
je 0x402de6
mov eax, dword [esp + 0x38]
mov dword [eax], ecx
jmp 0x405e61
xor ebx, ebx
mov eax, ebx
jmp 0x402bf2
xor ebx, ebx
inc ebx
mov eax, dword [esp + 0x38]
mov dword [eax], edx
jmp 0x405e61
mov eax, dword [0x460234]
cmp word [eax], si
jne 0x405e9e
cmp dword [0x45f3fc], esi
jne 0x405e9e
cmp dword [0x45db00], esi
jne 0x405e9e
cmp dword [0x45db04], esi
jne 0x405e9e
cmp byte [0x45db14], 0
je 0x405f0d
push 8
pop eax
jmp 0x402bf2
mov eax, dword [esp + 0x4c8]
cmp eax, esi
je 0x405eb9
mov ecx, dword [0x45d920]
mov dword [eax], ecx
mov eax, dword [esp + 0x4c4]
dec eax
neg eax
sbb eax, eax
and eax, 6
inc eax
jmp 0x402bf2
mov eax, dword [eax + 4]
mov ecx, dword [esp + 0x38]
mov dword [ecx], eax
jmp 0x402bef
push dword [0x45d924]
push 0
push str.Parameter_2_invalid__The_current_thread_will_exit.
jmp 0x405f57
push dword [0x45d928]
push 0
push str.Parameter_3_invalid__The_current_thread_will_exit.
jmp 0x405f57
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x24]
mov dword [eax], ecx
jmp 0x402bef
push 5
jmp 0x405ea0
xor eax, eax
mov ecx, ebp
call fcn.00408da3
push eax
push esi
push 9
mov ecx, 0x45fb58
call fcn.0041741a
jmp 0x402bf2
xor eax, eax
jmp 0x402bf2
cmp ebx, 7
jne 0x405e61
jmp 0x402bef
cmp dword [esp + 0x4c4], 2
je 0x402bef
push 0x45282f
push esi
push str.A__return__must_be_encountered_prior_to_this___.__The_current_thread_will_exit.
mov ecx, ebp
call fcn.00444eab
jmp 0x402bf2
push 6
jmp 0x405ea0