Function at 0x47cebc
Capabilities:
Check for time delay via gettickcount
Get graphical window text
Hide graphical window
Resume thread
Suspend thread

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff924
push ebx
push esi
push edi
mov edi, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
push dword [ebp + 0x14]
push dword [0x4d072c]
cmp dword [0x4d06fc], 0
jne 0x47ceea
mov eax, 0x1140
jmp 0x47ceef
mov eax, dword [0x4d06fc]
push eax
mov edx, 2
cmp dword [0x4c3de4], 1
je 0x47cf01
add edx, 0xfffffffe
push edx
mov ecx, edi
mov edx, esi
mov eax, ebx
call fcn.0046ef0c
cmp esi, 0x110
jg 0x47cf3e
je 0x47cf62
sub esi, 2
je 0x47d7a9
sub esi, 0xd
je 0x47d1b5
dec esi
je 0x47d730
sub esi, 8
je 0x47d18b
jmp 0x47d8f9
sub esi, 0x111
je 0x47d26c
sub esi, 0x36a
je 0x47d67a
dec esi
je 0x47d0f0
jmp 0x47d8f9
push 0
push ebx
call sub.USER32.DLL_GetSystemMenu
mov esi, eax
test esi, esi
je 0x47cf8a
push 1
push 0xf000
push esi
call sub.USER32.DLL_EnableMenuItem
push 1
push 0xf030
push esi
call sub.USER32.DLL_EnableMenuItem
cmp dword [0x4cff7c], 0
je 0x47cfa1
xor ecx, ecx
mov edx, 0x70
mov eax, ebx
call fcn.0046edec
cmp byte [0x4d06c8], 0
jne 0x47cfc7
mov eax, dword [0x4cff7c]
cmp eax, 1
je 0x47cfb9
cmp eax, 2
jne 0x47cfc7
xor ecx, ecx
mov edx, 0xa2
mov eax, ebx
call fcn.0046edec
xor edx, edx
xor ecx, ecx
mov dword [0x4c3df0], edx
mov dword [0x4c3df4], ecx
mov dword [0x4c3de8], 1
xor eax, eax
mov dword [0x4c144c], ebx
mov dword [0x4b9274], eax
cmp dword [0x4c3de4], 1
je 0x47d00a
push ebx
call sub.USER32.DLL_BringWindowToTop
push 0
push dword [0x4c1440]
call sub.SHELL32.DLL_DragAcceptFiles
push 0x606060
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d0700], eax
push 0x80809e
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d0704], eax
push 0xeee8e8
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d0708], eax
push 0xffffff
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d070c], eax
push 0xc0ffff
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d0710], eax
push 0xb4d4e4
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d0714], eax
push 0x9494b4
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d0718], eax
push 0x464040
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d071c], eax
push 0x6e6e94
call sub.GDI32.DLL_CreateSolidBrush
mov dword [0x4d0720], eax
push 0xdcd6d6
call sub.GDI32.DLL_CreateSolidBrush
mov dword [0x4d0724], eax
push 0xa0c0d0
call sub.GDI32.DLL_CreateSolidBrush
mov dword [0x4d0728], eax
push 0
push 0
push 0x47c
push ebx
call sub.USER32.DLL_PostMessageA
cmp dword [0x4c3de4], 1
setne al
and eax, 1
jmp 0x47d8fb
mov eax, dword [0x4c3dfc]
test eax, eax
je 0x47d184
cmp byte [0x4b9272], 0
jne 0x47d115
push 0
push eax
call sub.KERNEL32.DLL_WaitForSingleObject
xor eax, eax
jmp 0x47d8fb
mov byte [ebp - 1], 0
jmp 0x47d154
cmp byte [ebp - 1], 0
jne 0x47d148
push 0x480
lea edx, [ebp - 0x494]
push edx
push ebx
call sub.USER32.DLL_GetWindowTextA
mov eax, 0x57d
call fcn.00411fe8
push eax
push ebx
call sub.USER32.DLL_SetWindowTextA
mov byte [ebp - 1], 1
push 0x14
call sub.KERNEL32.DLL_Sleep
call fcn.004481c8
cmp dword [0x4c3df0], 0
jne 0x47d171
push 0x32
push dword [0x4c3dfc]
call sub.KERNEL32.DLL_WaitForSingleObject
cmp eax, 0x102
je 0x47d11b
cmp byte [ebp - 1], 0
je 0x47d184
lea edx, [ebp - 0x494]
push edx
push ebx
call sub.USER32.DLL_SetWindowTextA
xor eax, eax
jmp 0x47d8fb
test edi, edi
je 0x47d1ae
push 0xfffffffffffffff0
push ebx
call sub.USER32.DLL_GetWindowLongA
test eax, 0x40000000
je 0x47d1ae
push 0
push ebx
call sub.USER32.DLL_FlashWindow
push 1
push ebx
call sub.USER32.DLL_FlashWindow
xor eax, eax
jmp 0x47d8fb
push str.Done
push ebx
call sub.USER32.DLL_GetPropA
test eax, eax
je 0x47d1d4
cmp dword [0x4cff7c], 8
je 0x47d1d4
xor eax, eax
jmp 0x47d8fb
mov eax, dword [0x4cff7c]
test eax, eax
je 0x47d1ec
cmp eax, 1
je 0x47d1ec
cmp eax, 2
je 0x47d1ec
cmp eax, 8
jne 0x47d265
lea edx, [ebp - 0x4d4]
push edx
push ebx
call sub.USER32.DLL_BeginPaint
push dword [0x4d06d8]
push dword [0x4d06d4]
push dword [0x4d06e0]
push dword [0x4d06dc]
mov esi, eax
xor ecx, ecx
xor eax, eax
mov edx, esi
push ebx
call fcn.0047da14
cmp byte [0x4d06c8], 0
jne 0x47d231
cmp dword [0x4cff7c], 8
jne 0x47d258
push dword [0x4d06e8]
push dword [0x4d06e4]
push dword [0x4d06f0]
push dword [0x4d06ec]
push ebx
mov cl, 1
mov edx, esi
mov eax, 1
call fcn.0047da14
lea edx, [ebp - 0x4d4]
push edx
push ebx
call sub.USER32.DLL_EndPaint
xor eax, eax
jmp 0x47d8fb
and di, 0xffff
movzx edx, di
cmp edx, 0x70
jg 0x47d295
je 0x47d5be
sub edx, 2
je 0x47d2b1
sub edx, 0x6c
je 0x47d2c7
dec edx
je 0x47d420
jmp 0x47d670
sub edx, 0x7c
je 0x47d625
dec edx
je 0x47d641
dec edx
je 0x47d657
jmp 0x47d670
push 0
push 0
push 0x10
push ebx
call sub.USER32.DLL_SendMessageA
mov eax, 1
jmp 0x47d8fb
mov dword [ebp - 0x6bc], 0x1e8
mov dword [ebp - 0x6b8], ebx
mov dword [ebp - 0x6b4], 0x7b
mov dword [ebp - 0x6b0], 7
mov dword [ebp - 0x6ac], 0x47b
push 0x31
call sub.USER32.DLL_GetSystemMetrics
mov esi, eax
push 0x32
call sub.USER32.DLL_GetSystemMetrics
mov edi, eax
call fcn.0046eaa8
test al, al
je 0x47d317
mov eax, 0x65
jmp 0x47d31c
mov eax, 0x6c
mov dword [ebp - 8], eax
push edi
cmp dword [ebp - 8], 0x65
jne 0x47d32d
mov edx, 0x4a91b0
jmp 0x47d332
mov edx, str.Tray.ico
mov eax, 0x4c1c80
mov ecx, esi
call fcn.00484520
mov dword [0x4cff78], eax
cmp dword [0x4cff78], 0
jne 0x47d367
push 0
push edi
push esi
push 1
movzx eax, word [ebp - 8]
push eax
push dword [0x4ae754]
call sub.USER32.DLL_LoadImageA
mov dword [0x4cff78], eax
mov edx, dword [0x4cff78]
cmp dword [0x4cff7c], 0
mov dword [ebp - 0x6a8], edx
jne 0x47d39a
push 0
mov eax, 0x2f8
call fcn.00411fe8
push eax
lea edx, [ebp - 0x6a4]
push edx
call fcn.00497928
add esp, 0xc
jmp 0x47d3ac
push 0x80
lea ecx, [ebp - 0x6a4]
push ecx
push ebx
call sub.USER32.DLL_GetWindowTextA
lea eax, [ebp - 0x6bc]
push eax
push 0
call sub.SHELL32.DLL_Shell_NotifyIconA
test eax, eax
je 0x47d404
push 0
push ebx
call sub.USER32.DLL_ShowWindow
push 0
push dword [0x4c1440]
call sub.USER32.DLL_ShowWindow
mov al, 1
call fcn.004506ac
push dword [0x4d06e8]
push dword [0x4d06e4]
push dword [0x4d06f0]
push dword [0x4d06ec]
push 0
xor ecx, ecx
xor edx, edx
mov eax, 1
call fcn.0047da14
jmp 0x47d416
push dword [0x4cff78]
call sub.USER32.DLL_DestroyIcon
xor eax, eax
mov dword [0x4cff78], eax
mov eax, 1
jmp 0x47d8fb
cmp byte [0x4d0730], 0
jne 0x47d46d
cmp dword [0x4c144c], 0
jne 0x47d43c
mov eax, 1
jmp 0x47d8fb
push 0xc8
push 0x4d0731
push 0x6f
push ebx
call sub.USER32.DLL_GetDlgItemTextA
push 0x480
push 0x4d07f9
push ebx
call sub.USER32.DLL_GetWindowTextA
mov eax, dword [0x4c3dfc]
test eax, eax
je 0x47d46d
push eax
call sub.KERNEL32.DLL_ReleaseMutex
cmp byte [0x4d0730], 0
je 0x47d47d
mov edx, 0x4d0731
jmp 0x47d489
mov eax, 0x49c
call fcn.00411fe8
mov edx, eax
push edx
push 0x6f
push ebx
call sub.USER32.DLL_SetDlgItemTextA
cmp byte [0x4d0730], 0
je 0x47d4a2
mov ecx, 0x4d07f9
jmp 0x47d4ae
mov eax, 0x49d
call fcn.00411fe8
mov ecx, eax
push ecx
push ebx
call sub.USER32.DLL_SetWindowTextA
mov al, byte [0x4d0730]
mov byte [ebp - 9], al
xor edx, edx
mov dl, al
cmp edx, 1
sbb ecx, ecx
neg ecx
mov byte [0x4d0730], cl
mov byte [ebp - 0xa], 0
cmp byte [0x4d0730], 0
je 0x47d4fb
cmp dword [0x4d06c0], 0
je 0x47d4fb
push dword [0x4d06c0]
call sub.KERNEL32.DLL_SuspendThread
cmp eax, 0xffffffff
setne al
and eax, 1
mov byte [ebp - 0xa], al
call fcn.0049cdec
mov esi, eax
jmp 0x47d559
lea eax, [ebp - 0x6d8]
push eax
push ebx
call sub.USER32.DLL_IsDialogMessageA
test eax, eax
jne 0x47d559
cmp dword [ebp - 0x6d4], 0x203
jne 0x47d541
mov edx, dword [ebp - 0x6d8]
cmp edx, dword [0x4c1994]
jne 0x47d541
mov eax, 0x4c1994
mov edx, dword [0x4c1440]
call fcn.00481390
jmp 0x47d559
lea ecx, [ebp - 0x6d8]
push ecx
call sub.USER32.DLL_TranslateMessage
lea eax, [ebp - 0x6d8]
push eax
call sub.USER32.DLL_DispatchMessageA
cmp byte [0x4d0730], 0
je 0x47d581
cmp dword [0x4c3df0], 0
jne 0x47d581
push 0
push 0
push 0
lea edx, [ebp - 0x6d8]
push edx
call sub.USER32.DLL_GetMessageA
test eax, eax
jne 0x47d504
call fcn.0049cdec
sub eax, esi
add dword [0x4d06c4], eax
cmp byte [ebp - 9], 0
je 0x47d5a3
push 0
push 0
push 0x47c
push ebx
call sub.USER32.DLL_SendMessageA
cmp byte [ebp - 0xa], 0
je 0x47d5b4
push dword [0x4d06c0]
call sub.KERNEL32.DLL_ResumeThread
mov eax, 1
jmp 0x47d8fb
push 0
push 0x47c7a8
push ebx
push str.CMDMODE
push dword [0x4ae754]
mov esi, dword [0x4b8064]
call sub.USER32.DLL_DialogBoxParamA
test eax, eax
je 0x47d61b
cmp esi, dword [0x4b8064]
je 0x47d61b
cmp dword [0x4b8064], 0
je 0x47d61b
cmp dword [0x4b8a6c], 0
jne 0x47d611
mov eax, dword [0x4b9274]
test eax, eax
je 0x47d61b
mov edx, dword [0x4b8064]
dec edx
call fcn.0041aa64
jmp 0x47d61b
mov eax, dword [0x4b8064]
call fcn.0048c618
mov eax, 1
jmp 0x47d8fb
push 0x202
push 0
push 0x47b
push ebx
call sub.USER32.DLL_SendMessageA
mov eax, 1
jmp 0x47d8fb
push 0
push 0
push 0x10
push ebx
call sub.USER32.DLL_SendMessageA
mov eax, 1
jmp 0x47d8fb
push 0
push 0x6f
push 0x111
push ebx
call sub.USER32.DLL_PostMessageA
mov eax, 1
jmp 0x47d8fb
mov eax, 1
jmp 0x47d8fb
cmp dword [ebp + 0x14], 0x202
jne 0x47d692
mov eax, ebx
call fcn.0047c6e0
push 5
push ebx
call sub.USER32.DLL_ShowWindow
cmp dword [ebp + 0x14], 0x205
jne 0x47d726
call sub.USER32.DLL_CreatePopupMenu
mov esi, eax
mov eax, 0x2f9
call fcn.00411fe8
push eax
push 0x7c
push 0
push esi
call sub.USER32.DLL_AppendMenuA
mov eax, 0x2fa
call fcn.00411fe8
push eax
push 0x7d
push 0
push esi
call sub.USER32.DLL_AppendMenuA
mov eax, 0x2fc
cmp byte [0x4d0730], 0
jne 0x47d6df
dec eax
call fcn.00411fe8
push eax
push 0x7e
push 0
push esi
call sub.USER32.DLL_AppendMenuA
lea edx, [ebp - 0x14]
push edx
call sub.USER32.DLL_GetCursorPos
push ebx
call sub.USER32.DLL_SetForegroundWindow
push 0
push ebx
push 0
push dword [ebp - 0x10]
push dword [ebp - 0x14]
push 2
push esi
call sub.USER32.DLL_TrackPopupMenu
push 0
push 0
push 0x400
push ebx
call sub.USER32.DLL_PostMessageA
push esi
call sub.USER32.DLL_DestroyMenu
mov eax, 1
jmp 0x47d8fb
push str.Done
push ebx
call sub.USER32.DLL_GetPropA
test eax, eax
je 0x47d747
push ebx
call sub.USER32.DLL_DestroyWindow
jmp 0x47d79f
cmp dword [0x4cff7c], 0xb
je 0x47d795
call fcn.0049cdec
sub eax, dword [0x4d06c4]
mov dword [ebp - 0x6dc], eax
fild dword [ebp - 0x6dc]
fcomp dword [0x47d904]
fnstsw ax
sahf
jb 0x47d795
push 0x24
mov eax, 0x312
call fcn.00411fe8
push eax
mov eax, 0x311
call fcn.00411fe8
push eax
push ebx
call sub.USER32.DLL_MessageBoxA
cmp eax, 6
jne 0x47d79f
mov dword [0x4c3df0], 1
mov eax, 1
jmp 0x47d8fb
push 1
push dword [0x4c1440]
call sub.SHELL32.DLL_DragAcceptFiles
push str.Done
push ebx
call sub.USER32.DLL_GetPropA
test eax, eax
je 0x47d7f4
push str.Done
push ebx
call sub.USER32.DLL_RemovePropA
xor eax, eax
cmp ebx, dword [eax*4 + 0x4d0680]
jne 0x47d7e9
xor edx, edx
mov dword [eax*4 + 0x4d0680], edx
jmp 0x47d8cf
inc eax
cmp eax, 0x10
jl 0x47d7d2
jmp 0x47d8cf
push dword [0x4d0700]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d0704]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d0708]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d070c]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d0710]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d0714]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d0718]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d071c]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d0720]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d0724]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d0728]
call sub.GDI32.DLL_DeleteObject
cmp dword [0x4c3df0], 0
jne 0x47d88f
call fcn.0049cdec
sub eax, dword [0x4d06c4]
cmp eax, 0x2710
jle 0x47d88f
xor eax, eax
call fcn.00448260
mov eax, ebx
call fcn.0047c6e0
xor edx, edx
xor ecx, ecx
mov dword [0x4c144c], edx
mov dword [0x4c3de8], ecx
mov eax, dword [0x4c3df0]
xor edx, edx
mov dword [0x4c3df4], eax
mov dword [0x4c3df0], edx
mov eax, dword [0x4c3dfc]
test eax, eax
je 0x47d8c7
push eax
call sub.KERNEL32.DLL_ReleaseMutex
xor edx, edx
mov dword [0x4d06c0], edx
cmp dword [0x4c3de4], 1
je 0x47d8f5
cmp dword [0x4c1450], 0
je 0x47d8e9
mov ecx, dword [0x4c1450]
jmp 0x47d8ef
mov ecx, dword [0x4c1454]
push ecx
call sub.USER32.DLL_SetFocus
xor eax, eax
jmp 0x47d8fb
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10