Function at 0x42d90f
Capabilities:
Get graphical window text

Disassembly:
push ebp
lea ebp, [esp - 0x3e0]
sub esp, 0x460
mov eax, dword [0x4705d0]
xor eax, ebp
mov dword [ebp + 0x3dc], eax
push ebx
push esi
push edi
mov esi, 0x103
xor edi, edi
push esi
lea eax, [ebp + 0x2d9]
push edi
push eax
mov dword [ebp - 0x80], edi
mov byte [ebp + 0x2d8], 0
call fcn.004464f0
push esi
lea eax, [ebp - 0x73]
push edi
push eax
mov byte [ebp - 0x74], 0
call fcn.004464f0
push esi
lea eax, [ebp + 0x91]
push edi
push eax
mov byte [ebp + 0x90], 0
call fcn.004464f0
push esi
lea eax, [ebp + 0x195]
push edi
push eax
mov byte [ebp + 0x194], 0
call fcn.004464f0
push 0x3f
lea eax, [ebp + 0x299]
push edi
push eax
mov byte [ebp + 0x298], 0
call fcn.004464f0
mov ebx, dword [ebp + 0x3ec]
mov esi, dword [ebp + 0x3e8]
imul ebx, ebx, 0xf54
shl esi, 2
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.TEXT
push eax
call fcn.004010ff
add esp, 0x44
test eax, eax
je 0x42da39
mov eax, dword [esi + 0x473bec]
push edi
push edi
push dword [ebp + 0x3ec]
lea eax, [eax + ebx + 0x364]
push dword [ebp + 0x3e8]
push eax
call fcn.00439ea7
mov eax, dword [0x4775e4]
cmp byte [eax], 0
je 0x42da27
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
call edi
mov ecx, eax
push 0x3f
inc ecx
pop eax
cmp ecx, eax
jg 0x42da11
push dword [0x4775e4]
call edi
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x298]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
jmp 0x42da39
push 0x45984c
lea eax, [ebp + 0x298]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [esi + 0x473bec]
push 0
push 0
push dword [ebp + 0x3ec]
push dword [ebp + 0x3e8]
push dword [eax + ebx + 0x50]
call fcn.00439ea7
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.GOTO
push eax
call fcn.004010ff
pop ecx
pop ecx
mov edi, str.GOSUB
test eax, eax
jne 0x42ef91
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.to_Label
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42ef91
mov eax, dword [esi + 0x473bec]
add eax, ebx
je 0x42dabd
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
mov eax, dword [esi + 0x473bec]
add eax, ebx
push edi
push eax
call fcn.00446461
add esp, 0xc
jmp 0x42dac0
xor eax, eax
inc eax
test eax, eax
je 0x42ef91
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.RETURN
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42db4c
mov eax, dword [0x476fac]
cmp eax, 1
jge 0x42db02
mov eax, dword [0x473bbc]
test eax, eax
je 0x42f22c
push str.No_matching_GOSUB_found
jmp 0x42f225
mov eax, dword [eax*4 + 0x477028]
test eax, eax
jge 0x42db11
xor eax, eax
jmp 0x42db20
mov esi, dword [esi + 0x4725d4]
lea ecx, [esi - 1]
cmp eax, ecx
jle 0x42db20
mov eax, ecx
inc eax
mov dword [0x47040c], eax
inc eax
push eax
push str.____Returning_from_GOSUB_to__Step__d_
call fcn.0042036e
mov eax, dword [0x476fac]
and dword [eax*4 + 0x477028], 0
dec dword [0x476fac]
pop ecx
pop ecx
jmp 0x42f212
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.Repeats
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42dbe4
mov eax, dword [esi + 0x4725f4]
test eax, eax
jne 0x42dbbc
push 0x45fc1c
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x42dba7
mov dword [esi + 0x4725f4], 0x77359400
mov eax, dword [ebp + 0x3ec]
inc eax
jns 0x42ef87
and dword [0x47040c], 0
jmp 0x42f212
push dword [0x4775e4]
call fcn.0040109c
dec eax
pop ecx
mov dword [esi + 0x4725f4], eax
jmp 0x42db8e
cmp eax, 0x77359400
jne 0x42dbd0
push str.____An_eternity_of_Run_Repeats_still_remaining....
call fcn.0042036e
pop ecx
jmp 0x42db8e
test eax, eax
jge 0x42dbd6
xor eax, eax
push eax
push str._____d_Run_Repeat_s__remaining
call fcn.0042036e
pop ecx
jmp 0x42dbcd
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.Exit_Run
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42dc16
push dword [0x4775e4]
call fcn.0040109c
pop ecx
mov dword [0x470008], eax
or eax, 0xffffffff
jmp 0x42f22e
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.Exit
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42dc6b
push dword [0x4775e4]
call fcn.0040109c
test byte [0x472680], 4
pop ecx
mov dword [0x470008], eax
je 0x42dc57
push dword [0x472420]
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x42dc0e
push 0
push 0
push 0x10
push dword [0x472420]
call dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x42dc0e
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.Break
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42dd94
cmp dword [0x476fe0], 1
jl 0x42e1ae
mov ebx, dword [ebp + 0x3ec]
push ebx
push dword [ebp + 0x3e8]
call fcn.0041ed82
mov ecx, eax
cmp ebx, ecx
mov dword [0x47040c], ecx
jl 0x42dcb5
mov ebx, ecx
cmp dword [0x476fe0], 1
jl 0x42e1ae
mov edi, ebx
imul edi, edi, 0xf54
jmp 0x42dcd2
mov ecx, dword [0x47040c]
mov eax, dword [ebp + 0x3ec]
cmp eax, ecx
jg 0x42dcde
mov eax, ecx
cmp ebx, eax
jge 0x42e1ae
mov eax, dword [esi + 0x473bec]
add eax, edi
test byte [eax + 0x48], 3
jne 0x42dd7b
push str.END_IF
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42dd47
mov eax, dword [esi + 0x473bec]
add eax, edi
je 0x42dd25
push 3
push 0x45a098
push eax
call fcn.00446461
add esp, 0xc
jmp 0x42dd28
xor eax, eax
inc eax
test eax, eax
jne 0x42dd7b
mov eax, dword [esi + 0x473bec]
lea eax, [edi + eax + 0x58]
push str.Quick
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42dd7b
mov eax, dword [0x476fe0]
push dword [eax*4 + 0x476fe8]
push str.____Leaving__and_closing__IF_block_which_was_entered_at__Step__d_
call fcn.0042036e
mov eax, dword [0x476fe0]
and dword [eax*4 + 0x476fe8], 0
dec dword [0x476fe0]
pop ecx
pop ecx
jns 0x42dd7b
and dword [0x476fe0], 0
inc ebx
add edi, 0xf54
cmp dword [0x476fe0], 1
jge 0x42dccc
jmp 0x42e1ae
mov eax, dword [esi + 0x473bec]
add eax, ebx
push 0x45a05c
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ef0f
mov edi, dword [ebp + 0x3e8]
mov eax, dword [ebp + 0x3ec]
shl edi, 6
lea ecx, [edi + 0x476528]
inc eax
cmp dword [ecx], eax
je 0x42df97
lea edx, [edi + 0x47652c]
test edx, edx
je 0x42ddef
test ecx, ecx
je 0x42ddef
push 0x3c
lea eax, [edi + 0x476528]
push eax
push edx
call fcn.00446570
add esp, 0xc
lea ecx, [edi + 0x47672c]
test ecx, ecx
je 0x42de0f
lea eax, [edi + 0x476728]
test eax, eax
je 0x42de0f
push 0x3c
push eax
push ecx
call fcn.00446570
add esp, 0xc
lea ecx, [edi + 0x47692c]
test ecx, ecx
je 0x42de2f
lea eax, [edi + 0x476928]
test eax, eax
je 0x42de2f
push 0x3c
push eax
push ecx
call fcn.00446570
add esp, 0xc
lea ecx, [edi + 0x476b2c]
test ecx, ecx
je 0x42de4f
lea eax, [edi + 0x476b28]
test eax, eax
je 0x42de4f
push 0x3c
push eax
push ecx
call fcn.00446570
add esp, 0xc
lea ecx, [edi + 0x476d2c]
test ecx, ecx
je 0x42de6f
lea eax, [edi + 0x476d28]
test eax, eax
je 0x42de6f
push 0x3c
push eax
push ecx
call fcn.00446570
add esp, 0xc
push 0x3c
push 0x4764e8
push 0x4764ec
call fcn.00446570
fld1
mov eax, dword [ebp + 0x3ec]
fst dword [edi + 0x476b28]
add esp, 0xc
fstp dword [edi + 0x476d28]
inc eax
mov dword [edi + 0x476528], eax
xor eax, eax
push eax
push eax
push dword [ebp + 0x3ec]
mov dword [edi + 0x476728], eax
push dword [ebp + 0x3e8]
mov dword [0x4764e8], eax
mov eax, dword [esi + 0x473bec]
push dword [eax + ebx + 0x50]
call fcn.00439ea7
mov eax, dword [0x4775e4]
cmp byte [eax], 0
je 0x42dede
push eax
call fcn.004481cb
fstp dword [ebp - 0x78]
pop ecx
jmp 0x42dee3
fld1
fstp dword [ebp - 0x78]
mov eax, dword [esi + 0x473bec]
fld dword [ebp - 0x78]
add eax, ebx
fstp dword [edi + 0x476928]
push 0x45fb64
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42df97
mov eax, dword [esi + 0x473bec]
push 0
push 0
push dword [ebp + 0x3ec]
lea eax, [eax + ebx + 0x364]
push dword [ebp + 0x3e8]
push eax
call fcn.00439ea7
mov eax, dword [0x4775e4]
cmp byte [eax], 0
je 0x42df42
push eax
call fcn.004481cb
fstp dword [ebp - 0x78]
pop ecx
jmp 0x42df47
fld1
fstp dword [ebp - 0x78]
mov eax, dword [esi + 0x473bec]
fld dword [ebp - 0x78]
push 0
fstp dword [edi + 0x476d28]
push 0
push dword [ebp + 0x3ec]
lea eax, [eax + ebx + 0x468]
push dword [ebp + 0x3e8]
push eax
call fcn.00439ea7
mov eax, dword [0x4775e4]
cmp byte [eax], 0
je 0x42df89
push eax
call fcn.004481cb
fstp dword [ebp - 0x78]
pop ecx
jmp 0x42df8e
fld1
fstp dword [ebp - 0x78]
fld dword [ebp - 0x78]
fstp dword [edi + 0x476b28]
push 7
lea eax, [edi + 0x476d28]
fld dword [eax]
push ecx
push ecx
mov dword [ebp - 0x7c], eax
fstp qword [esp]
lea eax, [ebp + 0x2d8]
push eax
call fcn.00416b8a
lea eax, [ebp + 0x2d8]
push eax
push str.Loop:__s
push 2
push 0
push dword [0x472434]
call fcn.0041f060
mov eax, dword [esi + 0x473bec]
add eax, ebx
push 0x45fb64
push eax
call fcn.004010ff
add esp, 0x2c
test eax, eax
je 0x42e0b5
fldz
mov ecx, dword [ebp - 0x7c]
fcom dword [edi + 0x476b28]
fnstsw ax
test ah, 0x41
jne 0x42e015
fld dword [ecx]
fld dword [edi + 0x476928]
fcompp
fnstsw ax
test ah, 0x41
je 0x42e0a4
fcomp dword [edi + 0x476b28]
fnstsw ax
test ah, 5
jp 0x42e033
fld dword [ecx]
fld dword [edi + 0x476928]
fcompp
fnstsw ax
test ah, 5
jnp 0x42e0a6
fld dword [ecx]
push 7
push ecx
push ecx
lea eax, [ebp + 0x2d8]
fstp qword [esp]
push eax
call fcn.00416b8a
add esp, 0x10
lea eax, [ebp + 0x2d8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp + 0x2d8]
push eax
push dword [ebp + 0x3ec]
push dword [ebp + 0x3e8]
call fcn.00423053
fld dword [edi + 0x476928]
push 7
push ecx
push ecx
lea eax, [ebp - 0x74]
fstp qword [esp]
push eax
call fcn.00416b8a
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp + 0x2d8]
push eax
push str.____Loop__s_of__s
call fcn.0042036e
add esp, 0x1c
jmp 0x42db8e
fstp st(0)
fld dword [ecx]
fsub dword [edi + 0x476b28]
fstp dword [ecx]
jmp 0x42e1ae
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.WHILE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42e312
push dword [0x4775e4]
call fcn.0041f974
test eax, eax
jne 0x42e0e8
mov dword [ebp - 0x80], 1
cmp byte [0x476258], 2
jb 0x42e163
push dword [0x4775e4]
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
call esi
mov ecx, eax
inc ecx
mov eax, 0x103
cmp ecx, eax
jg 0x42e114
push dword [0x4775e4]
call esi
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x2d8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
push 4
lea eax, [ebp + 0x3bc]
push 0x45e2fc
push eax
call fcn.00445ea0
add esp, 0xc
cmp dword [ebp - 0x80], 0
mov eax, str.FALSE
jne 0x42e14e
mov eax, str.TRUE
push eax
lea eax, [ebp + 0x2d8]
push eax
push str.____Expression:___s____s
call fcn.0042036e
add esp, 0xc
mov eax, dword [ebp - 0x7c]
fld dword [eax]
push 7
push ecx
push ecx
lea eax, [ebp + 0x2d8]
fstp qword [esp]
push eax
call fcn.00416b8a
add esp, 0x10
lea eax, [ebp + 0x2d8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp + 0x2d8]
push eax
push dword [ebp + 0x3ec]
push dword [ebp + 0x3e8]
call fcn.00423053
cmp dword [ebp - 0x80], 0
je 0x42db8e
push dword [ebp + 0x3ec]
mov esi, dword [ebp + 0x3e8]
push esi
call fcn.0041ed82
push 7
inc eax
push ecx
shl esi, 6
fld dword [esi + 0x476d28]
push ecx
mov dword [0x47040c], eax
fstp qword [esp]
lea eax, [ebp + 0x2d8]
push eax
call fcn.00416b8a
mov eax, dword [0x47040c]
inc eax
push eax
lea ebx, [esi + 0x476728]
push dword [ebx]
lea eax, [ebp + 0x2d8]
push eax
lea edi, [esi + 0x476528]
push dword [edi]
push str.____END_OF_LOOP_from__Step__d___Final_Value:__s__Total_Loops:__d__Continuing_with__Step__d_...
call fcn.0042036e
lea eax, [ebp + 0x2d8]
push eax
push str.Loop:__s
push 2
push 1
push dword [0x472434]
call fcn.0041f060
add esp, 0x38
test edi, edi
je 0x42e242
lea eax, [esi + 0x47652c]
test eax, eax
je 0x42e242
push 0x3c
push eax
push edi
call fcn.00446570
add esp, 0xc
test ebx, ebx
je 0x42e25c
lea eax, [esi + 0x47672c]
test eax, eax
je 0x42e25c
push 0x3c
push eax
push ebx
call fcn.00446570
add esp, 0xc
lea ecx, [esi + 0x476928]
test ecx, ecx
je 0x42e27c
lea eax, [esi + 0x47692c]
test eax, eax
je 0x42e27c
push 0x3c
push eax
push ecx
call fcn.00446570
add esp, 0xc
lea ecx, [esi + 0x476b28]
test ecx, ecx
je 0x42e29c
lea eax, [esi + 0x476b2c]
test eax, eax
je 0x42e29c
push 0x3c
push eax
push ecx
call fcn.00446570
add esp, 0xc
lea eax, [esi + 0x476d28]
test eax, eax
je 0x42e2c2
lea eax, [esi + 0x476d2c]
test eax, eax
je 0x42e2c2
push 0x3c
push eax
lea eax, [esi + 0x476d28]
push eax
call fcn.00446570
add esp, 0xc
mov eax, dword [0x4764e8]
test eax, eax
je 0x42e2d2
push eax
call fcn.00445e06
pop ecx
push 0x3c
push 0x4764ec
push 0x4764e8
call fcn.00446570
fldz
fst dword [esi + 0x476964]
add esp, 0xc
xor eax, eax
fst dword [esi + 0x476b64]
fstp dword [esi + 0x476d64]
mov dword [esi + 0x476564], eax
mov dword [esi + 0x476764], eax
mov dword [0x476524], eax
jmp 0x42f212
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.TEXT
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42e3ed
push dword [0x4775e4]
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
call edi
mov ebx, eax
lea ecx, [ebx + 0x100]
mov eax, 0x1000
cmp ecx, eax
jle 0x42e350
mov eax, ecx
push 1
push eax
call fcn.004462a8
mov esi, dword [0x4775e4]
pop ecx
pop ecx
mov dword [ebp - 0x78], eax
test eax, eax
je 0x42e3ae
cmp byte [esi], 0
je 0x42e3ae
push 0
push 1
inc ebx
push ebx
push eax
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00448380
dec eax
push eax
lea eax, [ebp + 0x298]
push eax
push esi
call fcn.004432d3
push dword [ebp - 0x78]
call edi
push eax
push dword [ebp - 0x78]
push dword [ebp + 0x3ec]
push dword [ebp + 0x3e8]
call fcn.00423053
mov esi, dword [0x4775e4]
jmp 0x42e3b5
mov dword [ebp - 0x80], 1
lea eax, [ebp + 0x298]
push eax
push esi
call fcn.0043f997
mov esi, eax
mov eax, dword [ebp - 0x7c]
fld dword [eax]
inc esi
call fcn.00448380
dec eax
cmp esi, eax
jg 0x42e3db
mov dword [ebp - 0x80], 1
cmp dword [ebp - 0x78], 0
je 0x42e1a4
push dword [ebp - 0x78]
jmp 0x42e4aa
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.FILE_LINE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42e4b5
push 0x103
lea eax, [ebp + 0x2d8]
push eax
mov eax, dword [ebp + 0x3e8]
imul eax, eax, 0x104
add eax, 0x472858
push eax
push dword [0x4775e4]
call fcn.0040f245
lea eax, [ebp + 0x2d8]
push eax
call fcn.0040d86d
mov esi, eax
lea eax, [esi + 0x100]
mov ecx, 0x1000
cmp eax, ecx
ja 0x42e452
mov eax, ecx
push 1
push eax
call fcn.004462a8
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x42e1ae
mov eax, dword [ebp - 0x7c]
fld dword [eax]
push 0
inc esi
push esi
push edi
call fcn.00448380
push eax
lea eax, [ebp + 0x2d8]
push eax
call fcn.0040deb6
test eax, eax
je 0x42e4a2
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push edi
push dword [ebp + 0x3ec]
push dword [ebp + 0x3e8]
call fcn.00423053
jmp 0x42e4a9
mov dword [ebp - 0x80], 1
push edi
call fcn.00445e06
pop ecx
jmp 0x42e1a4
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.FILE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42e6bb
fld1
mov eax, dword [ebp - 0x7c]
fcomp dword [eax]
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
fnstsw ax
test ah, 1
jne 0x42e643
push dword [0x4775e4]
call edi
inc eax
cmp eax, 0x103
jle 0x42e501
mov eax, 0x103
jmp 0x42e50a
push dword [0x4775e4]
call edi
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x194]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
lea eax, [ebp + 0x194]
push eax
call edi
lea ecx, [ebp + 0x194]
dec ecx
cmp byte [eax + ecx], 0x5c
jne 0x42e574
lea eax, [ebp + 0x194]
push 0x45befc
push eax
call fcn.00445d80
pop ecx
pop ecx
test eax, eax
jne 0x42e574
lea eax, [ebp + 0x194]
push 0x45af3c
push eax
call fcn.00445d80
pop ecx
pop ecx
test eax, eax
jne 0x42e574
push 0x45c518
lea eax, [ebp + 0x194]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp + 0x194]
push 0x45befc
push eax
call fcn.00445d80
pop ecx
pop ecx
test eax, eax
jne 0x42e5c4
lea eax, [ebp + 0x194]
push 0x45af3c
push eax
call fcn.00445d80
pop ecx
pop ecx
test eax, eax
jne 0x42e5c4
lea eax, [ebp + 0x194]
push 0x45b780
push eax
call fcn.00445d80
pop ecx
pop ecx
test eax, eax
jne 0x42e5c4
push str.____WARNING___The_filespec_does_not_appear_to_contain_any_wildcards
call fcn.0042036e
pop ecx
push 1
push 0x2000000
call fcn.004462a8
pop ecx
pop ecx
mov dword [0x4764e8], eax
test eax, eax
je 0x42f22c
mov eax, dword [esi + 0x473bec]
lea eax, [eax + ebx + 0x58]
push str.Recur
push eax
call fcn.004010ff
pop ecx
pop ecx
push 0x45984c
test eax, eax
push 0
lea eax, [ebp + 0x194]
je 0x42e60b
push 1
jmp 0x42e60d
push 0
push 0x1fffdf8
push dword [0x4764e8]
push eax
call fcn.0040ee75
mov ecx, str.file
cmp eax, 1
je 0x42e62d
mov ecx, str.total_files
lea edx, [ebp + 0x194]
push edx
push ecx
push eax
push str._____d__s_match_for_file_spec___s_
call fcn.0042036e
add esp, 0x10
push 0
push 1
lea eax, [ebp + 0x2d8]
push 0x103
push eax
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00448380
dec eax
push eax
push 0x45984c
push dword [0x4764e8]
call fcn.004432d3
cmp byte [ebp + 0x2d8], 0
je 0x42e69f
lea eax, [ebp + 0x2d8]
push eax
call edi
push eax
lea eax, [ebp + 0x2d8]
push eax
push dword [ebp + 0x3ec]
push dword [ebp + 0x3e8]
call fcn.00423053
jmp 0x42db8e
mov eax, dword [0x4764e8]
test eax, eax
je 0x42e6af
push eax
call fcn.00445e06
pop ecx
and dword [0x4764e8], 0
jmp 0x42e1ae
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.FOLDER
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42e7f5
fld1
mov eax, dword [ebp - 0x7c]
fcomp dword [eax]
fnstsw ax
test ah, 1
jne 0x42e791
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
mov edi, 0x103
cmp eax, edi
jle 0x42e704
mov eax, edi
jmp 0x42e711
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x194]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [0x47637c]
test eax, eax
je 0x42e735
push eax
call fcn.00445e06
pop ecx
push 1
push 0x2000000
call fcn.004462a8
pop ecx
pop ecx
mov dword [0x47637c], eax
test eax, eax
je 0x42f22c
mov eax, dword [esi + 0x473bec]
lea eax, [eax + ebx + 0x58]
push str.Recur
push eax
call fcn.004010ff
pop ecx
pop ecx
push 0x45984c
test eax, eax
push 1
lea eax, [ebp + 0x194]
je 0x42e78d
push 1
push 0x1ffff00
push dword [0x47637c]
push eax
call fcn.0040ee75
jmp 0x42e796
push 0
jmp 0x42e77a
mov edi, 0x103
push 0
push 1
lea eax, [ebp + 0x2d8]
push edi
push eax
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00448380
dec eax
push eax
push 0x45984c
push dword [0x47637c]
call fcn.004432d3
cmp byte [ebp + 0x2d8], 0
je 0x42e7d9
lea eax, [ebp + 0x2d8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
jmp 0x42e681
mov eax, dword [0x47637c]
test eax, eax
je 0x42e7e9
push eax
call fcn.00445e06
pop ecx
and dword [0x47637c], 0
jmp 0x42e1ae
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.PROCESS
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42e9c4
fld1
mov eax, dword [ebp - 0x7c]
fcomp dword [eax]
fnstsw ax
test ah, 1
jne 0x42e86d
mov eax, dword [0x476484]
test eax, eax
je 0x42e830
push eax
call fcn.00445e06
pop ecx
push 1
push 0x2000000
call fcn.004462a8
pop ecx
pop ecx
push 2
push 0
mov edi, 0x1fff000
push edi
push eax
push 1
push 0
mov dword [0x476484], eax
call fcn.00442bcb
test eax, eax
jne 0x42e86d
push 1
push eax
push edi
push dword [0x476484]
push 1
push eax
call fcn.00442bcb
push 0
push 1
lea eax, [ebp + 0x2d8]
push 0x103
push eax
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00448380
dec eax
push eax
push 0x45984c
push dword [0x476484]
call fcn.004432d3
mov edi, 0x45b88c
lea eax, [ebp + 0x2d8]
push edi
push eax
call fcn.00445d80
pop ecx
pop ecx
test eax, eax
je 0x42e8cf
lea eax, [ebp + 0x2d8]
push edi
push eax
call fcn.00445d80
pop ecx
pop ecx
inc eax
push eax
lea eax, [ebp + 0x90]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
push edi
lea eax, [ebp + 0x2d8]
push eax
call fcn.0043fbb2
cmp byte [ebp + 0x2d8], 0
je 0x42e9a8
mov eax, dword [esi + 0x473bec]
lea eax, [eax + ebx + 0x58]
push 0x45fa1c
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42e943
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x45b890
lea eax, [ebp + 0x90]
push eax
call esi
lea eax, [ebp + 0x2d8]
push eax
lea eax, [ebp + 0x90]
push eax
call esi
lea eax, [ebp + 0x90]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp + 0x90]
jmp 0x42e688
mov eax, dword [esi + 0x473bec]
lea eax, [eax + ebx + 0x58]
push str.EXE_
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42e987
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x45b890
lea eax, [ebp + 0x2d8]
push eax
call esi
lea eax, [ebp + 0x90]
push eax
lea eax, [ebp + 0x2d8]
push eax
call esi
jmp 0x42e7c7
mov eax, dword [esi + 0x473bec]
lea eax, [eax + ebx + 0x58]
push 0x45d970
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42e7c7
jmp 0x42e92a
mov eax, dword [0x476484]
test eax, eax
je 0x42e9b8
push eax
call fcn.00445e06
pop ecx
and dword [0x476484], 0
jmp 0x42e1ae
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.REGISTRY
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ea39
push dword [0x4775e4]
call fcn.0043eca3
mov edi, eax
mov eax, dword [esi + 0x473bec]
lea eax, [eax + ebx + 0x58]
push str.Parent
push eax
call fcn.004010ff
neg eax
sbb eax, eax
inc eax
pop ecx
inc eax
pop ecx
push eax
lea eax, [ebp + 0x2d8]
push eax
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00448380
dec eax
push eax
push dword [0x4775e4]
push edi
call fcn.0043ee19
cmp byte [ebp + 0x2d8], 0
je 0x42e1ae
jmp 0x42e7c7
mov eax, dword [esi + 0x473bec]
add eax, ebx
push 0x45aacc
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ec87
fld1
mov eax, dword [ebp - 0x7c]
fcomp dword [eax]
fnstsw ax
test ah, 1
je 0x42eb05
mov eax, dword [0x472468]
test eax, eax
je 0x42eb05
mov edi, dword [sym.imp.USER32.dll_GetWindow]
push 2
push eax
jmp 0x42eaf5
mov eax, dword [esi + 0x473bec]
lea eax, [eax + ebx + 0x58]
push str.Child
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42eb86
push 0xfffffffffffffff0
push dword [0x472468]
call dword [sym.imp.USER32.dll_GetWindowLongA]
test eax, 0x400000
jne 0x42eac9
push 0xfffffffffffffff0
push dword [0x472468]
call dword [sym.imp.USER32.dll_GetWindowLongA]
test eax, 0x40000
je 0x42eaed
push dword [0x472468]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x42eaed
push dword [0x472468]
call dword [sym.imp.USER32.dll_GetParent]
test eax, eax
je 0x42eb86
push 2
push dword [0x472468]
call edi
mov dword [0x472468], eax
test eax, eax
jne 0x42ea80
jmp 0x42e1ae
mov eax, dword [esi + 0x473bec]
xor edi, edi
push edi
push edi
push dword [ebp + 0x3ec]
lea eax, [eax + ebx + 0x364]
push dword [ebp + 0x3e8]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call fcn.0040109c
pop ecx
mov dword [0x472468], eax
cmp eax, edi
jne 0x42eb58
push edi
call dword [sym.imp.USER32.dll_GetTopWindow]
mov dword [0x472468], eax
cmp eax, edi
jne 0x42eb58
call dword [sym.imp.USER32.dll_GetForegroundWindow]
mov dword [0x472468], eax
mov eax, dword [esi + 0x473bec]
lea eax, [eax + ebx + 0x58]
push str.Controls
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ebdd
push 5
push dword [0x472468]
call dword [sym.imp.USER32.dll_GetWindow]
mov dword [0x472468], eax
cmp dword [0x472468], 0
je 0x42e1ae
mov eax, dword [esi + 0x473bec]
lea eax, [eax + ebx + 0x58]
push str.handle
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ec68
push dword [0x472468]
lea eax, [ebp - 0x74]
push 0x45aabc
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea eax, [ebp - 0x74]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp - 0x74]
jmp 0x42e688
mov eax, dword [esi + 0x473bec]
lea eax, [eax + ebx + 0x58]
push str.Child
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42eb86
mov eax, dword [0x472468]
test eax, eax
je 0x42e1ae
mov edi, dword [sym.imp.USER32.dll_GetWindowLongA]
push 0xfffffffffffffff0
push eax
call edi
test eax, 0x400000
jne 0x42ec28
push 0xfffffffffffffff0
push dword [0x472468]
call edi
test eax, 0x40000
je 0x42ec4c
push dword [0x472468]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x42ec4c
push dword [0x472468]
call dword [sym.imp.USER32.dll_GetParent]
test eax, eax
je 0x42eb86
push 2
push dword [0x472468]
call dword [sym.imp.USER32.dll_GetWindow]
mov dword [0x472468], eax
test eax, eax
jne 0x42ec0b
jmp 0x42e1ae
lea eax, [ebp + 0x2d8]
push eax
push 0x103
push 0xd
push dword [0x472468]
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x42e7c7
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.DATA
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ee87
fld1
mov eax, dword [ebp - 0x7c]
fcomp dword [eax]
fnstsw ax
test ah, 1
jne 0x42eda9
fild dword [0x473c10]
mov eax, dword [0x473c0c]
cmp eax, 0x10
mov dword [0x476fa8], eax
fstp dword [edi + 0x476928]
jle 0x42ecd4
push 0x10
pop eax
shl eax, 2
push eax
push 0x471c20
push 0x476f68
call fcn.00445ea0
add esp, 0xc
mov esi, 0x476f28
mov eax, dword [esi]
test eax, eax
je 0x42ecff
push eax
call fcn.00445e06
and dword [esi], 0
pop ecx
add esi, 4
cmp esi, 0x476f68
jl 0x42ecef
xor ebx, ebx
mov eax, dword [0x476fa8]
cmp eax, 0x10
jle 0x42ed19
push 0x10
pop eax
cmp ebx, eax
jge 0x42eda9
mov esi, ebx
shl esi, 2
mov eax, dword [esi + 0x473c18]
test eax, eax
je 0x42eda9
push eax
call fcn.00446205
add eax, 0x100
pop ecx
cmp eax, 0x1000
jbe 0x42ed5f
mov eax, dword [esi + 0x473c18]
test eax, eax
je 0x42ed56
push eax
call fcn.00446205
pop ecx
jmp 0x42ed58
xor eax, eax
add eax, 0x100
jmp 0x42ed64
mov eax, 0x1000
push 1
push eax
call fcn.004462a8
pop ecx
pop ecx
mov dword [esi + 0x476f28], eax
test eax, eax
je 0x42eda3
mov eax, dword [esi + 0x473c18]
test eax, eax
je 0x42ed8b
push eax
call fcn.00446205
pop ecx
jmp 0x42ed8d
xor eax, eax
inc eax
push eax
push dword [esi + 0x473c18]
push dword [esi + 0x476f28]
call fcn.00445ea0
add esp, 0xc
inc ebx
jmp 0x42ed0c
cmp dword [0x476f28], 0
je 0x42e1ae
fld1
fcomp dword [edi + 0x476928]
fnstsw ax
test ah, 0x41
je 0x42e1ae
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00448380
mov dword [ebp - 0x78], eax
fild dword [ebp - 0x78]
fld dword [edi + 0x476928]
fcompp
fnstsw ax
test ah, 5
jnp 0x42e1ae
push 1
push 0x8000
call fcn.004462a8
and dword [ebp - 0x78], 0
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
pop ecx
pop ecx
mov esi, eax
mov eax, dword [0x476fa8]
cmp eax, 0x10
jle 0x42ee13
push 0x10
pop eax
cmp dword [ebp - 0x78], eax
jge 0x42ee50
test esi, esi
je 0x42ee4b
mov eax, dword [ebp - 0x78]
mov ebx, dword [eax*4 + 0x476f68]
mov eax, dword [ebp - 0x7c]
fld dword [eax]
inc ebx
call fcn.00448380
dec eax
imul ebx, eax
mov eax, dword [ebp - 0x78]
add ebx, dword [eax*4 + 0x476f28]
push ebx
push esi
call edi
push 0x45ea20
push esi
call edi
inc dword [ebp - 0x78]
jmp 0x42ee06
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
push esi
call edi
push esi
mov byte [eax + esi - 2], 0
call edi
push eax
push esi
push dword [ebp + 0x3ec]
push dword [ebp + 0x3e8]
call fcn.00423053
test esi, esi
je 0x42db8e
push esi
call fcn.00445e06
jmp 0x42dbcd
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.MESSAGE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42db8e
cmp byte [0x4773a8], 0
jne 0x42eee4
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x47247c]
test eax, eax
je 0x42eedd
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x42eedd
push 0
call esi
push 0xc8
call esi
cmp byte [0x4773a8], 0
je 0x42eeb3
jmp 0x42eee4
mov dword [ebp - 0x80], 1
mov esi, 0x4773a8
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push esi
push dword [ebp + 0x3ec]
push dword [ebp + 0x3e8]
call fcn.00423053
mov byte [0x4773a8], 0
jmp 0x42e1a4
mov eax, dword [esi + 0x473bec]
add eax, ebx
push str.NEXT_LOOP
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42db8e
push dword [ebp + 0x3ec]
push dword [ebp + 0x3e8]
call fcn.0041ecbc
fldz
mov ecx, dword [ebp + 0x3e8]
shl ecx, 6
lea esi, [ecx + 0x476b28]
fcomp dword [esi]
mov edx, eax
mov dword [0x47040c], edx
fnstsw ax
test ah, 0x44
jp 0x42ef63
fld1
jmp 0x42ef65
fld dword [esi]
inc dword [ecx + 0x476728]
fstp dword [ebp - 0x78]
fld dword [ebp - 0x78]
lea eax, [ecx + 0x476d28]
fadd dword [eax]
inc edx
push edx
push str.____Jumping_to_START_LOOP_at__Step__d_...
fstp dword [eax]
jmp 0x42f11a
mov dword [0x47040c], eax
jmp 0x42f212
mov eax, dword [0x4775e4]
xor ecx, ecx
cmp eax, ecx
je 0x42f217
cmp byte [eax], cl
je 0x42f217
cmp dword [esi + 0x4725d4], ecx
mov dword [ebp - 0x80], ecx
jle 0x42f068
mov dword [ebp - 0x78], ecx
test eax, eax
je 0x42f04f
cmp byte [eax], 0
je 0x42f04f
mov ecx, dword [esi + 0x473bec]
mov edx, dword [ebp - 0x78]
test byte [edx + ecx + 0x48], 1
jne 0x42f04f
push 5
push str.STEP
push eax
call fcn.00446461
add esp, 0xc
test eax, eax
jne 0x42f006
mov eax, dword [0x4775e4]
add eax, 5
push eax
call fcn.004464e4
pop ecx
mov ecx, dword [ebp - 0x80]
inc ecx
cmp eax, ecx
je 0x42f082
mov ecx, dword [ebp - 0x78]
mov eax, dword [esi + 0x473bec]
add eax, ecx
mov ecx, dword [eax + 0x50]
test ecx, ecx
je 0x42f04a
cmp byte [ecx], 0
je 0x42f04a
push str.Label
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x42f04a
mov eax, dword [esi + 0x473bec]
mov ecx, dword [ebp - 0x78]
push dword [ecx + eax + 0x50]
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x42f082
mov eax, dword [0x4775e4]
inc dword [ebp - 0x80]
mov ecx, dword [ebp - 0x80]
add dword [ebp - 0x78], 0xf54
cmp ecx, dword [esi + 0x4725d4]
jl 0x42efba
push eax
push str.Label___s__not_found
push dword [0x473bbc]
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x42f22c
mov eax, dword [ebp - 0x80]
inc eax
push eax
push dword [0x4775e4]
push str.____Jumping_to_label___s__at__Step__d_
call fcn.0042036e
add esp, 0xc
cmp dword [ebp - 0x80], 0
jge 0x42f0a9
and dword [0x47040c], 0
jmp 0x42f0c2
mov eax, dword [esi + 0x4725d4]
mov ecx, dword [ebp - 0x80]
dec eax
cmp ecx, eax
mov dword [0x47040c], eax
jg 0x42f0c2
mov dword [0x47040c], ecx
mov eax, dword [esi + 0x473bec]
add eax, ebx
je 0x42f0e8
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
mov eax, dword [esi + 0x473bec]
add eax, ebx
push edi
push eax
call fcn.00446461
add esp, 0xc
jmp 0x42f0eb
xor eax, eax
inc eax
test eax, eax
jne 0x42f126
mov eax, dword [0x476fac]
inc eax
cmp eax, 0x40
mov dword [0x476fac], eax
jl 0x42f107
push 0x3f
pop eax
mov dword [0x476fac], eax
mov ecx, dword [ebp + 0x3ec]
push eax
mov dword [eax*4 + 0x477028], ecx
push str.____GOSUB_stack_depth:__d
call fcn.0042036e
pop ecx
pop ecx
jmp 0x42f212
cmp dword [0x476fe0], 1
jl 0x42f212
mov ebx, dword [ebp + 0x3ec]
mov eax, dword [0x47040c]
cmp ebx, eax
jl 0x42f144
mov ebx, eax
mov edi, ebx
imul edi, edi, 0xf54
jmp 0x42f153
mov eax, dword [0x47040c]
cmp dword [ebp + 0x3ec], eax
jle 0x42f161
mov eax, dword [ebp + 0x3ec]
cmp ebx, eax
jge 0x42f212
mov eax, dword [esi + 0x473bec]
add eax, edi
test byte [eax + 0x48], 3
jne 0x42f1fe
push str.END_IF
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42f1ca
mov eax, dword [esi + 0x473bec]
add eax, edi
je 0x42f1a8
push 3
push 0x45a098
push eax
call fcn.00446461
add esp, 0xc
jmp 0x42f1ab
xor eax, eax
inc eax
test eax, eax
jne 0x42f1fe
mov eax, dword [esi + 0x473bec]
lea eax, [edi + eax + 0x58]
push str.Quick
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42f1fe
mov eax, dword [0x476fe0]
push dword [eax*4 + 0x476fe8]
push str.____Leaving__and_closing__IF_block_which_was_entered_at__Step__d_
call fcn.0042036e
mov eax, dword [0x476fe0]
and dword [eax*4 + 0x476fe8], 0
dec dword [0x476fe0]
pop ecx
pop ecx
jns 0x42f1fe
and dword [0x476fe0], 0
inc ebx
add edi, 0xf54
cmp dword [0x476fe0], 1
jge 0x42f14e
xor eax, eax
inc eax
jmp 0x42f22e
mov eax, dword [0x473bbc]
cmp eax, ecx
je 0x42f22c
push str.No_label_name_provided
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
xor eax, eax
mov ecx, dword [ebp + 0x3dc]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004464bf
add ebp, 0x3e0
leave
ret 8