Function at 0x480a90
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 [0x4f67ac]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x6e4]
push edi
test eax, eax
jne 0x480abd
mov eax, str.HELPExecArcCmd
mov ecx, dword [0x4dbc60]
mov edx, dword [0x4f677c]
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.004219d0
cmp edi, 0x110
ja 0x480f25
je 0x480da5
add edi, 0xfffffffe
cmp edi, 0x16
ja case.0x480b1a.3
movzx eax, byte [edi + 0x4814d4]
jmp dword [eax*4 + 0x4814c0]
test ebp, ebp
je 0x480b45
push 0xfffffffffffffff0
push esi
call dword [sym.imp.USER32.dll_GetWindowLongA]
test eax, 0x40000000
je 0x480b45
mov edi, dword [sym.imp.USER32.dll_FlashWindow]
push 0
push esi
call edi
push 1
push esi
call edi
xor eax, eax
jmp 0x4814a4
push str.Done
push esi
call dword [sym.imp.USER32.dll_GetPropA]
test eax, eax
mov eax, dword [0x4f7748]
je 0x480b6a
cmp eax, 8
jne case.0x480b1a.3
test eax, eax
je 0x480b7d
cmp eax, 1
je 0x480b7d
cmp eax, 2
je 0x480b7d
cmp eax, 8
jne 0x480bfa
lea ecx, [esp + 0x220]
push ecx
push esi
call dword [sym.imp.USER32.dll_BeginPaint]
mov edx, dword [0x4f67cc]
mov ecx, dword [0x4f67d4]
push esi
push 0
mov edi, eax
mov eax, dword [0x4f67c8]
push edi
push 0
push edx
mov edx, dword [0x4f67d0]
push eax
push ecx
push edx
call fcn.0047fb60
cmp byte [0x4f67b5], 0
jne 0x480bc6
cmp dword [0x4f7748], 8
jne 0x480beb
mov eax, dword [0x4f67bc]
mov ecx, dword [0x4f67b8]
mov edx, dword [0x4f67c4]
push esi
push 1
push edi
push 1
push eax
mov eax, dword [0x4f67c0]
push ecx
push edx
push eax
call fcn.0047fb60
lea ecx, [esp + 0x220]
push ecx
push esi
call dword [sym.imp.USER32.dll_EndPaint]
xor eax, eax
jmp 0x4814a4
push str.Done
push esi
call dword [sym.imp.USER32.dll_GetPropA]
test eax, eax
je 0x480c1d
push esi
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp case.0x4810e0.3
cmp dword [0x4f7748], 0xb
je 0x480c60
call fcn.0049ef7d
sub eax, dword [0x4f6800]
cmp eax, 0xea60
jl 0x480c60
push 0x24
push 0x312
call fcn.0045b8f0
push eax
push 0x311
call fcn.0045b8f0
push eax
push esi
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 6
jne case.0x4810e0.3
mov dword [0x4dc178], 1
jmp case.0x4810e0.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 0x480cc0
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 + 0x4f6808], esi
je 0x480cb4
inc eax
cmp eax, 0x10
jb 0x480ca0
jmp 0x480d80
mov dword [eax*4 + 0x4f6808], edi
jmp 0x480d80
mov eax, dword [0x4f67a8]
mov edi, dword [sym.imp.GDI32.dll_DeleteObject]
push eax
call edi
mov ecx, dword [0x4f67a4]
push ecx
call edi
mov edx, dword [0x4f67a0]
push edx
call edi
mov eax, dword [0x4f679c]
push eax
call edi
mov ecx, dword [0x4f6798]
push ecx
call edi
mov edx, dword [0x4f6794]
push edx
call edi
mov eax, dword [0x4f6790]
push eax
call edi
mov ecx, dword [0x4f678c]
push ecx
call edi
mov edx, dword [0x4f6788]
push edx
call edi
mov eax, dword [0x4f6784]
push eax
call edi
mov ecx, dword [0x4f6780]
push ecx
call edi
xor edi, edi
cmp dword [0x4dc178], edi
jne 0x480d47
call fcn.0049ef7d
sub eax, dword [0x4f6800]
cmp eax, 0x2710
jle 0x480d47
push edi
call fcn.00444ca0
call fcn.0047f180
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 0x480d7a
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov dword [0x4f6804], edi
cmp dword [0x4dbc60], 1
je 0x480d9e
mov eax, dword [0x4dbd50]
cmp eax, edi
jne 0x480d97
mov eax, dword [0x4dfef0]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
xor eax, eax
jmp 0x4814a4
xor ebp, ebp
push ebp
push esi
call dword [sym.imp.USER32.dll_GetSystemMenu]
mov edi, eax
cmp edi, ebp
je 0x480dcf
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 [0x4f7748]
cmp eax, ebp
je 0x480df2
push ebp
push 0x70
push esi
call fcn.004217d0
push ebp
push 0xa3
push esi
call fcn.004217f0
mov eax, dword [0x4f7748]
cmp byte [0x4f67b5], 0
mov ebx, 1
jne 0x480e2d
cmp eax, ebx
je 0x480e09
cmp eax, 2
jne 0x480e2d
push ebp
push 0xa2
push esi
call fcn.004217f0
push ebp
push 0xa6
push esi
call fcn.004217f0
push ebp
push 0xa1
push esi
call fcn.004217f0
mov dword [0x4dc178], ebp
mov dword [0x4db840], ebp
mov dword [0x4dbd58], ebx
mov dword [0x4db83c], esi
mov dword [0x4e6958], ebp
cmp dword [0x4dbc60], ebx
je 0x480e67
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 [0x4f67a8], eax
call edi
push 0xeee8e8
push ebx
push ebp
mov dword [0x4f67a4], eax
call edi
push 0xffffff
push ebx
push ebp
mov dword [0x4f67a0], eax
call edi
push 0xc0ffff
push ebx
push ebp
mov dword [0x4f679c], eax
call edi
push 0xb4d4e4
push ebx
push ebp
mov dword [0x4f6798], eax
call edi
push 0x9494b4
push ebx
push ebp
mov dword [0x4f6794], eax
call edi
push 0x464040
push ebx
push ebp
mov dword [0x4f6790], eax
call edi
mov edi, dword [sym.imp.GDI32.dll_CreateSolidBrush]
push 0x6e6e94
mov dword [0x4f678c], eax
call edi
push 0xdcd6d6
mov dword [0x4f6788], eax
call edi
push 0xa0c0d0
mov dword [0x4f6784], eax
call edi
push ebx
push ebp
push 0x47c
push esi
mov dword [0x4f6780], eax
call dword [sym.imp.USER32.dll_PostMessageA]
xor eax, eax
cmp dword [0x4dbc60], ebx
setne al
jmp 0x4814a4
sub edi, 0x111
je 0x4810ca
sub edi, 0x36a
je 0x48100c
sub edi, 1
jne case.0x480b1a.3
mov eax, dword [0x4dc17c]
test eax, eax
je 0x481005
test ebx, ebx
setne byte [esp + 0x12]
cmp byte [0x4e6953], 0
jne 0x480f6e
push edi
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
xor eax, eax
jmp 0x4814a4
xor bl, bl
call fcn.0049ef7d
cmp dword [0x4dc178], 0
mov ebp, dword [sym.imp.USER32.dll_SetWindowTextA]
mov dword [esp + 0x14], eax
jne 0x480fe0
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 0x480fe0
test bl, bl
jne 0x480fca
push 0x480
lea edx, [esp + 0x264]
push edx
push esi
call edi
push 0x57d
call fcn.0045b8f0
push eax
push esi
call ebp
mov bl, 1
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.00445340
cmp dword [0x4dc178], 0
je 0x480f90
cmp byte [esp + 0x12], 0
je 0x480ff6
call fcn.0049ef7d
sub eax, dword [esp + 0x14]
push eax
call fcn.0047f6e0
test bl, bl
je 0x481005
lea eax, [esp + 0x260]
push eax
push esi
call ebp
xor eax, eax
jmp 0x4814a4
cmp ebx, 0x202
jne 0x481027
call fcn.0047f180
push 5
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
jmp case.0x4810e0.3
cmp ebx, 0x205
jne case.0x4810e0.3
call dword [sym.imp.USER32.dll_CreatePopupMenu]
push 0x2fe
mov edi, eax
call fcn.0045b8f0
mov ebx, dword [sym.imp.USER32.dll_AppendMenuA]
push eax
push 0x7c
push 0
push edi
call ebx
push 0x2ff
call fcn.0045b8f0
push eax
push 0x7d
push 0
push edi
call ebx
xor ecx, ecx
cmp byte [0x4f6778], cl
setne cl
add ecx, 0x300
push ecx
call fcn.0045b8f0
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.0x4810e0.3
movzx eax, bp
add eax, 0xfffffffe
cmp eax, 0x7c
ja case.0x4810e0.3
movzx edx, byte [eax + 0x481508]
jmp dword [edx*4 + 0x4814ec]
push 0
push 0
push 0x10
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x4810e0.3
push 0x1e8
lea eax, [esp + 0x3c]
push 0
push eax
call fcn.0049e680
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.0047e080
movzx edi, al
neg edi
sbb edi, edi
and edi, 0xfffffff9
add edi, 0x6c
mov eax, str.RAR.ico
cmp edi, 0x65
je 0x481164
mov eax, str.Tray.ico
push ebx
push ebp
push eax
mov ecx, 0x4e2970
call fcn.00466510
mov dword [0x4f774c], eax
test eax, eax
jne 0x481195
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 [0x4f774c], eax
mov dword [esp + 0x4c], eax
push 0
lea eax, [esp + 0x3c]
push eax
call fcn.0047f8c0
lea ecx, [esp + 0x38]
push ecx
push 0
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconA]
test eax, eax
je 0x4811ff
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.004903c0
mov eax, dword [0x4f67bc]
mov ecx, dword [0x4f67b8]
mov edx, dword [0x4f67c4]
push 0
push 0
push 0
push 1
push eax
mov eax, dword [0x4f67c0]
push ecx
push edx
push eax
call fcn.0047fb60
jmp case.0x4810e0.3
mov ecx, dword [0x4f774c]
push ecx
call dword [sym.imp.USER32.dll_DestroyIcon]
mov dword [0x4f774c], 0
jmp case.0x4810e0.3
cmp byte [0x4f6778], 0
jne 0x48126e
cmp dword [0x4db83c], 0
je case.0x4810e0.3
push 0xc8
push 0x4f7bd0
push 0x6f
push esi
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
push 0x480
push 0x4f7750
push esi
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov eax, dword [0x4dc17c]
test eax, eax
je 0x481265
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
cmp byte [0x4f6778], 0
je 0x481275
mov eax, 0x4f7bd0
jmp 0x48127f
push 0x49c
call fcn.0045b8f0
push eax
push 0x6f
push esi
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
cmp byte [0x4f6778], 0
je 0x481299
mov eax, 0x4f7750
jmp 0x4812a3
push 0x49d
call fcn.0045b8f0
push eax
push esi
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov al, byte [0x4f6778]
test al, al
push 0x1e8
mov byte [esp + 0x17], al
lea eax, [esp + 0x3c]
sete dl
push 0
push eax
mov byte [0x4f6778], dl
call fcn.0049e680
mov ecx, dword [0x4f67b0]
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.0047f8c0
lea eax, [esp + 0x38]
push eax
push 1
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconA]
cmp byte [0x4f6778], 0
mov byte [esp + 0x12], 0
je 0x481333
mov eax, dword [0x4f6804]
test eax, eax
je 0x481333
push eax
call dword [sym.imp.KERNEL32.dll_SuspendThread]
cmp eax, 0xffffffff
setne byte [esp + 0x12]
call fcn.0049ef7d
cmp byte [0x4f6778], 0
mov dword [esp + 0x14], eax
je 0x4813c1
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 0x4813c1
push 0
push 0
push 0
lea ecx, [esp + 0x28]
push ecx
call edi
test eax, eax
je 0x4813c1
lea edx, [esp + 0x1c]
push edx
push esi
call ebp
test eax, eax
jne 0x4813b8
cmp dword [esp + 0x20], 0x203
jne 0x4813a6
mov eax, dword [esp + 0x1c]
cmp eax, dword [0x4e2e90]
jne 0x4813a6
mov ecx, dword [0x4dc1c8]
push ecx
mov ecx, 0x4e2e90
call fcn.0046ae10
jmp 0x4813b8
lea edx, [esp + 0x1c]
push edx
call ebx
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
cmp byte [0x4f6778], 0
jne 0x481357
call fcn.0049ef7d
sub eax, dword [esp + 0x14]
add dword [0x4f6800], eax
cmp byte [esp + 0x13], 0
je 0x4813e7
push 0
push 0
push 0x47c
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
cmp byte [esp + 0x12], 0
je case.0x4810e0.3
mov ecx, dword [0x4f6804]
push ecx
call dword [sym.imp.KERNEL32.dll_ResumeThread]
jmp case.0x4810e0.3
call fcn.0049ef7d
mov edx, dword [0x4c9360]
mov edi, dword [0x4e5758]
push 0
push 0x47f740
push esi
push str.CMDMODE
push edx
mov ebx, eax
call dword [sym.imp.USER32.dll_DialogBoxParamA]
test eax, eax
je 0x48146b
mov eax, dword [0x4e5758]
cmp eax, edi
je 0x48146b
test eax, eax
je 0x48146b
cmp dword [0x4e614c], 0
jne 0x481465
mov ecx, dword [0x4e6958]
test ecx, ecx
je 0x48146b
dec eax
push eax
call fcn.00447410
call fcn.0049ef7d
sub eax, ebx
add dword [0x4f6800], eax
jmp case.0x4810e0.3
push eax
call fcn.004215c0
call fcn.0049ef7d
sub eax, ebx
add dword [0x4f6800], eax
jmp case.0x4810e0.3
push 0x202
push 0
push 0x47b
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x4810e0.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.0049e0c6
add esp, 0x6d4
ret 0x10