Function at 0x42f0fa
Capabilities:
Get graphical window text

Disassembly:
push ebp
lea ebp, [esp - 0x3e8]
sub esp, 0x468
mov eax, dword [0x4755d0]
xor eax, ebp
mov dword [ebp + 0x3e4], eax
mov eax, dword [ebp + 0x3f4]
push ebx
push esi
push edi
mov edi, dword [ebp + 0x3f0]
xor ebx, ebx
mov esi, 0x103
push esi
mov dword [ebp - 0x70], eax
lea eax, [ebp + 0x2e1]
push ebx
push eax
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x80], ebx
mov byte [ebp + 0x2e0], bl
call fcn.00448090
push esi
lea eax, [ebp - 0x6b]
push ebx
push eax
mov byte [ebp - 0x6c], bl
call fcn.00448090
push esi
lea eax, [ebp + 0x99]
push ebx
push eax
mov byte [ebp + 0x98], bl
call fcn.00448090
push esi
lea eax, [ebp + 0x19d]
push ebx
push eax
mov byte [ebp + 0x19c], bl
call fcn.00448090
push 0x3f
lea eax, [ebp + 0x2a1]
push ebx
push eax
mov byte [ebp + 0x2a0], bl
call fcn.00448090
mov ebx, dword [ebp - 0x70]
imul ebx, ebx, 0xf54
mov esi, edi
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.TEXT
push eax
call fcn.004010ff
add esp, 0x44
test eax, eax
je 0x42f226
mov eax, dword [esi*4 + 0x478a70]
push 0
push 0
push dword [ebp - 0x70]
lea eax, [eax + ebx + 0x364]
push edi
push eax
call fcn.0043b804
mov eax, dword [0x47c474]
cmp byte [eax], 0
je 0x42f214
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp eax, 0x3f
jle 0x42f1f1
push 0x3f
pop eax
jmp 0x42f1fe
push dword [0x47c474]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push dword [0x47c474]
lea eax, [ebp + 0x2a0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
jmp 0x42f226
push 0x45c850
lea eax, [ebp + 0x2a0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [esi*4 + 0x478a70]
push 0
push 0
push dword [ebp - 0x70]
push edi
push dword [eax + ebx + 0x50]
call fcn.0043b804
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.GOTO
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x430784
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.to_Label
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x430784
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
je 0x42f2aa
push str.GOSUB
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.GOSUB
push eax
call fcn.0044802d
add esp, 0xc
jmp 0x42f2ad
xor eax, eax
inc eax
test eax, eax
je 0x430784
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.RETURN
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42f339
mov eax, dword [0x47be38]
cmp eax, 1
jge 0x42f2f0
mov eax, dword [0x478a40]
test eax, eax
je 0x430a13
push str.No_matching_GOSUB_found
jmp 0x430a0c
mov eax, dword [eax*4 + 0x47beb0]
test eax, eax
jns 0x42f2ff
xor eax, eax
jmp 0x42f30d
mov ecx, dword [esi*4 + 0x477354]
dec ecx
cmp eax, ecx
jle 0x42f30d
mov eax, ecx
inc eax
mov dword [0x47540c], eax
inc eax
push eax
push str.____Returning_from_GOSUB_to__Step__d_
call fcn.00421b06
mov eax, dword [0x47be38]
and dword [eax*4 + 0x47beb0], 0
dec dword [0x47be38]
pop ecx
pop ecx
jmp 0x4309f9
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.Repeats
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42f3d2
mov eax, dword [esi*4 + 0x477374]
test eax, eax
jne 0x42f3aa
push 0x463064
push dword [0x47c474]
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x42f394
mov dword [esi*4 + 0x477374], 0x77359400
mov eax, dword [ebp - 0x70]
inc eax
jns 0x43077a
and dword [0x47540c], 0
jmp 0x4309f9
push dword [0x47c474]
call fcn.0040109c
dec eax
pop ecx
mov dword [esi*4 + 0x477374], eax
jmp 0x42f37e
cmp eax, 0x77359400
jne 0x42f3be
push str.____An_eternity_of_Run_Repeats_still_remaining....
call fcn.00421b06
pop ecx
jmp 0x42f37e
test eax, eax
jns 0x42f3c4
xor eax, eax
push eax
push str._____d_Run_Repeat_s__remaining
call fcn.00421b06
pop ecx
jmp 0x42f3bb
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.Exit_Run
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42f405
push dword [0x47c474]
call fcn.0040109c
pop ecx
mov dword [0x475008], eax
or eax, 0xffffffff
jmp 0x430a15
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.Exit
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42f45b
push dword [0x47c474]
call fcn.0040109c
test byte [0x477400], 4
pop ecx
mov dword [0x475008], eax
je 0x42f447
push dword [0x4771a0]
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x42f3fd
push 0
push 0
push 0x10
push dword [0x4771a0]
call dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x42f3fd
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.Break
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42f57b
cmp dword [0x47be6c], 1
jl 0x42f96c
push dword [ebp - 0x70]
push edi
call fcn.004204b1
mov ebx, dword [ebp - 0x70]
mov dword [0x47540c], eax
cmp dword [ebp - 0x70], eax
jl 0x42f49e
mov ebx, eax
cmp dword [0x47be6c], 1
jl 0x42f96c
mov edi, ebx
imul edi, edi, 0xf54
jmp 0x42f4ba
mov eax, dword [0x47540c]
cmp dword [ebp - 0x70], eax
jle 0x42f4c2
mov eax, dword [ebp - 0x70]
cmp ebx, eax
jge 0x42f96c
mov eax, dword [esi*4 + 0x478a70]
add eax, edi
test byte [eax + 0x48], 3
jne 0x42f562
push str.END_IF
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42f52e
mov eax, dword [esi*4 + 0x478a70]
add eax, edi
je 0x42f50b
push 3
push 0x45d3d4
push eax
call fcn.0044802d
add esp, 0xc
jmp 0x42f50e
xor eax, eax
inc eax
test eax, eax
jne 0x42f562
mov eax, dword [esi*4 + 0x478a70]
lea eax, [edi + eax + 0x58]
push str.Quick
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42f562
mov eax, dword [0x47be6c]
push dword [eax*4 + 0x47be70]
push str.____Leaving__and_closing__IF_block_which_was_entered_at__Step__d_
call fcn.00421b06
mov eax, dword [0x47be6c]
and dword [eax*4 + 0x47be70], 0
dec dword [0x47be6c]
pop ecx
pop ecx
jns 0x42f562
and dword [0x47be6c], 0
inc ebx
add edi, 0xf54
cmp dword [0x47be6c], 1
jge 0x42f4b5
jmp 0x42f96c
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push 0x45d398
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x430707
mov eax, dword [ebp - 0x70]
mov edi, esi
shl edi, 6
lea ecx, [edi + 0x47b3b8]
inc eax
cmp dword [ecx], eax
je 0x42f761
lea edx, [edi + 0x47b3bc]
test edx, edx
je 0x42f5d0
test ecx, ecx
je 0x42f5d0
push 0x3c
lea eax, [edi + 0x47b3b8]
push eax
push edx
call fcn.00448130
add esp, 0xc
lea ecx, [edi + 0x47b5bc]
test ecx, ecx
je 0x42f5f0
lea eax, [edi + 0x47b5b8]
test eax, eax
je 0x42f5f0
push 0x3c
push eax
push ecx
call fcn.00448130
add esp, 0xc
lea ecx, [edi + 0x47b7bc]
test ecx, ecx
je 0x42f610
lea eax, [edi + 0x47b7b8]
test eax, eax
je 0x42f610
push 0x3c
push eax
push ecx
call fcn.00448130
add esp, 0xc
lea ecx, [edi + 0x47b9bc]
test ecx, ecx
je 0x42f630
lea eax, [edi + 0x47b9b8]
test eax, eax
je 0x42f630
push 0x3c
push eax
push ecx
call fcn.00448130
add esp, 0xc
lea ecx, [edi + 0x47bbbc]
test ecx, ecx
je 0x42f650
lea eax, [edi + 0x47bbb8]
test eax, eax
je 0x42f650
push 0x3c
push eax
push ecx
call fcn.00448130
add esp, 0xc
push 0x3c
push 0x47b370
push 0x47b374
call fcn.00448130
fld1
mov eax, dword [ebp - 0x70]
fst dword [edi + 0x47b9b8]
add esp, 0xc
fstp dword [edi + 0x47bbb8]
inc eax
mov dword [edi + 0x47b3b8], eax
xor eax, eax
push eax
push eax
push dword [ebp - 0x70]
mov dword [edi + 0x47b5b8], eax
mov dword [0x47b370], eax
mov eax, dword [esi*4 + 0x478a70]
push esi
push dword [eax + ebx + 0x50]
call fcn.0043b804
mov eax, dword [0x47c474]
cmp byte [eax], 0
je 0x42f6b5
push eax
call fcn.00449d0b
fstp dword [ebp - 0x74]
pop ecx
jmp 0x42f6ba
fld1
fstp dword [ebp - 0x74]
mov eax, dword [esi*4 + 0x478a70]
fld dword [ebp - 0x74]
add eax, ebx
fstp dword [edi + 0x47b7b8]
push 0x462fac
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42f761
mov eax, dword [esi*4 + 0x478a70]
push 0
push 0
push dword [ebp - 0x70]
lea eax, [eax + ebx + 0x364]
push esi
push eax
call fcn.0043b804
mov eax, dword [0x47c474]
cmp byte [eax], 0
je 0x42f713
push eax
call fcn.00449d0b
fstp dword [ebp - 0x74]
pop ecx
jmp 0x42f718
fld1
fstp dword [ebp - 0x74]
mov eax, dword [esi*4 + 0x478a70]
fld dword [ebp - 0x74]
push 0
fstp dword [edi + 0x47bbb8]
push 0
push dword [ebp - 0x70]
lea eax, [eax + ebx + 0x468]
push esi
push eax
call fcn.0043b804
mov eax, dword [0x47c474]
cmp byte [eax], 0
je 0x42f753
push eax
call fcn.00449d0b
fstp dword [ebp - 0x74]
pop ecx
jmp 0x42f758
fld1
fstp dword [ebp - 0x74]
fld dword [ebp - 0x74]
fstp dword [edi + 0x47b9b8]
push 7
lea eax, [edi + 0x47bbb8]
fld dword [eax]
push ecx
push ecx
mov dword [ebp - 0x7c], eax
fstp qword [esp]
lea eax, [ebp + 0x2e0]
push eax
call fcn.00417eeb
lea eax, [ebp + 0x2e0]
push eax
push str.Loop:__s
push 2
push 0
push dword [0x4771b4]
call fcn.00420796
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push 0x462fac
push eax
call fcn.004010ff
add esp, 0x2c
test eax, eax
je 0x42f878
fldz
mov ecx, dword [ebp - 0x7c]
fcom dword [edi + 0x47b9b8]
fnstsw ax
test ah, 0x41
jne 0x42f7e0
fld dword [ecx]
fld dword [edi + 0x47b7b8]
fcompp
fnstsw ax
test ah, 0x41
je 0x42f867
fcomp dword [edi + 0x47b9b8]
fnstsw ax
test ah, 5
jp 0x42f7fe
fld dword [ecx]
fld dword [edi + 0x47b7b8]
fcompp
fnstsw ax
test ah, 5
jnp 0x42f869
fld dword [ecx]
push 7
push ecx
push ecx
lea eax, [ebp + 0x2e0]
fstp qword [esp]
push eax
call fcn.00417eeb
add esp, 0x10
lea eax, [ebp + 0x2e0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp + 0x2e0]
push eax
push dword [ebp - 0x70]
push esi
call fcn.004245b3
fld dword [edi + 0x47b7b8]
push 7
push ecx
push ecx
lea eax, [ebp - 0x6c]
fstp qword [esp]
push eax
call fcn.00417eeb
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp + 0x2e0]
push eax
push str.____Loop__s_of__s
call fcn.00421b06
add esp, 0x1c
jmp 0x42f37e
fstp st(0)
fld dword [ecx]
fsub dword [edi + 0x47b9b8]
fstp dword [ecx]
jmp 0x42f96c
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.WHILE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42fae7
push dword [0x47c474]
call fcn.004210f2
test eax, eax
jne 0x42f8ac
mov dword [ebp - 0x80], 1
cmp byte [0x47b0e0], 2
jb 0x42f927
push dword [0x47c474]
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
call esi
lea ecx, [eax + 1]
mov eax, 0x103
cmp ecx, eax
jg 0x42f8d8
push dword [0x47c474]
call esi
inc eax
push eax
push dword [0x47c474]
lea eax, [ebp + 0x2e0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
push 4
lea eax, [ebp + 0x3c4]
push 0x4616bc
push eax
call fcn.00447af0
add esp, 0xc
cmp dword [ebp - 0x80], 0
mov eax, str.FALSE
jne 0x42f912
mov eax, str.TRUE
push eax
lea eax, [ebp + 0x2e0]
push eax
push str.____Expression:___s____s
call fcn.00421b06
add esp, 0xc
mov eax, dword [ebp - 0x7c]
fld dword [eax]
push 7
push ecx
push ecx
lea eax, [ebp + 0x2e0]
fstp qword [esp]
push eax
call fcn.00417eeb
add esp, 0x10
lea eax, [ebp + 0x2e0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp + 0x2e0]
push eax
push dword [ebp - 0x70]
push dword [ebp - 0x78]
call fcn.004245b3
cmp dword [ebp - 0x80], 0
je 0x42f37e
push dword [ebp - 0x70]
mov esi, dword [ebp - 0x78]
push esi
call fcn.004204b1
push 7
inc eax
push ecx
shl esi, 6
fld dword [esi + 0x47bbb8]
push ecx
mov dword [0x47540c], eax
fstp qword [esp]
lea eax, [ebp + 0x2e0]
push eax
call fcn.00417eeb
mov eax, dword [0x47540c]
inc eax
push eax
lea ebx, [esi + 0x47b5b8]
push dword [ebx]
lea eax, [ebp + 0x2e0]
push eax
lea edi, [esi + 0x47b3b8]
push dword [edi]
push str.____END_OF_LOOP_from__Step__d___Final_Value:__s__Total_Loops:__d__Continuing_with__Step__d_...
call fcn.00421b06
lea eax, [ebp + 0x2e0]
push eax
push str.Loop:__s
push 2
push 1
push dword [0x4771b4]
call fcn.00420796
add esp, 0x38
test edi, edi
je 0x42f9fa
lea eax, [esi + 0x47b3bc]
test eax, eax
je 0x42f9fa
push 0x3c
push eax
push edi
call fcn.00448130
add esp, 0xc
test ebx, ebx
je 0x42fa14
lea eax, [esi + 0x47b5bc]
test eax, eax
je 0x42fa14
push 0x3c
push eax
push ebx
call fcn.00448130
add esp, 0xc
lea ecx, [esi + 0x47b7b8]
test ecx, ecx
je 0x42fa34
lea eax, [esi + 0x47b7bc]
test eax, eax
je 0x42fa34
push 0x3c
push eax
push ecx
call fcn.00448130
add esp, 0xc
lea ecx, [esi + 0x47b9b8]
test ecx, ecx
je 0x42fa54
lea eax, [esi + 0x47b9bc]
test eax, eax
je 0x42fa54
push 0x3c
push eax
push ecx
call fcn.00448130
add esp, 0xc
lea eax, [esi + 0x47bbb8]
test eax, eax
je 0x42fa7a
lea eax, [esi + 0x47bbbc]
test eax, eax
je 0x42fa7a
push 0x3c
push eax
lea eax, [esi + 0x47bbb8]
push eax
call fcn.00448130
add esp, 0xc
mov eax, dword [0x47b370]
test eax, eax
je 0x42fa8a
push eax
call fcn.00447ab6
pop ecx
push 0x3c
push 0x47b374
push 0x47b370
call fcn.00448130
fldz
mov eax, dword [0x47b0e4]
fst dword [esi + 0x47b7f4]
xor edi, edi
fst dword [esi + 0x47b9f4]
add esp, 0xc
fstp dword [esi + 0x47bbf4]
mov dword [esi + 0x47b3f4], edi
mov dword [esi + 0x47b5f4], edi
mov dword [0x47b3ac], edi
cmp eax, edi
je 0x42fad6
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [0x47b0e4], edi
mov dword [0x47b204], edi
jmp 0x4309f9
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.TEXT
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42fbbd
push dword [0x47c474]
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
call edi
mov ebx, eax
lea ecx, [ebx + 0x100]
mov eax, 0x1000
cmp ecx, eax
jle 0x42fb26
mov eax, ecx
push 1
push eax
call fcn.00447e84
mov esi, dword [0x47c474]
pop ecx
pop ecx
mov dword [ebp - 0x74], eax
test eax, eax
je 0x42fb7e
cmp byte [esi], 0
je 0x42fb7e
push 0
push 1
inc ebx
push ebx
push eax
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00449ec0
dec eax
push eax
lea eax, [ebp + 0x2a0]
push eax
push esi
call fcn.00444fa4
push dword [ebp - 0x74]
call edi
push eax
push dword [ebp - 0x74]
push dword [ebp - 0x70]
push dword [ebp - 0x78]
call fcn.004245b3
mov esi, dword [0x47c474]
jmp 0x42fb85
mov dword [ebp - 0x80], 1
lea eax, [ebp + 0x2a0]
push eax
push esi
call fcn.004415b1
lea esi, [eax + 1]
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00449ec0
dec eax
cmp esi, eax
jg 0x42fbab
mov dword [ebp - 0x80], 1
cmp dword [ebp - 0x74], 0
je 0x42f962
push dword [ebp - 0x74]
jmp 0x42fc79
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.FILE_LINE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42fc84
push 0x103
lea eax, [ebp + 0x2e0]
push eax
mov eax, esi
imul eax, eax, 0x104
add eax, 0x4775d8
push eax
push dword [0x47c474]
call fcn.0041030b
lea eax, [ebp + 0x2e0]
push eax
call fcn.0040e912
mov esi, eax
lea eax, [esi + 0x100]
mov ecx, 0x1000
cmp eax, ecx
ja 0x42fc1f
mov eax, ecx
push 1
push eax
call fcn.00447e84
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x42f96c
mov eax, dword [ebp - 0x7c]
fld dword [eax]
push 0x47b204
push 0x47b0e4
inc esi
push esi
push edi
call fcn.00449ec0
push eax
lea eax, [ebp + 0x2e0]
push eax
call fcn.0040ef58
test eax, eax
je 0x42fc71
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push edi
push dword [ebp - 0x70]
push dword [ebp - 0x78]
call fcn.004245b3
jmp 0x42fc78
mov dword [ebp - 0x80], 1
push edi
call fcn.00447ab6
pop ecx
jmp 0x42f962
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.FILE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42fe80
fld1
mov eax, dword [ebp - 0x7c]
fcomp dword [eax]
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
fnstsw ax
test ah, 1
jne 0x42fe10
push dword [0x47c474]
call edi
inc eax
cmp eax, 0x103
jle 0x42fcd1
mov eax, 0x103
jmp 0x42fcda
push dword [0x47c474]
call edi
inc eax
push eax
push dword [0x47c474]
lea eax, [ebp + 0x19c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
lea eax, [ebp + 0x19c]
push eax
call edi
lea ecx, [ebp + 0x19c]
cmp byte [eax + ecx - 1], 0x5c
jne 0x42fd40
mov eax, ecx
push 0x45f088
push eax
call fcn.00447a30
pop ecx
pop ecx
test eax, eax
jne 0x42fd40
lea eax, [ebp + 0x19c]
push 0x45f084
push eax
call fcn.00447a30
pop ecx
pop ecx
test eax, eax
jne 0x42fd40
push 0x45f768
lea eax, [ebp + 0x19c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp + 0x19c]
push 0x45f088
push eax
call fcn.00447a30
pop ecx
pop ecx
test eax, eax
jne 0x42fd90
lea eax, [ebp + 0x19c]
push 0x45f084
push eax
call fcn.00447a30
pop ecx
pop ecx
test eax, eax
jne 0x42fd90
lea eax, [ebp + 0x19c]
push 0x45e8e0
push eax
call fcn.00447a30
pop ecx
pop ecx
test eax, eax
jne 0x42fd90
push str.____WARNING___The_filespec_does_not_appear_to_contain_any_wildcards
call fcn.00421b06
pop ecx
push 1
push 0x2000000
call fcn.00447e84
pop ecx
pop ecx
mov dword [0x47b370], eax
test eax, eax
je 0x430a13
mov eax, dword [esi*4 + 0x478a70]
lea eax, [eax + ebx + 0x58]
push str.Recur
push eax
call fcn.004010ff
pop ecx
pop ecx
push 0x45c850
test eax, eax
push 0
lea eax, [ebp + 0x19c]
je 0x42fdd8
push 1
jmp 0x42fdda
push 0
push 0x1fffdf8
push dword [0x47b370]
push eax
call fcn.0040ff47
mov ecx, str.file
cmp eax, 1
je 0x42fdfa
mov ecx, str.total_files
lea edx, [ebp + 0x19c]
push edx
push ecx
push eax
push str._____d__s_match_for_file_spec___s_
call fcn.00421b06
add esp, 0x10
push 0
push 1
lea eax, [ebp + 0x2e0]
push 0x103
push eax
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00449ec0
dec eax
push eax
push 0x45c850
push dword [0x47b370]
call fcn.00444fa4
cmp byte [ebp + 0x2e0], 0
je 0x42fe64
lea eax, [ebp + 0x2e0]
push eax
call edi
push eax
lea eax, [ebp + 0x2e0]
push eax
push dword [ebp - 0x70]
push esi
call fcn.004245b3
jmp 0x42f37e
mov eax, dword [0x47b370]
test eax, eax
je 0x42fe74
push eax
call fcn.00447ab6
pop ecx
and dword [0x47b370], 0
jmp 0x42f96c
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.FOLDER
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ffbc
fld1
mov eax, dword [ebp - 0x7c]
fcomp dword [eax]
fnstsw ax
test ah, 1
jne 0x42ff58
push dword [0x47c474]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
mov edi, 0x103
cmp eax, edi
jle 0x42feca
mov eax, edi
jmp 0x42fed7
push dword [0x47c474]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push dword [0x47c474]
lea eax, [ebp + 0x19c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [0x47b30c]
test eax, eax
je 0x42fefb
push eax
call fcn.00447ab6
pop ecx
push 1
push 0x2000000
call fcn.00447e84
pop ecx
pop ecx
mov dword [0x47b30c], eax
test eax, eax
je 0x430a13
mov eax, dword [esi*4 + 0x478a70]
lea eax, [eax + ebx + 0x58]
push str.Recur
push eax
call fcn.004010ff
pop ecx
pop ecx
push 0x45c850
test eax, eax
push 1
lea eax, [ebp + 0x19c]
je 0x42ff54
push 1
push 0x1ffff00
push dword [0x47b30c]
push eax
call fcn.0040ff47
jmp 0x42ff5d
push 0
jmp 0x42ff41
mov edi, 0x103
push 0
push 1
lea eax, [ebp + 0x2e0]
push edi
push eax
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00449ec0
dec eax
push eax
push 0x45c850
push dword [0x47b30c]
call fcn.00444fa4
cmp byte [ebp + 0x2e0], 0
je 0x42ffa0
lea eax, [ebp + 0x2e0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
jmp 0x42fe4e
mov eax, dword [0x47b30c]
test eax, eax
je 0x42ffb0
push eax
call fcn.00447ab6
pop ecx
and dword [0x47b30c], 0
jmp 0x42f96c
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.PROCESS
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x4301be
fld1
mov eax, dword [ebp - 0x7c]
fcomp dword [eax]
fnstsw ax
test ah, 1
jne 0x430035
mov eax, dword [0x47b3b0]
test eax, eax
je 0x42fff8
push eax
call fcn.00447ab6
pop ecx
push 1
push 0x2000000
call fcn.00447e84
pop ecx
pop ecx
push 2
push 0
mov edi, 0x1fff000
push edi
push eax
push 1
push 0
mov dword [0x47b3b0], eax
call fcn.0044489e
test eax, eax
jne 0x430035
push 1
push eax
push edi
push dword [0x47b3b0]
push 1
push eax
call fcn.0044489e
push 0
push 1
lea eax, [ebp + 0x2e0]
push 0x103
push eax
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00449ec0
dec eax
push eax
push 0x45c850
push dword [0x47b3b0]
call fcn.00444fa4
mov edi, 0x45e9ec
lea eax, [ebp + 0x2e0]
push edi
push eax
call fcn.00447a30
pop ecx
pop ecx
test eax, eax
je 0x430097
lea eax, [ebp + 0x2e0]
push edi
push eax
call fcn.00447a30
pop ecx
pop ecx
inc eax
push eax
lea eax, [ebp + 0x98]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
push edi
lea eax, [ebp + 0x2e0]
push eax
call fcn.004417cc
cmp byte [ebp + 0x2e0], 0
je 0x4301a2
mov eax, dword [esi*4 + 0x478a70]
lea eax, [eax + ebx + 0x58]
push 0x462e60
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x430113
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x45cc00
lea eax, [ebp + 0x98]
push eax
call esi
lea eax, [ebp + 0x2e0]
push eax
lea eax, [ebp + 0x98]
push eax
call esi
lea eax, [ebp + 0x98]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp + 0x98]
push eax
push dword [ebp - 0x70]
push dword [ebp - 0x78]
jmp 0x42fe5a
mov eax, dword [esi*4 + 0x478a70]
lea eax, [eax + ebx + 0x58]
push str.EXE_
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x430169
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x45cc00
lea eax, [ebp + 0x2e0]
push eax
call esi
lea eax, [ebp + 0x98]
push eax
lea eax, [ebp + 0x2e0]
push eax
call esi
lea eax, [ebp + 0x2e0]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp + 0x2e0]
jmp 0x430107
mov eax, dword [esi*4 + 0x478a70]
lea eax, [eax + ebx + 0x58]
push 0x460d30
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ff8e
lea eax, [ebp + 0x98]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp + 0x98]
jmp 0x42fe55
mov eax, dword [0x47b3b0]
test eax, eax
je 0x4301b2
push eax
call fcn.00447ab6
pop ecx
and dword [0x47b3b0], 0
jmp 0x42f96c
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.REGISTRY
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x430236
push dword [0x47c474]
call fcn.0044081d
mov edi, eax
mov eax, dword [esi*4 + 0x478a70]
lea eax, [eax + ebx + 0x58]
push str.Parent
push eax
call fcn.004010ff
neg eax
sbb eax, eax
pop ecx
add eax, 2
pop ecx
push eax
lea eax, [ebp + 0x2e0]
push eax
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00449ec0
dec eax
push eax
push dword [0x47c474]
push edi
call fcn.00440a1b
cmp byte [ebp + 0x2e0], 0
je 0x42f96c
jmp 0x42ff8e
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push 0x45cb24
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x430486
fld1
mov eax, dword [ebp - 0x7c]
fcomp dword [eax]
fnstsw ax
test ah, 1
je 0x430308
mov eax, dword [0x4771e8]
test eax, eax
je 0x430308
mov edi, dword [sym.imp.USER32.dll_GetWindow]
push 2
push eax
jmp 0x4302f4
mov eax, dword [esi*4 + 0x478a70]
lea eax, [eax + ebx + 0x58]
push str.Child
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x430383
push 0xfffffffffffffff0
push dword [0x4771e8]
call dword [sym.imp.USER32.dll_GetWindowLongA]
test eax, 0x400000
jne 0x4302c8
push 0xfffffffffffffff0
push dword [0x4771e8]
call dword [sym.imp.USER32.dll_GetWindowLongA]
test eax, 0x40000
je 0x4302ec
push dword [0x4771e8]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x4302ec
push dword [0x4771e8]
call dword [sym.imp.USER32.dll_GetParent]
test eax, eax
je 0x430383
push 2
push dword [0x4771e8]
call edi
mov dword [0x4771e8], eax
test eax, eax
jne 0x43027e
jmp 0x42f96c
mov eax, dword [esi*4 + 0x478a70]
xor edi, edi
push edi
push edi
push dword [ebp - 0x70]
lea eax, [eax + ebx + 0x364]
push esi
push eax
call fcn.0043b804
push dword [0x47c474]
call fcn.0040109c
pop ecx
mov dword [0x4771e8], eax
cmp eax, edi
jne 0x430354
push edi
call dword [sym.imp.USER32.dll_GetTopWindow]
mov dword [0x4771e8], eax
cmp eax, edi
jne 0x430354
call dword [sym.imp.USER32.dll_GetForegroundWindow]
mov dword [0x4771e8], eax
mov eax, dword [esi*4 + 0x478a70]
lea eax, [eax + ebx + 0x58]
push str.Controls
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x4303db
push 5
push dword [0x4771e8]
call dword [sym.imp.USER32.dll_GetWindow]
mov dword [0x4771e8], eax
cmp dword [0x4771e8], 0
je 0x42f96c
mov eax, dword [esi*4 + 0x478a70]
lea eax, [eax + ebx + 0x58]
push str.handle
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x430467
push dword [0x4771e8]
lea eax, [ebp - 0x6c]
push 0x45cb14
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea eax, [ebp - 0x6c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp - 0x6c]
jmp 0x42fe55
mov eax, dword [esi*4 + 0x478a70]
lea eax, [eax + ebx + 0x58]
push str.Child
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x430383
mov eax, dword [0x4771e8]
test eax, eax
je 0x42f96c
mov edi, dword [sym.imp.USER32.dll_GetWindowLongA]
push 0xfffffffffffffff0
push eax
call edi
test eax, 0x400000
jne 0x430427
push 0xfffffffffffffff0
push dword [0x4771e8]
call edi
test eax, 0x40000
je 0x43044b
push dword [0x4771e8]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x43044b
push dword [0x4771e8]
call dword [sym.imp.USER32.dll_GetParent]
test eax, eax
je 0x430383
push 2
push dword [0x4771e8]
call dword [sym.imp.USER32.dll_GetWindow]
mov dword [0x4771e8], eax
test eax, eax
jne 0x43040a
jmp 0x42f96c
lea eax, [ebp + 0x2e0]
push eax
push 0x103
push 0xd
push dword [0x4771e8]
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x42ff8e
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.DATA
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x430684
fld1
mov eax, dword [ebp - 0x7c]
fcomp dword [eax]
fnstsw ax
test ah, 1
jne 0x4305ac
fild dword [0x478a94]
mov eax, dword [0x478a90]
mov dword [0x47b3b4], eax
fstp dword [edi + 0x47b7b8]
cmp eax, 0x10
jle 0x4304d4
push 0x10
pop eax
shl eax, 2
push eax
push 0x4769a0
push 0x47bdf8
call fcn.00447af0
add esp, 0xc
mov esi, 0x47bdb8
mov eax, dword [esi]
test eax, eax
je 0x4304ff
push eax
call fcn.00447ab6
and dword [esi], 0
pop ecx
add esi, 4
cmp esi, 0x47bdf8
jl 0x4304ef
xor ebx, ebx
mov eax, dword [0x47b3b4]
cmp eax, 0x10
jle 0x430519
push 0x10
pop eax
cmp ebx, eax
jge 0x4305ac
mov esi, ebx
mov eax, dword [esi*4 + 0x478a98]
test eax, eax
je 0x4305ac
push eax
call fcn.00447e51
add eax, 0x100
pop ecx
cmp eax, 0x1000
jbe 0x43055e
mov eax, dword [esi*4 + 0x478a98]
test eax, eax
je 0x430555
push eax
call fcn.00447e51
pop ecx
jmp 0x430557
xor eax, eax
add eax, 0x100
jmp 0x430563
mov eax, 0x1000
push 1
push eax
call fcn.00447e84
pop ecx
pop ecx
mov dword [esi*4 + 0x47bdb8], eax
test eax, eax
je 0x4305a6
mov eax, dword [esi*4 + 0x478a98]
test eax, eax
je 0x43058c
push eax
call fcn.00447e51
pop ecx
jmp 0x43058e
xor eax, eax
inc eax
push eax
push dword [esi*4 + 0x478a98]
push dword [esi*4 + 0x47bdb8]
call fcn.00447af0
add esp, 0xc
inc ebx
jmp 0x43050c
cmp dword [0x47bdb8], 0
je 0x42f96c
fld1
fcomp dword [edi + 0x47b7b8]
fnstsw ax
test ah, 0x41
je 0x42f96c
mov eax, dword [ebp - 0x7c]
fld dword [eax]
call fcn.00449ec0
mov dword [ebp - 0x74], eax
fild dword [ebp - 0x74]
fld dword [edi + 0x47b7b8]
fcompp
fnstsw ax
test ah, 5
jnp 0x42f96c
push 1
push 0x8000
call fcn.00447e84
and dword [ebp - 0x74], 0
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
pop ecx
pop ecx
mov esi, eax
mov eax, dword [0x47b3b4]
cmp eax, 0x10
jle 0x430616
push 0x10
pop eax
cmp dword [ebp - 0x74], eax
jge 0x430653
test esi, esi
je 0x43064e
mov eax, dword [ebp - 0x74]
mov ebx, dword [eax*4 + 0x47bdf8]
mov eax, dword [ebp - 0x7c]
fld dword [eax]
inc ebx
call fcn.00449ec0
dec eax
imul ebx, eax
mov eax, dword [ebp - 0x74]
add ebx, dword [eax*4 + 0x47bdb8]
push ebx
push esi
call edi
push 0x461e18
push esi
call edi
inc dword [ebp - 0x74]
jmp 0x430609
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 - 0x70]
push dword [ebp - 0x78]
call fcn.004245b3
test esi, esi
je 0x42f37e
push esi
call fcn.00447ab6
jmp 0x42f3bb
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.MESSAGE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42f37e
cmp byte [0x47c238], 0
jne 0x4306e2
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x4771fc]
test eax, eax
je 0x4306db
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4306db
push 0
call esi
push 0xc8
call esi
cmp byte [0x47c238], 0
je 0x4306b1
jmp 0x4306e2
mov dword [ebp - 0x80], 1
mov esi, 0x47c238
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push esi
push dword [ebp - 0x70]
push dword [ebp - 0x78]
call fcn.004245b3
mov byte [0x47c238], 0
jmp 0x42f962
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push str.NEXT_LOOP
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42f37e
push dword [ebp - 0x70]
push esi
call fcn.004203eb
mov ecx, esi
shl ecx, 6
fld dword [ecx + 0x47b9b8]
mov edx, eax
fldz
mov dword [0x47540c], edx
fucompp
fnstsw ax
test ah, 0x44
jp 0x430750
fld1
jmp 0x430756
fld dword [ecx + 0x47b9b8]
inc dword [ecx + 0x47b5b8]
fstp dword [ebp - 0x74]
fld dword [ebp - 0x74]
inc edx
fadd dword [ecx + 0x47bbb8]
push edx
push str.____Jumping_to_START_LOOP_at__Step__d_...
fstp dword [ecx + 0x47bbb8]
jmp 0x430904
mov dword [0x47540c], eax
jmp 0x4309f9
mov eax, dword [0x47c474]
xor edi, edi
cmp eax, edi
je 0x4309fe
cmp byte [eax], 0
je 0x4309fe
mov dword [ebp - 0x74], edi
cmp dword [esi*4 + 0x477354], edi
jle 0x430850
test eax, eax
je 0x430837
cmp byte [eax], 0
je 0x430837
mov ecx, dword [esi*4 + 0x478a70]
test byte [edi + ecx + 0x48], 1
jne 0x430837
push 5
push str.STEP
push eax
call fcn.0044802d
add esp, 0xc
test eax, eax
jne 0x4307f2
mov eax, dword [0x47c474]
add eax, 5
push eax
call fcn.00448120
pop ecx
mov ecx, dword [ebp - 0x74]
inc ecx
cmp eax, ecx
je 0x43086a
mov eax, dword [esi*4 + 0x478a70]
add eax, edi
mov ecx, dword [eax + 0x50]
test ecx, ecx
je 0x430832
cmp byte [ecx], 0
je 0x430832
push str.Label
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x430832
mov eax, dword [esi*4 + 0x478a70]
push dword [edi + eax + 0x50]
push dword [0x47c474]
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x43086a
mov eax, dword [0x47c474]
inc dword [ebp - 0x74]
mov ecx, dword [ebp - 0x74]
add edi, 0xf54
cmp ecx, dword [esi*4 + 0x477354]
jl 0x4307ac
push eax
push str.Label___s__not_found
push dword [0x478a40]
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x430a13
mov edi, dword [ebp - 0x74]
lea eax, [edi + 1]
push eax
push dword [0x47c474]
push str.____Jumping_to_label___s__at__Step__d_
call fcn.00421b06
add esp, 0xc
test edi, edi
jns 0x430891
and dword [0x47540c], 0
jmp 0x4308a8
mov eax, dword [esi*4 + 0x477354]
dec eax
mov dword [0x47540c], eax
cmp edi, eax
jg 0x4308a8
mov dword [0x47540c], edi
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
je 0x4308d5
mov edi, str.GOSUB
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
mov eax, dword [esi*4 + 0x478a70]
add eax, ebx
push edi
push eax
call fcn.0044802d
add esp, 0xc
jmp 0x4308d8
xor eax, eax
inc eax
test eax, eax
jne 0x430910
mov eax, dword [0x47be38]
inc eax
mov dword [0x47be38], eax
cmp eax, 0x40
jl 0x4308f4
push 0x3f
pop eax
mov dword [0x47be38], eax
mov ecx, dword [ebp - 0x70]
push eax
mov dword [eax*4 + 0x47beb0], ecx
push str.____GOSUB_stack_depth:__d
call fcn.00421b06
pop ecx
pop ecx
jmp 0x4309f9
cmp dword [0x47be6c], 1
jl 0x4309f9
mov ebx, dword [ebp - 0x70]
mov ecx, dword [0x47540c]
cmp ebx, ecx
jl 0x43092c
mov ebx, ecx
mov edi, ebx
imul edi, edi, 0xf54
jmp 0x43093c
mov ecx, dword [0x47540c]
mov eax, dword [ebp - 0x70]
cmp eax, ecx
jg 0x430945
mov eax, ecx
cmp ebx, eax
jge 0x4309f9
mov eax, dword [esi*4 + 0x478a70]
add eax, edi
test byte [eax + 0x48], 3
jne 0x4309e5
push str.END_IF
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x4309b1
mov eax, dword [esi*4 + 0x478a70]
add eax, edi
je 0x43098e
push 3
push 0x45d3d4
push eax
call fcn.0044802d
add esp, 0xc
jmp 0x430991
xor eax, eax
inc eax
test eax, eax
jne 0x4309e5
mov eax, dword [esi*4 + 0x478a70]
lea eax, [edi + eax + 0x58]
push str.Quick
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x4309e5
mov eax, dword [0x47be6c]
push dword [eax*4 + 0x47be70]
push str.____Leaving__and_closing__IF_block_which_was_entered_at__Step__d_
call fcn.00421b06
mov eax, dword [0x47be6c]
and dword [eax*4 + 0x47be70], 0
dec dword [0x47be6c]
pop ecx
pop ecx
jns 0x4309e5
and dword [0x47be6c], 0
inc ebx
add edi, 0xf54
cmp dword [0x47be6c], 1
jge 0x430936
xor eax, eax
inc eax
jmp 0x430a15
mov eax, dword [0x478a40]
cmp eax, edi
je 0x430a13
push str.No_label_name_provided
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
xor eax, eax
mov ecx, dword [ebp + 0x3e4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00448080
add ebp, 0x3e8
leave
ret 8