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

Disassembly:
mov eax, 0x1054
call fcn.0052f720
mov eax, dword [0x58bb30]
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 + 0x2c], 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 byte [esp + 0x23], cl
mov dword [esp + 0x38], ebx
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 0x417a87
jmp 0x4178a0
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 + 0x30], edi
test esi, esi
je 0x4178f7
lea eax, [esp + 0x60]
push eax
push dword [esi + 8]
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
test eax, eax
je 0x417975
mov eax, dword [esp + 0x2c]
neg esi
mov dword [esp + 0x18], edi
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, edi
movzx ebx, word [eax]
movzx edi, word [ebp]
mov dword [esp + 0x24], eax
test bx, bx
jne 0x41793a
test di, di
je 0x417965
cmp cx, 0x5c
jne 0x417935
cmp dx, cx
jmp 0x417938
cmp edi, 0x5c
je 0x417965
push edi
call fcn.004c10e0
push ebx
mov esi, eax
call fcn.004c10e0
cmp eax, esi
jne 0x417969
mov eax, dword [esp + 0x24]
add ebp, 2
mov esi, dword [esp + 0x18]
add eax, 2
inc esi
mov ecx, ebx
mov dword [esp + 0x18], esi
mov edx, edi
jmp 0x417915
mov edi, esi
jmp 0x41796d
mov edi, dword [esp + 0x30]
mov ebp, dword [esp + 0x20]
mov ebx, dword [esp + 0x28]
cmp edi, dword [ebx]
jle 0x417983
mov esi, ebp
mov dword [ebx], edi
mov dword [esp + 0x14], esi
jmp 0x4179a8
test byte [esp + 0x40], 0x20
je 0x4179a4
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 0x4179ac
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 0x4178a0
test esi, esi
je 0x417a87
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 0x417a18
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, esi
cmp eax, dword [edi + 0xc]
jbe 0x417a18
push ebp
push 0x8001
push 0x1102
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
jmp 0x417a89
movzx eax, byte [esp + 0x13]
mov esi, dword [esp + 0x14]
push esi
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 + 0x2c]
movzx eax, word [ebp + eax*2]
push eax
call fcn.004a2560
test al, al
je 0x417a73
lea esp, [esp]
inc dword [ebx]
mov eax, dword [ebx]
movzx eax, word [ebp + eax*2]
push eax
call fcn.004a2560
test al, al
jne 0x417a60
push dword [esp + 0x34]
mov ecx, edi
push ebx
push esi
push ebp
call fcn.00417820
test eax, eax
je 0x417a87
mov esi, eax
mov eax, esi
mov ecx, dword [esp + 0x1060]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0052f708
add esp, 0x1054
ret 0x10