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

Disassembly:
mov eax, 0x4e9867
call fcn.004b48a0
sub esp, 0x1c
push ebx
push esi
xor ebx, ebx
test byte [0x522003], 0x20
push edi
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x18], ecx
je 0x439917
push ebx
push ebx
push 0x44a
push dword [0x519318]
call fcn.00421133
pop ecx
push eax
call edi
push ebx
push ebx
push 0x44a
push dword [0x51d1d0]
call edi
cmp byte [0x522001], bl
je 0x43994e
cmp byte [0x522002], bl
jne 0x43994e
mov byte [0x522002], 1
call fcn.00420af8
cmp eax, 0x60000
jae 0x43994e
call fcn.00423aaf
mov eax, dword [0x51d350]
cmp eax, ebx
je 0x43995c
cmp word [eax], bx
jne 0x43999e
mov ecx, dword [ebp - 0x18]
push ebx
call fcn.00426fdf
mov eax, dword [0x51d350]
cmp eax, ebx
je 0x439973
cmp word [eax], bx
jne 0x43997d
mov ecx, dword [ebp - 0x18]
push 0x64
call fcn.0042072b
cmp byte [0x51d1c4], bl
je 0x43994e
cmp byte [0x519730], bl
jne 0x43994e
push ebx
push ebx
push 0x44b
push dword [0x51d1d0]
call edi
jmp 0x43994e
mov esi, dword [sym.imp.KERNEL32.dll_SleepEx]
push 1
push 0xa
call esi
call fcn.00427562
cmp byte [0x522001], bl
je 0x4399d7
cmp byte [0x522002], bl
jne 0x4399d7
mov byte [0x522002], 1
call fcn.00420af8
cmp eax, 0x60000
jae 0x4399d7
call fcn.00423aaf
push dword [0x51d350]
lea ecx, [ebp - 0x14]
call fcn.00456550
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], ebx
call fcn.00427531
push dword [ebp - 0x14]
call fcn.0042023b
pop ecx
push 1
push 0xa
mov dword [ebp - 0x20], eax
call esi
mov eax, dword [ebp - 0x14]
cmp word [eax], bx
mov byte [ebp - 0xd], 2
setne al
cmp al, bl
je 0x439b94
mov esi, 0x4efd50
call fcn.0042720e
test eax, eax
jne 0x439a98
cmp byte [0x51d1c4], bl
je 0x439a44
cmp byte [0x519730], bl
jne 0x439a44
push ebx
push ebx
push 0x44b
push dword [0x51d1d0]
call edi
mov eax, dword [ebp - 0x14]
cmp word [eax], bx
je 0x439a98
push dword [ebp - 0x20]
call fcn.0041f184
push 8
push eax
push str.Explorer
mov dword [ebp - 0x24], eax
call fcn.004449d0
add esp, 0x10
test al, al
je 0x439a81
mov ecx, dword [ebp - 0x24]
mov ax, word [ecx + 0x10]
cmp ax, 0x2e
je 0x439a7d
cmp ax, bx
jne 0x439a81
mov eax, ecx
jmp 0x439a83
xor eax, eax
cmp eax, ebx
je 0x439ac2
push ebx
push ebx
push ebx
push ebx
push eax
call fcn.00426786
add esp, 0x14
test eax, eax
je 0x439ac2
mov ecx, dword [ebp - 0x18]
push 0x1f4
call fcn.0042072b
mov ecx, dword [ebp - 0x18]
push 0xffffffffffffffff
call fcn.00426fdf
push dword [0x51d350]
lea ecx, [ebp - 0x14]
call fcn.00456630
jmp 0x439a1c
call fcn.0042101a
push ebx
push ebx
push 0x44a
push dword [0x51d1d0]
call edi
push esi
push esi
call sym.MBROSTool.exe_LoadEnvi
pop ecx
pop ecx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x24], eax
call fcn.00456550
push dword [0x51d350]
mov byte [ebp - 4], 1
mov dword [ebp - 0x28], 0x24
call fcn.004210c9
test eax, eax
pop ecx
mov ecx, dword [ebp - 0x18]
push ebx
push ebx
push ebx
je 0x439b1e
push dword [ebp - 0x1c]
call fcn.00437b3d
jmp 0x439b2b
lea eax, [ebp - 0x28]
push eax
push ecx
push dword [ebp - 0x1c]
call fcn.0041ac41
cmp byte [ebp - 0xd], bl
jle 0x439b50
dec byte [ebp - 0xd]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0x24]
cmp eax, 0x7d0
jae 0x439b50
mov ecx, dword [ebp - 0x18]
push 0x1f4
call fcn.0042072b
mov ecx, dword [ebp - 0x18]
push ebx
call fcn.00426fdf
mov eax, dword [0x51d350]
cmp eax, ebx
je 0x439b84
cmp word [eax], bx
je 0x439b84
push eax
lea ecx, [ebp - 0x14]
call fcn.00456630
mov eax, dword [ebp - 0x14]
call fcn.00427531
push dword [ebp - 0x14]
call fcn.0042023b
pop ecx
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], bl
call fcn.00443880
jmp 0x439a1c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.00443880
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 4