Function at 0x422c58
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
push ebx
push esi
xor ebx, ebx
test byte [0x49a003], 0x20
push edi
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0xc], ecx
je 0x422c8b
push ebx
push ebx
push 0x44a
push dword [0x49529c]
call fcn.0040c191
pop ecx
push eax
call edi
push ebx
push ebx
push 0x44a
push dword [0x496dd8]
call edi
cmp byte [0x49a001], bl
je 0x422cc2
cmp byte [0x49a002], bl
jne 0x422cc2
mov byte [0x49a002], 1
call fcn.0040bbb1
cmp eax, 0x60000
jae 0x422cc2
call fcn.0040ef26
mov eax, dword [0x496f54]
cmp eax, ebx
je 0x422cd0
cmp word [eax], bx
jne 0x422d12
mov ecx, dword [ebp - 0xc]
push ebx
call fcn.004121b0
mov eax, dword [0x496f54]
cmp eax, ebx
je 0x422ce7
cmp word [eax], bx
jne 0x422cf1
mov ecx, dword [ebp - 0xc]
push 0x64
call fcn.0040b816
cmp byte [0x496dcc], bl
je 0x422cc2
cmp byte [0x4971e8], bl
jne 0x422cc2
push ebx
push ebx
push 0x44b
push dword [0x496dd8]
call edi
jmp 0x422cc2
mov esi, dword [sym.imp.KERNEL32.dll_SleepEx]
push 1
push 0xa
call esi
call fcn.004126eb
cmp byte [0x49a001], bl
je 0x422d4b
cmp byte [0x49a002], bl
jne 0x422d4b
mov byte [0x49a002], 1
call fcn.0040bbb1
cmp eax, 0x60000
jae 0x422d4b
call fcn.0040ef26
push dword [0x496f54]
lea ecx, [ebp - 8]
call fcn.004365ba
mov eax, dword [ebp - 8]
call fcn.004126ba
push dword [ebp - 8]
call fcn.0040b39b
pop ecx
push 1
push 0xa
mov dword [ebp - 0x14], eax
call esi
mov eax, dword [ebp - 8]
cmp word [eax], bx
mov byte [ebp - 1], 2
je 0x422eef
call fcn.004123c7
test eax, eax
jne 0x422df7
cmp byte [0x496dcc], bl
je 0x422dab
cmp byte [0x4971e8], bl
jne 0x422dab
push ebx
push ebx
push 0x44b
push dword [0x496dd8]
call edi
mov eax, dword [ebp - 8]
cmp word [eax], bx
je 0x422df7
push dword [ebp - 0x14]
call fcn.0040a3a5
mov esi, eax
push 8
push esi
push str.Explorer
call fcn.00428263
add esp, 0x10
test al, al
je 0x422de0
mov ax, word [esi + 0x10]
cmp ax, 0x2e
je 0x422de2
cmp ax, bx
je 0x422de2
xor esi, esi
cmp esi, ebx
je 0x422e21
push ebx
push ebx
push ebx
push ebx
push esi
call fcn.00411989
add esp, 0x14
test eax, eax
je 0x422e21
mov ecx, dword [ebp - 0xc]
push 0x1f4
call fcn.0040b816
mov ecx, dword [ebp - 0xc]
push 0xffffffffffffffff
call fcn.004121b0
push dword [0x496f54]
lea ecx, [ebp - 8]
call fcn.00436622
jmp 0x422d83
call fcn.0040c091
push ebx
push ebx
push 0x44a
push dword [0x496dd8]
call edi
mov eax, 0x480934
push eax
push eax
call sym.PECMD.exe_LoadEnvi
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
pop ecx
pop ecx
call esi
push dword [ebp - 8]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x1c], eax
call fcn.004365ba
push dword [0x496f54]
mov dword [ebp - 0x18], 0x24
call fcn.0040c127
test eax, eax
pop ecx
mov ecx, dword [ebp - 0xc]
push ebx
push ebx
push ebx
je 0x422e80
push dword [ebp - 0x10]
call fcn.00420f64
jmp 0x422e8d
lea eax, [ebp - 0x18]
push eax
push ecx
push dword [ebp - 0x10]
call fcn.004067ac
cmp byte [ebp - 1], bl
jle 0x422eae
dec byte [ebp - 1]
call esi
sub eax, dword [ebp - 0x1c]
cmp eax, 0x7d0
jae 0x422eae
mov ecx, dword [ebp - 0xc]
push 0x1f4
call fcn.0040b816
mov ecx, dword [ebp - 0xc]
push ebx
call fcn.004121b0
mov eax, dword [0x496f54]
cmp eax, ebx
je 0x422ee2
cmp word [eax], bx
je 0x422ee2
push eax
lea ecx, [ebp - 8]
call fcn.00436622
mov eax, dword [ebp - 8]
call fcn.004126ba
push dword [ebp - 8]
call fcn.0040b39b
pop ecx
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x10]
call fcn.00427365
jmp 0x422d83
lea ecx, [ebp - 8]
call fcn.00427365
pop edi
pop esi
pop ebx
leave
ret 4