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

Disassembly:
mov eax, 0x1054
call fcn.00502fa0
mov eax, dword [0x5513d4]
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 edi, ecx
mov eax, dword [esp + 0x106c]
xor esi, esi
mov cl, byte [esp + 0x1074]
push eax
push 4
push 0x110a
push dword [edi]
mov dword [esp + 0x2c], edi
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 ebp, eax
mov dword [esp + 0x20], ebp
test ebp, ebp
je 0x4141b8
jmp 0x413fc0
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 [edi]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x5c], 0x800
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, dword [esp + 0x5c]
mov edi, dword [ebx]
mov dword [esp + 0x2c], edi
test esi, esi
je 0x414020
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 0x4140a6
mov eax, dword [esp + 0x30]
neg esi
mov dword [esp + 0x18], 0
sbb esi, esi
xor ecx, ecx
and esi, edi
xor edx, edx
lea ebp, [eax + edi*2]
lea eax, [esp + 0x60]
lea eax, [eax + esi*2]
mov esi, ecx
movzx ebx, word [eax]
movzx edi, word [ebp]
mov dword [esp + 0x24], eax
test bx, bx
jne 0x414067
test di, di
je 0x414092
cmp cx, 0x5c
jne 0x414062
cmp dx, cx
jmp 0x414065
cmp edi, 0x5c
je 0x414092
push edi
call fcn.004a0560
push ebx
mov esi, eax
call fcn.004a0560
cmp eax, esi
jne 0x41409a
mov esi, dword [esp + 0x18]
mov ecx, ebx
mov eax, dword [esp + 0x24]
inc esi
add eax, 2
mov dword [esp + 0x18], esi
add ebp, 2
mov edx, edi
jmp 0x414042
mov edi, dword [esp + 0x2c]
add edi, esi
jmp 0x41409e
mov edi, dword [esp + 0x2c]
mov ebp, dword [esp + 0x20]
mov ebx, dword [esp + 0x28]
cmp edi, dword [ebx]
jle 0x4140b4
mov esi, ebp
mov dword [ebx], edi
mov dword [esp + 0x14], esi
jmp 0x4140d9
test byte [esp + 0x40], 0x20
je 0x4140d5
mov edi, dword [esp + 0x1c]
push ebp
push 1
push 0x1102
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, dword [esp + 0x14]
jmp 0x4140dd
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
push ebp
push 1
push 0x110a
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ebp, eax
mov dword [esp + 0x20], ebp
test ebp, ebp
jne 0x413fc0
test esi, esi
je 0x4141b8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebp, dword [esp + 0x14]
mov esi, eax
push ebp
push 2
push 0x1102
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [edi + 0xc], 0
je 0x414149
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, esi
cmp eax, dword [edi + 0xc]
jbe 0x414149
push ebp
push 0x8001
push 0x1102
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
jmp 0x4141ba
mov esi, dword [esp + 0x14]
xor eax, eax
cmp byte [esp + 0x13], al
push esi
setne al
lea eax, [eax*4 + 5]
push eax
push 0x110b
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
push esi
push 0
push 0x1114
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebx]
mov ebp, dword [esp + 0x30]
movzx eax, word [ebp + eax*2]
push eax
call fcn.00484d20
test al, al
je 0x4141a4
inc dword [ebx]
mov eax, dword [ebx]
movzx eax, word [ebp + eax*2]
push eax
call fcn.00484d20
test al, al
jne 0x414191
push dword [esp + 0x34]
mov ecx, edi
push ebx
push esi
push ebp
call fcn.00413f40
test eax, eax
je 0x4141b8
mov esi, eax
mov eax, esi
mov ecx, dword [esp + 0x1060]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00502f8e
add esp, 0x1054
ret 0x10