Function at 0x4cc2b0
Capabilities:
Get graphical window text
Read .ini file

Disassembly:
sub esp, 0xff8
mov eax, dword [esp + 0x1000]
push ebx
push ebp
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push edi
xor edi, edi
xor ebx, ebx
cmp eax, edi
mov dword [esp + 0x14], edi
jne 0x4cc3ab
mov ebp, dword [esp + 0x1018]
push 0x5b9260
cmp ebp, edi
push 1
je 0x4cc2f0
push str.AskMove
jmp 0x4cc2f5
push str.AskCopy
push str.Copy_Move
call esi
cmp eax, edi
je 0x4cc365
mov eax, dword [esp + 0x1014]
lea ecx, [esp + 0x290]
push ecx
push 0x45bd70
mov dword [esp + 0x298], ebp
mov word [esp + 0x29c], di
mov dword [esp + 0x4a4], eax
call dword [sym.imp.USER32.dll_GetActiveWindow]
mov edx, dword [0x5b5574]
push eax
push 0x3f8
push edx
call dword [sym.imp.USER32.dll_DialogBoxParamW]
cmp eax, 1
jne 0x4cc7d5
lea eax, [esp + 0x294]
lea ecx, [esp + 0x48]
push eax
push ecx
call fcn.004d631b
mov ebx, 1
jmp 0x4cc3bd
push 0x5b9260
cmp ebp, edi
push 0x104
je 0x4cc38f
lea edx, [esp + 0x50]
push edx
push 0x5aae60
push str.MoveDir
push str.Copy_Move
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x4cc3c0
lea eax, [esp + 0x50]
push eax
push 0x5aae60
push str.CopyDir
push str.Copy_Move
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
jmp 0x4cc3c0
lea ecx, [esp + 0x48]
push eax
push ecx
call fcn.004d631b
mov ebp, dword [esp + 0x1020]
add esp, 8
lea edx, [esp + 0x48]
push edx
call fcn.004d6713
add esp, 4
test eax, eax
je 0x4cc7d5
lea eax, [esp + 0x48]
push eax
call fcn.004d6713
add esp, 4
cmp eax, 0x104
ja 0x4cc7d5
lea ecx, [esp + 0x48]
push ecx
call fcn.004c7a80
add esp, 4
cmp ebp, edi
push 0x5b9260
push 1
je 0x4cc417
push str.MoveReplace
push str.Copy_Move
call esi
mov dword [esp + 0x10], eax
jmp 0x4cc441
push str.CopyReplace
push str.Copy_Move
call esi
cmp ebx, edi
mov dword [esp + 0x10], eax
je 0x4cc441
push 0x5b9260
push edi
push str.Shortcut
push str.Copy_Move
call esi
mov dword [esp + 0x14], eax
push 0x5b9260
push edi
push str.DelSideCars
push str.Others
call esi
mov ebx, eax
mov eax, dword [esp + 0x1014]
cmp eax, 1
mov dword [esp + 0x24], ebx
mov dword [esp + 0x18], edi
jne 0x4cc552
mov esi, dword [esp + 0x100c]
lea edx, [esp + 0x4a0]
push 0xc
push edx
push esi
call fcn.004c93e0
lea eax, [esp + 0x4ac]
lea ecx, [esp + 0x54]
push eax
push ecx
lea edx, [esp + 0x7fc]
push str._s_s
push edx
call fcn.004d5ee1
mov ebp, dword [sym.imp.USER32.dll_LoadCursorW]
add esp, 0x1c
push 0x7f02
push edi
call ebp
mov edi, dword [sym.imp.USER32.dll_SetCursor]
push eax
call edi
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x18]
push eax
mov eax, dword [esp + 0x101c]
push 1
push ecx
push edx
push 1
lea ecx, [esp + 0x7fc]
push eax
push ecx
push esi
call fcn.004cbf10
add esp, 0x20
mov dword [esp + 0x1c], eax
test ebx, ebx
je 0x4cc537
mov eax, dword [esp + 0x18]
cmp eax, 1
je 0x4cc537
cmp eax, 5
je 0x4cc537
cmp eax, 3
jne 0x4cc50c
mov dword [esp + 0x10], 0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1018]
push eax
mov eax, dword [esp + 0x14]
push edx
push eax
push ecx
lea edx, [esp + 0x7f8]
push 1
lea eax, [esp + 0x5c]
push edx
push eax
push esi
call fcn.004cc140
add esp, 0x20
push 0x7f00
push 0
call ebp
push eax
call edi
mov eax, dword [esp + 0x1c]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xff8
ret
mov ebx, dword [esp + 0x101c]
lea ecx, [esp + 0x290]
push 0x104
push ecx
push ebx
call dword [sym.imp.USER32.dll_GetWindowTextW]
mov eax, dword [0x5b5574]
lea edx, [esp + 0x6e8]
push 0x80
push edx
push 0x4e4
push eax
call dword [sym.imp.USER32.dll_LoadStringW]
mov ecx, dword [esp + 0x100c]
push ecx
call fcn.004d6713
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x1018]
add esp, 4
xor esi, esi
xor ebp, ebp
cmp eax, edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], esi
jle 0x4cc7b6
mov ecx, 0x104
xor eax, eax
lea edi, [esp + 0xbf8]
xor edx, edx
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x28]
cmp esi, ecx
jge 0x4cc5fa
mov eax, dword [esp + 0x100c]
mov ax, word [eax + esi*2]
cmp ax, 0x7c
je 0x4cc5f5
mov word [esp + edx*2 + 0xbf8], ax
inc edx
inc esi
cmp esi, ecx
jl 0x4cc5d4
jmp 0x4cc5f6
inc esi
mov dword [esp + 0x20], esi
mov word [esp + edx*2 + 0xbf8], 0
lea ecx, [esp + 0x4a0]
push 0xc
lea edx, [esp + 0xbfc]
push ecx
push edx
inc ebp
call fcn.004c93e0
lea eax, [esp + 0x4ac]
lea ecx, [esp + 0x54]
push eax
push ecx
lea edx, [esp + 0x7fc]
push str._s_s
push edx
call fcn.004d5ee1
mov esi, dword [esp + 0x1030]
lea eax, [esp + 0x704]
push esi
push ebp
push eax
lea ecx, [esp + 0x4c8]
push str._s__d____d
push ecx
call fcn.004d5ee1
add esp, 0x30
lea edx, [esp + 0x4a0]
push edx
push ebx
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x7f02
push 0
call dword [sym.imp.USER32.dll_LoadCursorW]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x18]
push eax
mov eax, dword [esp + 0x101c]
push esi
push ecx
push edx
push 1
lea ecx, [esp + 0x7fc]
push eax
lea edx, [esp + 0xc10]
push ecx
push edx
call fcn.004cbf10
mov esi, dword [esp + 0x38]
mov edi, eax
mov eax, dword [esp + 0x44]
add esp, 0x20
test eax, eax
je 0x4cc70c
cmp esi, 1
je 0x4cc70c
cmp esi, 5
je 0x4cc70c
mov eax, dword [esp + 0x10]
cmp esi, 3
je 0x4cc6dc
cmp esi, 4
jne 0x4cc6de
xor eax, eax
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1018]
push esi
push ecx
push eax
push edx
lea eax, [esp + 0x7f8]
push 1
lea ecx, [esp + 0x5c]
push eax
lea edx, [esp + 0xc10]
push ecx
push edx
call fcn.004cc140
add esp, 0x20
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorW]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
cmp esi, 5
je 0x4cc7b6
test edi, edi
je 0x4cc7b6
mov esi, dword [sym.imp.USER32.dll_PeekMessageW]
push 1
push 0
push 0
lea eax, [esp + 0x38]
push ebx
push eax
call esi
test eax, eax
je 0x4cc778
cmp dword [esp + 0x34], 0x1b
je 0x4cc797
lea ecx, [esp + 0x2c]
push ecx
call dword [sym.imp.USER32.dll_TranslateMessage]
lea edx, [esp + 0x2c]
push edx
call dword [sym.imp.USER32.dll_DispatchMessageW]
push 1
push 0
push 0
lea eax, [esp + 0x38]
push ebx
push eax
call esi
test eax, eax
jne 0x4cc749
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1014]
inc eax
cmp eax, ecx
mov dword [esp + 0x1c], eax
jge 0x4cc7b6
mov esi, dword [esp + 0x20]
xor edi, edi
jmp 0x4cc5ba
push 0x40
call dword [sym.imp.USER32.dll_MessageBeep]
push str.aborted_...
push ebx
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [esp + 0x290]
push ecx
push ebx
call dword [sym.imp.USER32.dll_SetWindowTextW]
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xff8
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xff8
ret