Function at 0x480fa0
Capabilities:
Get graphical window text
Hide graphical window
Resume thread
Suspend thread

Disassembly:
sub esp, 0x6b8
mov eax, dword [0x4c03a0]
xor eax, esp
mov dword [esp + 0x6b4], eax
mov eax, dword [0x4f67f4]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x6c8]
push edi
test eax, eax
jne 0x480fcd
mov eax, str.HELPExecArcCmd
mov ebx, dword [esp + 0x6d8]
mov ebp, dword [esp + 0x6d4]
mov edi, dword [esp + 0x6d0]
push 0
push eax
mov eax, dword [0x4f67c4]
push eax
push ebx
push ebp
push edi
push esi
call fcn.00421d80
cmp edi, 0x110
ja 0x48145d
je 0x48129c
add edi, 0xfffffffe
cmp edi, 0x16
ja case.0x481019.3
movzx ecx, byte [edi + 0x481a10]
jmp dword [ecx*4 + 0x4819fc]
test ebp, ebp
je 0x481044
push 0xfffffffffffffff0
push esi
call dword [sym.imp.USER32.dll_GetWindowLongA]
test eax, 0x40000000
je 0x481044
mov edi, dword [sym.imp.USER32.dll_FlashWindow]
push 0
push esi
call edi
push 1
push esi
call edi
xor eax, eax
jmp 0x4819de
push str.Done
push esi
call dword [sym.imp.USER32.dll_GetPropA]
test eax, eax
mov eax, dword [0x4f7790]
je 0x481069
cmp eax, 8
jne case.0x481019.3
test eax, eax
je 0x48107c
cmp eax, 1
je 0x48107c
cmp eax, 2
je 0x48107c
cmp eax, 8
jne 0x4810f3
lea edx, [esp + 0x1c]
push edx
push esi
call dword [sym.imp.USER32.dll_BeginPaint]
mov ecx, dword [0x4f6810]
mov edx, dword [0x4f681c]
push esi
push 0
mov edi, eax
mov eax, dword [0x4f6814]
push edi
push 0
push eax
mov eax, dword [0x4f6818]
push ecx
push edx
push eax
call fcn.00480070
cmp byte [0x4f67fd], 0
jne 0x4810c1
cmp dword [0x4f7790], 8
jne 0x4810e7
mov ecx, dword [0x4f6804]
mov edx, dword [0x4f6800]
mov eax, dword [0x4f680c]
push esi
push 1
push edi
push 1
push ecx
mov ecx, dword [0x4f6808]
push edx
push eax
push ecx
call fcn.00480070
lea edx, [esp + 0x1c]
push edx
push esi
call dword [sym.imp.USER32.dll_EndPaint]
xor eax, eax
jmp 0x4819de
push str.Done
push esi
call dword [sym.imp.USER32.dll_GetPropA]
test eax, eax
je 0x481116
push esi
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp case.0x481616.3
cmp dword [0x4f7790], 0xb
je 0x481159
call fcn.0049f4dd
sub eax, dword [0x4f6848]
cmp eax, 0xea60
jl 0x481159
push 0x24
push 0x312
call fcn.0045be10
push eax
push 0x311
call fcn.0045be10
push eax
push esi
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 6
jne case.0x481616.3
mov dword [0x4dc1c0], 1
jmp case.0x481616.3
mov eax, dword [0x4dc210]
push 1
push eax
call dword [sym.imp.SHELL32.dll_DragAcceptFiles]
push str.Done
push esi
call dword [sym.imp.USER32.dll_GetPropA]
test eax, eax
je 0x4811b8
push str.Done
push esi
call dword [sym.imp.USER32.dll_RemovePropA]
xor eax, eax
cmp dword [eax*4 + 0x4f6850], esi
je 0x4811a8
inc eax
cmp eax, 0x10
jb 0x481194
jmp 0x481277
mov dword [eax*4 + 0x4f6850], 0
jmp 0x481277
mov ecx, dword [0x4f67f0]
mov edi, dword [sym.imp.GDI32.dll_DeleteObject]
push ecx
call edi
mov edx, dword [0x4f67ec]
push edx
call edi
mov eax, dword [0x4f67e8]
push eax
call edi
mov ecx, dword [0x4f67e4]
push ecx
call edi
mov edx, dword [0x4f67e0]
push edx
call edi
mov eax, dword [0x4f67dc]
push eax
call edi
mov ecx, dword [0x4f67d8]
push ecx
call edi
mov edx, dword [0x4f67d4]
push edx
call edi
mov eax, dword [0x4f67d0]
push eax
call edi
mov ecx, dword [0x4f67cc]
push ecx
call edi
mov edx, dword [0x4f67c8]
push edx
call edi
xor edi, edi
cmp dword [0x4dc1c0], edi
jne 0x481240
call fcn.0049f4dd
sub eax, dword [0x4f6848]
cmp eax, 0x2710
jle 0x481240
push edi
call fcn.004451c0
call fcn.0047f690
mov eax, dword [0x4dc1c0]
mov dword [0x4db888], eax
mov eax, dword [0x4dc1c4]
mov dword [0x4db884], edi
mov dword [0x4dbda0], edi
mov dword [0x4dc1c0], edi
cmp eax, edi
je 0x481271
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov dword [0x4f684c], edi
cmp dword [0x4dbca8], 1
je 0x481295
mov eax, dword [0x4dbd9c]
test eax, eax
jne 0x48128e
mov eax, dword [0x4dff38]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
xor eax, eax
jmp 0x4819de
xor ebp, ebp
push ebp
push esi
call dword [sym.imp.USER32.dll_GetSystemMenu]
mov edi, eax
cmp edi, ebp
je 0x4812c6
mov ebx, dword [sym.imp.USER32.dll_EnableMenuItem]
push 1
push 0xf000
push edi
call ebx
push 1
push 0xf030
push edi
call ebx
mov eax, dword [0x4f7790]
cmp eax, ebp
je 0x4812e9
push ebp
push 0x70
push esi
call fcn.00421ab0
push ebp
push 0xa3
push esi
call fcn.00421ad0
mov eax, dword [0x4f7790]
cmp byte [0x4f67fd], 0
mov ebx, 1
jne 0x481324
cmp eax, ebx
je 0x481300
cmp eax, 2
jne 0x481324
push ebp
push 0xa2
push esi
call fcn.00421ad0
push ebp
push 0xa6
push esi
call fcn.00421ad0
push ebp
push 0xa1
push esi
call fcn.00421ad0
mov dword [0x4dc1c0], ebp
mov dword [0x4db888], ebp
mov dword [0x4dbda0], ebx
mov dword [0x4db884], esi
mov dword [0x4e69a0], ebp
cmp dword [0x4dbca8], ebx
je 0x48135f
push esi
call dword [sym.imp.USER32.dll_BringWindowToTop]
mov ecx, dword [0x4dc210]
push ebp
push ecx
call dword [sym.imp.SHELL32.dll_DragAcceptFiles]
mov edx, dword [0x4dc210]
push edx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x48139f
mov ecx, dword [0x4db884]
lea eax, [esp + 0x1c]
push eax
push ecx
mov dword [esp + 0x24], 0x2c
call dword [sym.imp.USER32.dll_GetWindowPlacement]
mov eax, dword [0x4dc210]
lea edx, [esp + 0x1c]
push edx
push eax
mov dword [esp + 0x2c], ebp
call dword [sym.imp.USER32.dll_SetWindowPlacement]
mov edi, dword [sym.imp.GDI32.dll_CreatePen]
push 0x606060
push ebx
push ebp
call edi
push 0x80809e
push ebx
push ebp
mov dword [0x4f67f0], eax
call edi
push 0xeee8e8
push ebx
push ebp
mov dword [0x4f67ec], eax
call edi
push 0xffffff
push ebx
push ebp
mov dword [0x4f67e8], eax
call edi
push 0xc0ffff
push ebx
push ebp
mov dword [0x4f67e4], eax
call edi
push 0xb4d4e4
push ebx
push ebp
mov dword [0x4f67e0], eax
call edi
push 0x9494b4
push ebx
push ebp
mov dword [0x4f67dc], eax
call edi
push 0x464040
push ebx
push ebp
mov dword [0x4f67d8], eax
call edi
mov edi, dword [sym.imp.GDI32.dll_CreateSolidBrush]
push 0x6e6e94
mov dword [0x4f67d4], eax
call edi
push 0xdcd6d6
mov dword [0x4f67d0], eax
call edi
push 0xa0c0d0
mov dword [0x4f67cc], eax
call edi
push ebx
push ebp
push 0x47c
push esi
mov dword [0x4f67c8], eax
call dword [sym.imp.USER32.dll_PostMessageA]
xor eax, eax
cmp dword [0x4dbca8], ebx
setne al
jmp 0x4819de
sub edi, 0x111
je 0x481600
sub edi, 0x36a
je 0x481542
sub edi, 1
jne case.0x481019.3
mov eax, dword [0x4dc1c4]
test eax, eax
je 0x48153b
test ebx, ebx
setne byte [esp + 0x12]
cmp byte [0x4e699b], 0
jne 0x4814a6
push edi
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
xor eax, eax
jmp 0x4819de
xor bl, bl
call fcn.0049f4dd
cmp dword [0x4dc1c0], 0
mov ebp, dword [sym.imp.USER32.dll_SetWindowTextA]
mov dword [esp + 0x14], eax
jne 0x481516
mov edi, dword [sym.imp.USER32.dll_GetWindowTextA]
mov ecx, dword [0x4dc1c4]
push 0x32
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x481516
test bl, bl
jne 0x481500
push 0x480
lea edx, [esp + 0x248]
push edx
push esi
call edi
push 0x57d
call fcn.0045be10
push eax
push esi
call ebp
mov bl, 1
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.00445860
cmp dword [0x4dc1c0], 0
je 0x4814c6
cmp byte [esp + 0x12], 0
je 0x48152c
call fcn.0049f4dd
sub eax, dword [esp + 0x14]
push eax
call fcn.0047fbf0
test bl, bl
je 0x48153b
lea eax, [esp + 0x244]
push eax
push esi
call ebp
xor eax, eax
jmp 0x4819de
cmp ebx, 0x202
jne 0x48155d
call fcn.0047f690
push 5
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
jmp case.0x481616.3
cmp ebx, 0x205
jne case.0x481616.3
call dword [sym.imp.USER32.dll_CreatePopupMenu]
push 0x2fe
mov edi, eax
call fcn.0045be10
mov ebx, dword [sym.imp.USER32.dll_AppendMenuA]
push eax
push 0x7c
push 0
push edi
call ebx
push 0x2ff
call fcn.0045be10
push eax
push 0x7d
push 0
push edi
call ebx
xor ecx, ecx
cmp byte [0x4f67c0], cl
setne cl
add ecx, 0x300
push ecx
call fcn.0045be10
push eax
push 0x7e
push 0
push edi
call ebx
lea edx, [esp + 0x14]
push edx
call dword [sym.imp.USER32.dll_GetCursorPos]
push esi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
push 0
push esi
push 0
push eax
push ecx
push 2
push edi
call dword [sym.imp.USER32.dll_TrackPopupMenu]
push 0
push 0
push 0x400
push esi
call dword [sym.imp.USER32.dll_PostMessageA]
push edi
call dword [sym.imp.USER32.dll_DestroyMenu]
jmp case.0x481616.3
movzx eax, bp
add eax, 0xfffffffe
cmp eax, 0x7c
ja case.0x481616.3
movzx edx, byte [eax + 0x481a44]
jmp dword [edx*4 + 0x481a28]
push 0
push 0
push 0x10
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x481616.3
push 0x1e8
lea eax, [esp + 0x60]
push 0
push eax
call fcn.0049ebe0
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
add esp, 0xc
push 0x31
mov dword [esp + 0x60], 0x58
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], 0x7b
mov dword [esp + 0x6c], 7
mov dword [esp + 0x70], 0x47b
call edi
push 0x32
mov ebp, eax
call edi
mov ebx, eax
call fcn.0047e590
movzx edi, al
neg edi
sbb edi, edi
and edi, 0xfffffff9
add edi, 0x6c
mov eax, str.RAR.ico
cmp edi, 0x65
je 0x48169a
mov eax, str.Tray.ico
push ebx
push ebp
push eax
mov ecx, 0x4e29b8
call fcn.00466a20
mov dword [0x4f7794], eax
test eax, eax
jne 0x4816cb
mov edx, dword [0x4c93a8]
push eax
push ebx
push ebp
movzx ecx, di
push 1
push ecx
push edx
call dword [sym.imp.USER32.dll_LoadImageA]
mov dword [0x4f7794], eax
mov dword [esp + 0x70], eax
push 0
lea eax, [esp + 0x60]
push eax
call fcn.0047fdd0
lea ecx, [esp + 0x5c]
push ecx
push 0
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconA]
test eax, eax
je 0x481735
push 0
push esi
mov esi, dword [sym.imp.USER32.dll_ShowWindow]
call esi
mov edx, dword [0x4dc210]
push 0
push edx
call esi
push 1
call fcn.00490920
mov eax, dword [0x4f6804]
mov ecx, dword [0x4f6800]
mov edx, dword [0x4f680c]
push 0
push 0
push 0
push 1
push eax
mov eax, dword [0x4f6808]
push ecx
push edx
push eax
call fcn.00480070
jmp case.0x481616.3
mov ecx, dword [0x4f7794]
push ecx
call dword [sym.imp.USER32.dll_DestroyIcon]
mov dword [0x4f7794], 0
jmp case.0x481616.3
cmp byte [0x4f67c0], 0
jne 0x4817a4
cmp dword [0x4db884], 0
je case.0x481616.3
push 0xc8
push 0x4f7c18
push 0x6f
push esi
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
push 0x480
push 0x4f7798
push esi
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov eax, dword [0x4dc1c4]
test eax, eax
je 0x48179b
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp byte [0x4f67c0], 0
je 0x4817ab
mov eax, 0x4f7c18
jmp 0x4817b5
push 0x49c
call fcn.0045be10
push eax
push 0x6f
push esi
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
cmp byte [0x4f67c0], 0
je 0x4817cf
mov eax, 0x4f7798
jmp 0x4817d9
push 0x49d
call fcn.0045be10
push eax
push esi
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov al, byte [0x4f67c0]
test al, al
push 0x1e8
mov byte [esp + 0x17], al
lea eax, [esp + 0x60]
sete dl
push 0
push eax
mov byte [0x4f67c0], dl
call fcn.0049ebe0
mov ecx, dword [0x4f67f8]
add esp, 0xc
push ecx
lea edx, [esp + 0x60]
push edx
mov dword [esp + 0x64], 0x58
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], 0x7b
mov dword [esp + 0x70], 4
call fcn.0047fdd0
lea eax, [esp + 0x5c]
push eax
push 1
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconA]
cmp byte [0x4f67c0], 0
mov byte [esp + 0x12], 0
je 0x481869
mov eax, dword [0x4f684c]
test eax, eax
je 0x481869
push eax
call dword [sym.imp.KERNEL32.dll_SuspendThread]
cmp eax, 0xffffffff
setne byte [esp + 0x12]
call fcn.0049f4dd
cmp byte [0x4f67c0], 0
mov dword [esp + 0x14], eax
je 0x4818fb
mov edi, dword [sym.imp.USER32.dll_GetMessageA]
mov ebp, dword [sym.imp.USER32.dll_IsDialogMessageA]
mov ebx, dword [sym.imp.USER32.dll_TranslateMessage]
cmp dword [0x4dc1c0], 0
jne 0x4818fb
push 0
push 0
push 0
lea ecx, [esp + 0x28]
push ecx
call edi
test eax, eax
je 0x4818fb
lea edx, [esp + 0x1c]
push edx
push esi
call ebp
test eax, eax
jne 0x4818f2
cmp dword [esp + 0x20], 0x203
jne 0x4818e0
mov eax, dword [esp + 0x1c]
cmp eax, dword [0x4e2ed8]
jne 0x4818e0
mov ecx, dword [0x4dc210]
push ecx
mov ecx, 0x4e2ed8
call fcn.0046b320
jmp 0x4818f2
lea edx, [esp + 0x1c]
push edx
call ebx
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
cmp byte [0x4f67c0], 0
jne 0x481891
call fcn.0049f4dd
sub eax, dword [esp + 0x14]
add dword [0x4f6848], eax
cmp byte [esp + 0x13], 0
je 0x481921
push 0
push 0
push 0x47c
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
cmp byte [esp + 0x12], 0
je case.0x481616.3
mov ecx, dword [0x4f684c]
push ecx
call dword [sym.imp.KERNEL32.dll_ResumeThread]
jmp case.0x481616.3
call fcn.0049f4dd
mov edx, dword [0x4c93a8]
mov edi, dword [0x4e57a0]
push 0
push 0x47fc50
push esi
push str.CMDMODE
push edx
mov ebx, eax
call dword [sym.imp.USER32.dll_DialogBoxParamA]
test eax, eax
je 0x4819a5
mov eax, dword [0x4e57a0]
cmp eax, edi
je 0x4819a5
test eax, eax
je 0x4819a5
cmp dword [0x4e6194], 0
jne 0x48199f
mov ecx, dword [0x4e69a0]
test ecx, ecx
je 0x4819a5
dec eax
push eax
call fcn.004479d0
call fcn.0049f4dd
sub eax, ebx
add dword [0x4f6848], eax
jmp case.0x481616.3
push eax
call fcn.00421740
call fcn.0049f4dd
sub eax, ebx
add dword [0x4f6848], eax
jmp case.0x481616.3
push 0x202
push 0
push 0x47b
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x481616.3
push 0
push 0x6f
push 0x111
push esi
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, 1
mov ecx, dword [esp + 0x6c4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0049e626
add esp, 0x6b8
ret 0x10