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

Disassembly:
sub esp, 0x1c
push ebx
push ebp
push esi
push edi
xor ebx, ebx
cmp byte [0x4e2e78], bl
mov edi, ecx
mov dword [esp + 0x1c], edi
mov ebp, 0x4e3110
mov esi, str.MAIN_DBG:_d_r_n
je 0x42bf46
push 0x26ba
push esi
push ebp
call fcn.00411365
add esp, 0xc
test byte [0x4e6003], 0x20
je 0x42bf69
push ebx
push ebx
push 0x44a
push dword [0x4e12fc]
call fcn.00412925
pop ecx
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
cmp byte [0x4e2e78], bl
je 0x42bf80
push 0x26c0
push esi
push ebp
call fcn.00411365
add esp, 0xc
push ebx
push ebx
push 0x44a
push dword [0x4e2fcc]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp byte [0x4e2e78], bl
je 0x42bfaa
push 0x26c2
push esi
push ebp
call fcn.00411365
add esp, 0xc
cmp byte [0x4e6001], bl
je 0x42bfc6
cmp byte [0x4e6002], bl
jne 0x42bfc6
mov byte [0x4e6002], 1
call fcn.00422037
cmp byte [0x4e2e78], bl
je 0x42bfdd
push 0x26c4
push esi
push ebp
call fcn.00411365
add esp, 0xc
mov eax, dword [0x4e30e8]
cmp eax, ebx
je 0x42bfeb
cmp word [eax], bx
jne 0x42c059
push ebx
mov ecx, edi
call fcn.00419121
cmp byte [0x4e2e78], bl
je 0x42c01b
push dword [0x4e30e8]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x26c8
push str.MAIN_DBG:_d__u_MyShell__s__r_n
push ebp
call fcn.00411365
add esp, 0x14
mov eax, dword [0x4e30e8]
cmp eax, ebx
je 0x42c029
cmp word [eax], bx
jne 0x42c034
push ebx
push ebx
push 0x64
mov ecx, edi
call fcn.0041195d
cmp byte [0x4e2fbc], bl
je 0x42bfdd
cmp byte [0x4e3968], bl
jne 0x42bfdd
push ebx
push ebx
push 0x44b
push dword [0x4e2fcc]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x42bfdd
cmp byte [0x4e2e78], bl
je 0x42c070
push 0x26ce
push esi
push ebp
call fcn.00411365
add esp, 0xc
mov edi, dword [sym.imp.KERNEL32.dll_SleepEx]
push 1
push 0xa
call edi
call fcn.00419904
cmp byte [0x4e6001], bl
je 0x42c09d
cmp byte [0x4e6002], bl
jne 0x42c09d
mov byte [0x4e6002], 1
call fcn.00422037
push dword [0x4e30e8]
lea ecx, [esp + 0x18]
call fcn.004505eb
push dword [esp + 0x14]
call fcn.00422050
mov esi, eax
call fcn.004198d3
push esi
call fcn.004111e1
pop ecx
pop ecx
push 1
push 0xa
mov dword [esp + 0x28], eax
call edi
mov eax, dword [esp + 0x14]
cmp word [eax], bx
mov byte [esp + 0x13], 2
je 0x42c3fa
cmp byte [0x4e2e78], bl
mov edi, str.MAIN_DBG:_d_r_n
je 0x42c0fc
push 0x26e9
push edi
push ebp
call fcn.00411365
add esp, 0xc
call fcn.00419397
test eax, eax
jne 0x42c3cb
cmp byte [0x4e2e78], bl
je 0x42c120
push 0x26eb
push edi
push ebp
call fcn.00411365
add esp, 0xc
cmp byte [0x4e2fbc], bl
je 0x42c143
cmp byte [0x4e3968], bl
jne 0x42c143
push ebx
push ebx
push 0x44b
push dword [0x4e2fcc]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esp + 0x14]
cmp word [eax], bx
je 0x42c3cb
cmp byte [0x4e2e78], bl
je 0x42c167
push 0x26ee
push edi
push ebp
call fcn.00411365
add esp, 0xc
push dword [esp + 0x20]
call fcn.0040ff91
mov esi, eax
push 8
push esi
push str.Explorer
call fcn.00441277
add esp, 0x10
test al, al
je 0x42c195
mov ax, word [esi + 0x10]
cmp ax, 0x2e
je 0x42c197
cmp ax, bx
je 0x42c197
xor esi, esi
cmp byte [0x4e2e78], bl
je 0x42c1ae
push 0x26f0
push edi
push ebp
call fcn.00411365
add esp, 0xc
test byte [0x4e6003], 0x80
jne 0x42c3cb
cmp esi, ebx
je 0x42c1d4
push ebx
push ebx
push ebx
push ebx
push esi
call fcn.004188d0
add esp, 0x14
test eax, eax
jne 0x42c3cb
call fcn.004127b7
cmp byte [0x4e2e78], bl
je 0x42c1f0
push 0x26f3
push edi
push ebp
call fcn.00411365
add esp, 0xc
push ebx
push ebx
push 0x44a
push dword [0x4e2fcc]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp byte [0x4e2e78], bl
je 0x42c21a
push 0x26f5
push edi
push ebp
call fcn.00411365
add esp, 0xc
mov eax, 0x4c6a64
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 [esp + 0x14]
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c], eax
call fcn.004505eb
push dword [esp + 0x18]
call fcn.004128a5
cmp byte [0x4e2e78], bl
pop ecx
mov dword [esp + 0x24], eax
je 0x42c28c
push 0x26fc
push edi
push ebp
call fcn.00411365
add esp, 0xc
cmp byte [0x4e2e78], bl
je 0x42c28c
push dword [esp + 0x18]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 0x26fd
push str.MAIN_DBG:_d__u_MyShell__s__r_n
push ebp
call fcn.00411365
add esp, 0x14
cmp byte [esp + 0x13], 2
mov eax, 0x4cb418
jl 0x42c29d
mov eax, 0x4ca8f4
push eax
push str.BeforeStart
call fcn.0042be31
cmp dword [esp + 0x2c], ebx
mov al, byte [esp + 0x1b]
pop ecx
pop ecx
push ebx
push ebx
mov byte [0x4e305c], al
push ebx
je 0x42c2cd
mov edi, dword [esp + 0x28]
push dword [esp + 0x24]
mov ecx, edi
call fcn.00434f28
jmp 0x42c2ee
mov ecx, dword [esp + 0x28]
push 7
lea eax, [esp + 0x34]
push eax
push ecx
push dword [esp + 0x30]
mov dword [esp + 0x40], 0x5e
call fcn.0040a949
mov edi, dword [esp + 0x1c]
push 0x4cb418
push str.AfterTerm
mov byte [0x4e305c], bl
call fcn.0042be31
cmp byte [esp + 0x1b], 1
pop ecx
pop ecx
jle 0x42c310
dec byte [esp + 0x13]
call esi
sub eax, dword [esp + 0x28]
cmp eax, 0x7d0
jae 0x42c349
push ebx
push ebx
push 0x1f4
jmp 0x42c342
mov cx, word [eax]
cmp cx, bx
je 0x42c3bd
cmp cx, 0x2a
jne 0x42c35c
cmp word [eax + 2], bx
jne 0x42c35c
push ebx
push ebx
push 0x64
mov ecx, edi
call fcn.0041195d
mov ecx, edi
push ebx
call fcn.00419121
mov eax, dword [0x4e30e8]
cmp eax, ebx
jne 0x42c326
jmp 0x42c3bd
push eax
lea ecx, [esp + 0x18]
call fcn.0045066c
cmp byte [0x4e2e78], bl
je 0x42c385
push dword [esp + 0x14]
push 0x270b
push str.MAIN_DBG:_d_MyShell__s__r_n
push ebp
call fcn.00411365
add esp, 0x10
push dword [esp + 0x14]
call fcn.00422050
mov esi, eax
call fcn.004198d3
push esi
call fcn.004111e1
cmp byte [0x4e2e78], bl
pop ecx
pop ecx
mov dword [esp + 0x20], eax
je 0x42c3bd
push eax
push 0x270f
push str.MAIN_DBG:_d_ShellName__s__r_n
push ebp
call fcn.00411365
add esp, 0x10
lea ecx, [esp + 0x18]
call fcn.0043fe25
jmp 0x42c0e0
mov ecx, dword [esp + 0x1c]
push ebx
push ebx
push 0x1f4
call fcn.0041195d
mov ecx, dword [esp + 0x1c]
push 0xffffffffffffffff
call fcn.00419121
push dword [0x4e30e8]
lea ecx, [esp + 0x18]
call fcn.0045066c
jmp 0x42c0e0
lea ecx, [esp + 0x14]
call fcn.0043fe25
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret 4