Function at 0x411500
Capabilities:
Check for time delay via gettickcount
Get graphical window text

Disassembly:
mov eax, 0x1054
call fcn.004f8350
mov eax, dword [0x544354]
xor eax, esp
mov dword [esp + 0x1050], eax
mov eax, dword [esp + 0x1058]
push ebx
mov ebx, dword [esp + 0x1064]
push ebp
push esi
push edi
mov dword [esp + 0x30], eax
mov ebp, ecx
mov eax, dword [esp + 0x106c]
xor esi, esi
mov cl, byte [esp + 0x1074]
push eax
push 4
push 0x110a
push dword [ebp]
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x38], ebx
mov byte [esp + 0x23], cl
mov byte [esp + 0x44], cl
mov dword [esp + 0x24], esi
call dword [sym.imp.USER32.dll_SendMessageW]
mov edi, eax
mov dword [esp + 0x20], edi
test edi, edi
je 0x41177f
jmp 0x411580
xor eax, eax
mov dword [esp + 0x38], 0xd
mov word [esp + 0x60], ax
lea eax, [esp + 0x60]
mov dword [esp + 0x48], eax
lea eax, [esp + 0x38]
push eax
push 0
push 0x113e
push dword [ebp]
mov dword [esp + 0x4c], edi
mov dword [esp + 0x5c], 0x800
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, dword [esp + 0x5c]
mov ebp, dword [ebx]
mov dword [esp + 0x2c], ebp
test esi, esi
je 0x4115e1
lea eax, [esp + 0x60]
push eax
push dword [esi + 8]
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
test eax, eax
setne al
test al, al
je 0x411667
mov ecx, dword [esp + 0x30]
neg esi
mov dword [esp + 0x18], 0
sbb esi, esi
xor eax, eax
and esi, ebp
xor edx, edx
lea ebp, [ecx + ebp*2]
lea ecx, [esp + 0x60]
lea ecx, [ecx + esi*2]
mov esi, eax
movzx ebx, word [ecx]
movzx edi, word [ebp]
mov dword [esp + 0x24], ecx
test bx, bx
jne 0x411628
test di, di
je 0x411653
cmp ax, 0x5c
jne 0x411623
cmp dx, ax
jmp 0x411626
cmp edi, 0x5c
je 0x411653
push edi
call fcn.00497d00
push ebx
mov esi, eax
call fcn.00497d00
cmp eax, esi
jne 0x41165b
mov esi, dword [esp + 0x18]
mov eax, ebx
mov ecx, dword [esp + 0x24]
inc esi
add ecx, 2
mov dword [esp + 0x18], esi
add ebp, 2
mov edx, edi
jmp 0x411603
mov ebp, dword [esp + 0x2c]
add ebp, esi
jmp 0x41165f
mov ebp, dword [esp + 0x2c]
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x28]
cmp ebp, dword [ebx]
jle 0x411675
mov esi, edi
mov dword [ebx], ebp
mov dword [esp + 0x14], esi
jmp 0x41169b
test byte [esp + 0x40], 0x20
je 0x411697
mov ebp, dword [esp + 0x1c]
push edi
push 1
push 0x1102
push dword [ebp]
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, dword [esp + 0x14]
jmp 0x41169f
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
push edi
push 1
push 0x110a
push dword [ebp]
call dword [sym.imp.USER32.dll_SendMessageW]
mov edi, eax
mov dword [esp + 0x20], edi
test edi, edi
jne 0x411580
test esi, esi
je 0x41177f
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
push dword [esp + 0x14]
mov edi, eax
push 2
push 0x1102
push dword [ebp]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [ebp + 0xc], 0
je 0x41170e
call esi
sub eax, edi
cmp eax, dword [ebp + 0xc]
jbe 0x41170e
push dword [esp + 0x14]
push 0x8001
push 0x1102
push dword [ebp]
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
jmp 0x411781
mov edi, dword [esp + 0x14]
xor eax, eax
cmp byte [esp + 0x13], al
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
setne al
push edi
lea eax, [eax*4 + 5]
push eax
push 0x110b
push dword [ebp]
call esi
push edi
push 0
push 0x1114
push dword [ebp]
call esi
mov eax, dword [ebx]
mov edi, dword [esp + 0x30]
movzx eax, word [edi + eax*2]
push eax
call fcn.0047d2d0
test al, al
je 0x411767
inc dword [ebx]
mov eax, dword [ebx]
movzx eax, word [edi + eax*2]
push eax
call fcn.0047d2d0
test al, al
jne 0x411755
push dword [esp + 0x34]
mov esi, dword [esp + 0x18]
mov ecx, ebp
push ebx
push esi
push edi
call fcn.00411500
test eax, eax
je 0x41177f
mov esi, eax
mov eax, esi
mov ecx, dword [esp + 0x1060]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004f833c
add esp, 0x1054
ret 0x10