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

Disassembly:
sub esp, 0x6d4
mov eax, dword [0x4c0390]
xor eax, esp
mov dword [esp + 0x6d0], eax
mov eax, dword [0x4f6b7c]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x6e4]
push edi
test eax, eax
jne 0x480f4d
mov eax, str.HELPExecArcCmd
mov ecx, dword [0x4dbc60]
mov edx, dword [0x4f6b4c]
mov ebx, dword [esp + 0x6f4]
mov ebp, dword [esp + 0x6f0]
mov edi, dword [esp + 0x6ec]
dec ecx
neg ecx
sbb ecx, ecx
and ecx, 0xfffffffe
add ecx, 2
push ecx
push eax
push edx
push ebx
push ebp
push edi
push esi
call fcn.00421af0
cmp edi, 0x110
ja 0x4813b5
je 0x481235
add edi, 0xfffffffe
cmp edi, 0x16
ja case.0x480faa.3
movzx eax, byte [edi + 0x481940]
jmp dword [eax*4 + 0x48192c]
test ebp, ebp
je 0x480fd5
push 0xfffffffffffffff0
push esi
call dword [sym.imp.USER32.dll_GetWindowLongA]
test eax, 0x40000000
je 0x480fd5
mov edi, dword [sym.imp.USER32.dll_FlashWindow]
push 0
push esi
call edi
push 1
push esi
call edi
xor eax, eax
jmp 0x481910
push str.Done
push esi
call dword [sym.imp.USER32.dll_GetPropA]
test eax, eax
mov eax, dword [0x4f7b18]
je 0x480ffa
cmp eax, 8
jne case.0x480faa.3
test eax, eax
je 0x48100d
cmp eax, 1
je 0x48100d
cmp eax, 2
je 0x48100d
cmp eax, 8
jne 0x48108a
lea ecx, [esp + 0x220]
push ecx
push esi
call dword [sym.imp.USER32.dll_BeginPaint]
mov edx, dword [0x4f6b9c]
mov ecx, dword [0x4f6ba4]
push esi
push 0
mov edi, eax
mov eax, dword [0x4f6b98]
push edi
push 0
push edx
mov edx, dword [0x4f6ba0]
push eax
push ecx
push edx
call fcn.00480000
cmp byte [0x4f6b85], 0
jne 0x481056
cmp dword [0x4f7b18], 8
jne 0x48107b
mov eax, dword [0x4f6b8c]
mov ecx, dword [0x4f6b88]
mov edx, dword [0x4f6b94]
push esi
push 1
push edi
push 1
push eax
mov eax, dword [0x4f6b90]
push ecx
push edx
push eax
call fcn.00480000
lea ecx, [esp + 0x220]
push ecx
push esi
call dword [sym.imp.USER32.dll_EndPaint]
xor eax, eax
jmp 0x481910
push str.Done
push esi
call dword [sym.imp.USER32.dll_GetPropA]
test eax, eax
je 0x4810ad
push esi
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp case.0x481570.3
cmp dword [0x4f7b18], 0xb
je 0x4810f0
call fcn.0049ed5d
sub eax, dword [0x4f6bd0]
cmp eax, 0xea60
jl 0x4810f0
push 0x24
push 0x312
call fcn.0045bde0
push eax
push 0x311
call fcn.0045bde0
push eax
push esi
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 6
jne case.0x481570.3
mov dword [0x4dc178], 1
jmp case.0x481570.3
mov edx, dword [0x4dc1c8]
push 1
push edx
call dword [sym.imp.SHELL32.dll_DragAcceptFiles]
push str.Done
push esi
call dword [sym.imp.USER32.dll_GetPropA]
test eax, eax
je 0x481150
push str.Done
push esi
call dword [sym.imp.USER32.dll_RemovePropA]
xor edi, edi
xor eax, eax
mov edi, edi
cmp dword [eax*4 + 0x4f6bd8], esi
je 0x481144
inc eax
cmp eax, 0x10
jb 0x481130
jmp 0x481210
mov dword [eax*4 + 0x4f6bd8], edi
jmp 0x481210
mov eax, dword [0x4f6b78]
mov edi, dword [sym.imp.GDI32.dll_DeleteObject]
push eax
call edi
mov ecx, dword [0x4f6b74]
push ecx
call edi
mov edx, dword [0x4f6b70]
push edx
call edi
mov eax, dword [0x4f6b6c]
push eax
call edi
mov ecx, dword [0x4f6b68]
push ecx
call edi
mov edx, dword [0x4f6b64]
push edx
call edi
mov eax, dword [0x4f6b60]
push eax
call edi
mov ecx, dword [0x4f6b5c]
push ecx
call edi
mov edx, dword [0x4f6b58]
push edx
call edi
mov eax, dword [0x4f6b54]
push eax
call edi
mov ecx, dword [0x4f6b50]
push ecx
call edi
xor edi, edi
cmp dword [0x4dc178], edi
jne 0x4811d7
call fcn.0049ed5d
sub eax, dword [0x4f6bd0]
cmp eax, 0x2710
jle 0x4811d7
push edi
call fcn.00444d40
call fcn.0047f620
mov edx, dword [0x4dc178]
mov eax, dword [0x4dc17c]
mov dword [0x4db83c], edi
mov dword [0x4dbd58], edi
mov dword [0x4db840], edx
mov dword [0x4dc178], edi
cmp eax, edi
je 0x48120a
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov dword [0x4f6bd4], edi
cmp dword [0x4dbc60], 1
je 0x48122e
mov eax, dword [0x4dbd50]
cmp eax, edi
jne 0x481227
mov eax, dword [0x4dfee0]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
xor eax, eax
jmp 0x481910
xor ebp, ebp
push ebp
push esi
call dword [sym.imp.USER32.dll_GetSystemMenu]
mov edi, eax
cmp edi, ebp
je 0x48125f
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 [0x4f7b18]
cmp eax, ebp
je 0x481282
push ebp
push 0x70
push esi
call fcn.004218f0
push ebp
push 0xa3
push esi
call fcn.00421910
mov eax, dword [0x4f7b18]
cmp byte [0x4f6b85], 0
mov ebx, 1
jne 0x4812bd
cmp eax, ebx
je 0x481299
cmp eax, 2
jne 0x4812bd
push ebp
push 0xa2
push esi
call fcn.00421910
push ebp
push 0xa6
push esi
call fcn.00421910
push ebp
push 0xa1
push esi
call fcn.00421910
mov dword [0x4dc178], ebp
mov dword [0x4db840], ebp
mov dword [0x4dbd58], ebx
mov dword [0x4db83c], esi
mov dword [0x4e6948], ebp
cmp dword [0x4dbc60], ebx
je 0x4812f7
push esi
call dword [sym.imp.USER32.dll_BringWindowToTop]
mov eax, dword [0x4dc1c8]
push ebp
push eax
call dword [sym.imp.SHELL32.dll_DragAcceptFiles]
mov edi, dword [sym.imp.GDI32.dll_CreatePen]
push 0x606060
push ebx
push ebp
call edi
push 0x80809e
push ebx
push ebp
mov dword [0x4f6b78], eax
call edi
push 0xeee8e8
push ebx
push ebp
mov dword [0x4f6b74], eax
call edi
push 0xffffff
push ebx
push ebp
mov dword [0x4f6b70], eax
call edi
push 0xc0ffff
push ebx
push ebp
mov dword [0x4f6b6c], eax
call edi
push 0xb4d4e4
push ebx
push ebp
mov dword [0x4f6b68], eax
call edi
push 0x9494b4
push ebx
push ebp
mov dword [0x4f6b64], eax
call edi
push 0x464040
push ebx
push ebp
mov dword [0x4f6b60], eax
call edi
mov edi, dword [sym.imp.GDI32.dll_CreateSolidBrush]
push 0x6e6e94
mov dword [0x4f6b5c], eax
call edi
push 0xdcd6d6
mov dword [0x4f6b58], eax
call edi
push 0xa0c0d0
mov dword [0x4f6b54], eax
call edi
push ebx
push ebp
push 0x47c
push esi
mov dword [0x4f6b50], eax
call dword [sym.imp.USER32.dll_PostMessageA]
xor eax, eax
cmp dword [0x4dbc60], ebx
setne al
jmp 0x481910
sub edi, 0x111
je 0x48155a
sub edi, 0x36a
je 0x48149c
sub edi, 1
jne case.0x480faa.3
mov eax, dword [0x4dc17c]
test eax, eax
je 0x481495
test ebx, ebx
setne byte [esp + 0x12]
cmp byte [0x4e6943], 0
jne 0x4813fe
push edi
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
xor eax, eax
jmp 0x481910
xor bl, bl
call fcn.0049ed5d
cmp dword [0x4dc178], 0
mov ebp, dword [sym.imp.USER32.dll_SetWindowTextA]
mov dword [esp + 0x14], eax
jne 0x481470
mov edi, dword [sym.imp.USER32.dll_GetWindowTextA]
mov edi, edi
mov ecx, dword [0x4dc17c]
push 0x32
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x481470
test bl, bl
jne 0x48145a
push 0x480
lea edx, [esp + 0x264]
push edx
push esi
call edi
push 0x57d
call fcn.0045bde0
push eax
push esi
call ebp
mov bl, 1
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.004458e0
cmp dword [0x4dc178], 0
je 0x481420
cmp byte [esp + 0x12], 0
je 0x481486
call fcn.0049ed5d
sub eax, dword [esp + 0x14]
push eax
call fcn.0047fb80
test bl, bl
je 0x481495
lea eax, [esp + 0x260]
push eax
push esi
call ebp
xor eax, eax
jmp 0x481910
cmp ebx, 0x202
jne 0x4814b7
call fcn.0047f620
push 5
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
jmp case.0x481570.3
cmp ebx, 0x205
jne case.0x481570.3
call dword [sym.imp.USER32.dll_CreatePopupMenu]
push 0x2fe
mov edi, eax
call fcn.0045bde0
mov ebx, dword [sym.imp.USER32.dll_AppendMenuA]
push eax
push 0x7c
push 0
push edi
call ebx
push 0x2ff
call fcn.0045bde0
push eax
push 0x7d
push 0
push edi
call ebx
xor ecx, ecx
cmp byte [0x4f6b48], cl
setne cl
add ecx, 0x300
push ecx
call fcn.0045bde0
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.0x481570.3
movzx eax, bp
add eax, 0xfffffffe
cmp eax, 0x7c
ja case.0x481570.3
movzx edx, byte [eax + 0x481974]
jmp dword [edx*4 + 0x481958]
push 0
push 0
push 0x10
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x481570.3
push 0x1e8
lea eax, [esp + 0x3c]
push 0
push eax
call fcn.0049e460
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
add esp, 0xc
push 0x31
mov dword [esp + 0x3c], 0x58
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], 0x7b
mov dword [esp + 0x48], 7
mov dword [esp + 0x4c], 0x47b
call edi
push 0x32
mov ebp, eax
call edi
mov ebx, eax
call fcn.0047e520
movzx edi, al
neg edi
sbb edi, edi
and edi, 0xfffffff9
add edi, 0x6c
mov eax, str.RAR.ico
cmp edi, 0x65
je 0x4815f4
mov eax, str.Tray.ico
push ebx
push ebp
push eax
mov ecx, 0x4e2960
call fcn.004669d0
mov dword [0x4f7b1c], eax
test eax, eax
jne 0x481625
mov edx, dword [0x4c9360]
push eax
push ebx
push ebp
movzx ecx, di
push 1
push ecx
push edx
call dword [sym.imp.USER32.dll_LoadImageA]
mov dword [0x4f7b1c], eax
mov dword [esp + 0x4c], eax
push 0
lea eax, [esp + 0x3c]
push eax
call fcn.0047fd60
lea ecx, [esp + 0x38]
push ecx
push 0
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconA]
test eax, eax
je 0x48168f
push 0
push esi
mov esi, dword [sym.imp.USER32.dll_ShowWindow]
call esi
mov edx, dword [0x4dc1c8]
push 0
push edx
call esi
push 1
call fcn.00490490
mov eax, dword [0x4f6b8c]
mov ecx, dword [0x4f6b88]
mov edx, dword [0x4f6b94]
push 0
push 0
push 0
push 1
push eax
mov eax, dword [0x4f6b90]
push ecx
push edx
push eax
call fcn.00480000
jmp case.0x481570.3
mov ecx, dword [0x4f7b1c]
push ecx
call dword [sym.imp.USER32.dll_DestroyIcon]
mov dword [0x4f7b1c], 0
jmp case.0x481570.3
cmp byte [0x4f6b48], 0
jne 0x4816fe
cmp dword [0x4db83c], 0
je case.0x481570.3
push 0xc8
push 0x4f7fa0
push 0x6f
push esi
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
push 0x480
push 0x4f7b20
push esi
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov eax, dword [0x4dc17c]
test eax, eax
je 0x4816f5
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp byte [0x4f6b48], 0
je 0x481705
mov eax, 0x4f7fa0
jmp 0x48170f
push 0x49c
call fcn.0045bde0
push eax
push 0x6f
push esi
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
cmp byte [0x4f6b48], 0
je 0x481729
mov eax, 0x4f7b20
jmp 0x481733
push 0x49d
call fcn.0045bde0
push eax
push esi
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov al, byte [0x4f6b48]
test al, al
push 0x1e8
mov byte [esp + 0x17], al
lea eax, [esp + 0x3c]
sete dl
push 0
push eax
mov byte [0x4f6b48], dl
call fcn.0049e460
mov ecx, dword [0x4f6b80]
add esp, 0xc
push ecx
lea edx, [esp + 0x3c]
push edx
mov dword [esp + 0x40], 0x58
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], 0x7b
mov dword [esp + 0x4c], 4
call fcn.0047fd60
lea eax, [esp + 0x38]
push eax
push 1
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconA]
cmp byte [0x4f6b48], 0
mov byte [esp + 0x12], 0
je 0x4817c3
mov eax, dword [0x4f6bd4]
test eax, eax
je 0x4817c3
push eax
call dword [sym.imp.KERNEL32.dll_SuspendThread]
cmp eax, 0xffffffff
setne byte [esp + 0x12]
call fcn.0049ed5d
cmp byte [0x4f6b48], 0
mov dword [esp + 0x14], eax
je 0x481851
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 [0x4dc178], 0
jne 0x481851
push 0
push 0
push 0
lea ecx, [esp + 0x28]
push ecx
call edi
test eax, eax
je 0x481851
lea edx, [esp + 0x1c]
push edx
push esi
call ebp
test eax, eax
jne 0x481848
cmp dword [esp + 0x20], 0x203
jne 0x481836
mov eax, dword [esp + 0x1c]
cmp eax, dword [0x4e2e80]
jne 0x481836
mov ecx, dword [0x4dc1c8]
push ecx
mov ecx, 0x4e2e80
call fcn.0046b2d0
jmp 0x481848
lea edx, [esp + 0x1c]
push edx
call ebx
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
cmp byte [0x4f6b48], 0
jne 0x4817e7
call fcn.0049ed5d
sub eax, dword [esp + 0x14]
add dword [0x4f6bd0], eax
cmp byte [esp + 0x13], 0
je 0x481877
push 0
push 0
push 0x47c
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
cmp byte [esp + 0x12], 0
je case.0x481570.3
mov ecx, dword [0x4f6bd4]
push ecx
call dword [sym.imp.KERNEL32.dll_ResumeThread]
jmp case.0x481570.3
mov edx, dword [0x4c9360]
mov edi, dword [0x4e5748]
push 0
push 0x47fbe0
push esi
push str.CMDMODE
push edx
call dword [sym.imp.USER32.dll_DialogBoxParamA]
test eax, eax
je case.0x481570.3
mov eax, dword [0x4e5748]
cmp eax, edi
je case.0x481570.3
test eax, eax
je case.0x481570.3
cmp dword [0x4e613c], 0
jne 0x4818de
mov ecx, dword [0x4e6948]
test ecx, ecx
je case.0x481570.3
dec eax
push eax
call fcn.00447a10
jmp case.0x481570.3
push eax
call fcn.004216e0
jmp case.0x481570.3
push 0x202
push 0
push 0x47b
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x481570.3
push 0
push 0x6f
push 0x111
push esi
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, 1
mov ecx, dword [esp + 0x6e0]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0049dea6
add esp, 0x6d4
ret 0x10