Function at 0x47d280
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 [0x4d162c]
cmp dword [0x4d15fc], 0
jne 0x47d2ae
mov eax, 0x1140
jmp 0x47d2b3
mov eax, dword [0x4d15fc]
push eax
cmp dword [0x4c4ce4], 1
jne 0x47d2c4
mov edx, 2
jmp 0x47d2c6
xor edx, edx
push edx
mov ecx, edi
mov edx, esi
mov eax, ebx
call fcn.0046f1a0
cmp esi, 0x110
jg 0x47d303
je 0x47d327
sub esi, 2
je 0x47db74
sub esi, 0xd
je 0x47d57a
dec esi
je 0x47dafb
sub esi, 8
je 0x47d550
jmp 0x47dcc4
sub esi, 0x111
je 0x47d631
sub esi, 0x36a
je 0x47da3f
dec esi
je 0x47d4b5
jmp 0x47dcc4
push 0
push ebx
call sub.USER32.DLL_GetSystemMenu
mov esi, eax
test esi, esi
je 0x47d34f
push 1
push 0xf000
push esi
call sub.USER32.DLL_EnableMenuItem
push 1
push 0xf030
push esi
call sub.USER32.DLL_EnableMenuItem
cmp dword [0x4d0e7c], 0
je 0x47d366
xor ecx, ecx
mov edx, 0x70
mov eax, ebx
call fcn.0046f080
cmp byte [0x4d15c8], 0
jne 0x47d38c
mov eax, dword [0x4d0e7c]
cmp eax, 1
je 0x47d37e
cmp eax, 2
jne 0x47d38c
xor ecx, ecx
mov edx, 0xa2
mov eax, ebx
call fcn.0046f080
xor edx, edx
xor ecx, ecx
mov dword [0x4c4cf0], edx
mov dword [0x4c4cf4], ecx
mov dword [0x4c4ce8], 1
xor eax, eax
mov dword [0x4c234c], ebx
mov dword [0x4ba174], eax
cmp dword [0x4c4ce4], 1
je 0x47d3cf
push ebx
call sub.USER32.DLL_BringWindowToTop
push 0
push dword [0x4c2340]
call sub.SHELL32.DLL_DragAcceptFiles
push 0x606060
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d1600], eax
push 0x80809e
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d1604], eax
push 0xeee8e8
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d1608], eax
push 0xffffff
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d160c], eax
push 0xc0ffff
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d1610], eax
push 0xb4d4e4
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d1614], eax
push 0x9494b4
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d1618], eax
push 0x464040
push 1
push 0
call sub.GDI32.DLL_CreatePen
mov dword [0x4d161c], eax
push 0x6e6e94
call sub.GDI32.DLL_CreateSolidBrush
mov dword [0x4d1620], eax
push 0xdcd6d6
call sub.GDI32.DLL_CreateSolidBrush
mov dword [0x4d1624], eax
push 0xa0c0d0
call sub.GDI32.DLL_CreateSolidBrush
mov dword [0x4d1628], eax
push 0
push 0
push 0x47c
push ebx
call sub.USER32.DLL_PostMessageA
cmp dword [0x4c4ce4], 1
setne al
and eax, 1
jmp 0x47dcc6
mov eax, dword [0x4c4cfc]
test eax, eax
je 0x47d549
cmp byte [0x4ba172], 0
jne 0x47d4da
push 0
push eax
call sub.KERNEL32.DLL_WaitForSingleObject
xor eax, eax
jmp 0x47dcc6
mov byte [ebp - 1], 0
jmp 0x47d519
cmp byte [ebp - 1], 0
jne 0x47d50d
push 0x480
lea edx, [ebp - 0x494]
push edx
push ebx
call sub.USER32.DLL_GetWindowTextA
mov eax, 0x57d
call fcn.0041202c
push eax
push ebx
call sub.USER32.DLL_SetWindowTextA
mov byte [ebp - 1], 1
push 0x14
call sub.KERNEL32.DLL_Sleep
call fcn.004483d0
cmp dword [0x4c4cf0], 0
jne 0x47d536
push 0x32
push dword [0x4c4cfc]
call sub.KERNEL32.DLL_WaitForSingleObject
cmp eax, 0x102
je 0x47d4e0
cmp byte [ebp - 1], 0
je 0x47d549
lea edx, [ebp - 0x494]
push edx
push ebx
call sub.USER32.DLL_SetWindowTextA
xor eax, eax
jmp 0x47dcc6
test edi, edi
je 0x47d573
push 0xfffffffffffffff0
push ebx
call sub.USER32.DLL_GetWindowLongA
test eax, 0x40000000
je 0x47d573
push 0
push ebx
call sub.USER32.DLL_FlashWindow
push 1
push ebx
call sub.USER32.DLL_FlashWindow
xor eax, eax
jmp 0x47dcc6
push 0x4aa0ab
push ebx
call sub.USER32.DLL_GetPropA
test eax, eax
je 0x47d599
cmp dword [0x4d0e7c], 8
je 0x47d599
xor eax, eax
jmp 0x47dcc6
mov eax, dword [0x4d0e7c]
test eax, eax
je 0x47d5b1
cmp eax, 1
je 0x47d5b1
cmp eax, 2
je 0x47d5b1
cmp eax, 8
jne 0x47d62a
lea edx, [ebp - 0x4d4]
push edx
push ebx
call sub.USER32.DLL_BeginPaint
push dword [0x4d15d8]
push dword [0x4d15d4]
push dword [0x4d15e0]
push dword [0x4d15dc]
mov esi, eax
xor ecx, ecx
xor eax, eax
mov edx, esi
push ebx
call fcn.0047dde0
cmp byte [0x4d15c8], 0
jne 0x47d5f6
cmp dword [0x4d0e7c], 8
jne 0x47d61d
push dword [0x4d15e8]
push dword [0x4d15e4]
push dword [0x4d15f0]
push dword [0x4d15ec]
push ebx
mov cl, 1
mov edx, esi
mov eax, 1
call fcn.0047dde0
lea edx, [ebp - 0x4d4]
push edx
push ebx
call sub.USER32.DLL_EndPaint
xor eax, eax
jmp 0x47dcc6
and di, 0xffff
movzx edx, di
cmp edx, 0x70
jg 0x47d65a
je 0x47d983
sub edx, 2
je 0x47d676
sub edx, 0x6c
je 0x47d68c
dec edx
je 0x47d7e5
jmp 0x47da35
sub edx, 0x7c
je 0x47d9ea
dec edx
je 0x47da06
dec edx
je 0x47da1c
jmp 0x47da35
push 0
push 0
push 0x10
push ebx
call sub.USER32.DLL_SendMessageA
mov eax, 1
jmp 0x47dcc6
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.0046ed3c
test al, al
je 0x47d6dc
mov eax, 0x65
jmp 0x47d6e1
mov eax, 0x6c
mov dword [ebp - 8], eax
push edi
cmp dword [ebp - 8], 0x65
jne 0x47d6f2
mov edx, 0x4aa0b0
jmp 0x47d6f7
mov edx, 0x4aa0b8
mov eax, 0x4c2b80
mov ecx, esi
call fcn.0048491c
mov dword [0x4d0e78], eax
cmp dword [0x4d0e78], 0
jne 0x47d72c
push 0
push edi
push esi
push 1
movzx eax, word [ebp - 8]
push eax
push dword [0x4af654]
call sub.USER32.DLL_LoadImageA
mov dword [0x4d0e78], eax
mov edx, dword [0x4d0e78]
cmp dword [0x4d0e7c], 0
mov dword [ebp - 0x6a8], edx
jne 0x47d75f
push 0
mov eax, 0x2f8
call fcn.0041202c
push eax
lea edx, [ebp - 0x6a4]
push edx
call fcn.00497dc4
add esp, 0xc
jmp 0x47d771
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 0x47d7c9
push 0
push ebx
call sub.USER32.DLL_ShowWindow
push 0
push dword [0x4c2340]
call sub.USER32.DLL_ShowWindow
mov al, 1
call fcn.004508bc
push dword [0x4d15e8]
push dword [0x4d15e4]
push dword [0x4d15f0]
push dword [0x4d15ec]
push 0
xor ecx, ecx
xor edx, edx
mov eax, 1
call fcn.0047dde0
jmp 0x47d7db
push dword [0x4d0e78]
call sub.USER32.DLL_DestroyIcon
xor eax, eax
mov dword [0x4d0e78], eax
mov eax, 1
jmp 0x47dcc6
cmp byte [0x4d1630], 0
jne 0x47d832
cmp dword [0x4c234c], 0
jne 0x47d801
mov eax, 1
jmp 0x47dcc6
push 0xc8
push 0x4d1631
push 0x6f
push ebx
call sub.USER32.DLL_GetDlgItemTextA
push 0x480
push 0x4d16f9
push ebx
call sub.USER32.DLL_GetWindowTextA
mov eax, dword [0x4c4cfc]
test eax, eax
je 0x47d832
push eax
call sub.KERNEL32.DLL_ReleaseMutex
cmp byte [0x4d1630], 0
je 0x47d842
mov edx, 0x4d1631
jmp 0x47d84e
mov eax, 0x49c
call fcn.0041202c
mov edx, eax
push edx
push 0x6f
push ebx
call sub.USER32.DLL_SetDlgItemTextA
cmp byte [0x4d1630], 0
je 0x47d867
mov ecx, 0x4d16f9
jmp 0x47d873
mov eax, 0x49d
call fcn.0041202c
mov ecx, eax
push ecx
push ebx
call sub.USER32.DLL_SetWindowTextA
mov al, byte [0x4d1630]
mov byte [ebp - 9], al
xor edx, edx
mov dl, al
cmp edx, 1
sbb ecx, ecx
neg ecx
mov byte [0x4d1630], cl
mov byte [ebp - 0xa], 0
cmp byte [0x4d1630], 0
je 0x47d8c0
cmp dword [0x4d15c0], 0
je 0x47d8c0
push dword [0x4d15c0]
call sub.KERNEL32.DLL_SuspendThread
cmp eax, 0xffffffff
setne al
and eax, 1
mov byte [ebp - 0xa], al
call fcn.0049d288
mov esi, eax
jmp 0x47d91e
lea eax, [ebp - 0x6d8]
push eax
push ebx
call sub.USER32.DLL_IsDialogMessageA
test eax, eax
jne 0x47d91e
cmp dword [ebp - 0x6d4], 0x203
jne 0x47d906
mov edx, dword [ebp - 0x6d8]
cmp edx, dword [0x4c2894]
jne 0x47d906
mov eax, 0x4c2894
mov edx, dword [0x4c2340]
call fcn.00481768
jmp 0x47d91e
lea ecx, [ebp - 0x6d8]
push ecx
call sub.USER32.DLL_TranslateMessage
lea eax, [ebp - 0x6d8]
push eax
call sub.USER32.DLL_DispatchMessageA
cmp byte [0x4d1630], 0
je 0x47d946
cmp dword [0x4c4cf0], 0
jne 0x47d946
push 0
push 0
push 0
lea edx, [ebp - 0x6d8]
push edx
call sub.USER32.DLL_GetMessageA
test eax, eax
jne 0x47d8c9
call fcn.0049d288
sub eax, esi
add dword [0x4d15c4], eax
cmp byte [ebp - 9], 0
je 0x47d968
push 0
push 0
push 0x47c
push ebx
call sub.USER32.DLL_SendMessageA
cmp byte [ebp - 0xa], 0
je 0x47d979
push dword [0x4d15c0]
call sub.KERNEL32.DLL_ResumeThread
mov eax, 1
jmp 0x47dcc6
push 0
push 0x47cb64
push ebx
push 0x4aa0c1
push dword [0x4af654]
mov esi, dword [0x4b8f64]
call sub.USER32.DLL_DialogBoxParamA
test eax, eax
je 0x47d9e0
cmp esi, dword [0x4b8f64]
je 0x47d9e0
cmp dword [0x4b8f64], 0
je 0x47d9e0
cmp dword [0x4b996c], 0
jne 0x47d9d6
mov eax, dword [0x4ba174]
test eax, eax
je 0x47d9e0
mov edx, dword [0x4b8f64]
dec edx
call fcn.0041aa5c
jmp 0x47d9e0
mov eax, dword [0x4b8f64]
call fcn.0048ca44
mov eax, 1
jmp 0x47dcc6
push 0x202
push 0
push 0x47b
push ebx
call sub.USER32.DLL_SendMessageA
mov eax, 1
jmp 0x47dcc6
push 0
push 0
push 0x10
push ebx
call sub.USER32.DLL_SendMessageA
mov eax, 1
jmp 0x47dcc6
push 0
push 0x6f
push 0x111
push ebx
call sub.USER32.DLL_PostMessageA
mov eax, 1
jmp 0x47dcc6
mov eax, 1
jmp 0x47dcc6
cmp dword [ebp + 0x14], 0x202
jne 0x47da57
mov eax, ebx
call fcn.0047ca9c
push 5
push ebx
call sub.USER32.DLL_ShowWindow
cmp dword [ebp + 0x14], 0x205
jne 0x47daf1
call sub.USER32.DLL_CreatePopupMenu
mov esi, eax
mov eax, 0x2f9
call fcn.0041202c
push eax
push 0x7c
push 0
push esi
call sub.USER32.DLL_AppendMenuA
mov eax, 0x2fa
call fcn.0041202c
push eax
push 0x7d
push 0
push esi
call sub.USER32.DLL_AppendMenuA
cmp byte [0x4d1630], 0
je 0x47daa5
mov eax, 0x2fc
jmp 0x47daaa
mov eax, 0x2fb
call fcn.0041202c
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 0x47dcc6
push 0x4aa0ab
push ebx
call sub.USER32.DLL_GetPropA
test eax, eax
je 0x47db12
push ebx
call sub.USER32.DLL_DestroyWindow
jmp 0x47db6a
cmp dword [0x4d0e7c], 0xb
je 0x47db60
call fcn.0049d288
sub eax, dword [0x4d15c4]
mov dword [ebp - 0x6dc], eax
fild dword [ebp - 0x6dc]
fcomp dword [0x47dcd0]
fnstsw ax
sahf
jb 0x47db60
push 0x24
mov eax, 0x312
call fcn.0041202c
push eax
mov eax, 0x311
call fcn.0041202c
push eax
push ebx
call sub.USER32.DLL_MessageBoxA
cmp eax, 6
jne 0x47db6a
mov dword [0x4c4cf0], 1
mov eax, 1
jmp 0x47dcc6
push 1
push dword [0x4c2340]
call sub.SHELL32.DLL_DragAcceptFiles
push 0x4aa0ab
push ebx
call sub.USER32.DLL_GetPropA
test eax, eax
je 0x47dbbf
push 0x4aa0ab
push ebx
call sub.USER32.DLL_RemovePropA
xor eax, eax
cmp ebx, dword [eax*4 + 0x4d1580]
jne 0x47dbb4
xor edx, edx
mov dword [eax*4 + 0x4d1580], edx
jmp 0x47dc9a
inc eax
cmp eax, 0x10
jl 0x47db9d
jmp 0x47dc9a
push dword [0x4d1600]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d1604]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d1608]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d160c]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d1610]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d1614]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d1618]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d161c]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d1620]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d1624]
call sub.GDI32.DLL_DeleteObject
push dword [0x4d1628]
call sub.GDI32.DLL_DeleteObject
cmp dword [0x4c4cf0], 0
jne 0x47dc5a
call fcn.0049d288
sub eax, dword [0x4d15c4]
cmp eax, 0x2710
jle 0x47dc5a
xor eax, eax
call fcn.00448468
mov eax, ebx
call fcn.0047ca9c
xor edx, edx
xor ecx, ecx
mov dword [0x4c234c], edx
mov dword [0x4c4ce8], ecx
mov eax, dword [0x4c4cf0]
xor edx, edx
mov dword [0x4c4cf4], eax
mov dword [0x4c4cf0], edx
mov eax, dword [0x4c4cfc]
test eax, eax
je 0x47dc92
push eax
call sub.KERNEL32.DLL_ReleaseMutex
xor edx, edx
mov dword [0x4d15c0], edx
cmp dword [0x4c4ce4], 1
je 0x47dcc0
cmp dword [0x4c2350], 0
je 0x47dcb4
mov ecx, dword [0x4c2350]
jmp 0x47dcba
mov ecx, dword [0x4c2354]
push ecx
call sub.USER32.DLL_SetFocus
xor eax, eax
jmp 0x47dcc6
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10