Function at 0x4827e0
Capabilities:
Move file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5146f7
mov eax, dword fs:[0]
push eax
sub esp, 0xd8
push ebx
push esi
push edi
mov eax, dword [0x57b728]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
cmp byte [ebx + 0xd4], 0
mov esi, dword [ebp + 0x10]
jne 0x482900
cmp esi, 0x66
je 0x48282b
cmp esi, 0x68
jne 0x482900
lea eax, [ebx + 0xb0]
push eax
lea ecx, [ebp - 0x30]
call fcn.00417c60
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x30]
cmp esi, 0x66
jne 0x48286c
cmp dword [0x57604c], 0x5280ec
mov edi, str.DDS_Files
jne 0x482861
call fcn.00419670
jmp 0x482892
push 0
push 0xffffffffffffffff
push 0x5280ec
jmp 0x48288d
cmp dword [0x57604c], 0x5280d4
mov edi, str.3DO_Files
jne 0x482884
call fcn.00419670
jmp 0x482892
push 0
push 0xffffffffffffffff
push 0x5280d4
call fcn.00418a80
push 1
push 0
push edi
lea eax, [ebp - 0x30]
push eax
push dword [ebx + 0x14]
call fcn.004dcf30
add esp, 0x14
test al, al
je 0x4828db
push dword [ebp - 0x2c]
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameA]
mov edi, eax
push edi
cmp esi, 0x66
jne 0x4828cc
mov edx, dword [ebx + 0xd8]
lea ecx, [ebx + 0xd8]
call dword [edx + 0x28]
jmp 0x4828db
mov eax, dword [ebx + 0xe4]
lea ecx, [ebx + 0xe4]
call dword [eax + 0x28]
lea ecx, [ebp - 0x30]
mov dword [ebp - 4], 0xffffffff
call fcn.00417dd0
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp esi, 0x6e
jne 0x482989
mov eax, dword [ebx + 0x178]
lea ecx, [ebx + 0x178]
mov eax, dword [eax + 0x3c]
call eax
test al, al
mov eax, dword [ebx + 0x178]
sete byte [ebp + 0x10]
mov edi, dword [ebp + 0x10]
push edi
lea ecx, [ebx + 0x178]
call dword [eax + 0x38]
mov eax, dword [ebx + 0x184]
lea ecx, [ebx + 0x184]
push edi
call dword [eax + 0x10]
mov eax, dword [ebx + 0x194]
lea ecx, [ebx + 0x194]
push edi
call dword [eax + 0x10]
mov eax, dword [ebx + 0x1a0]
lea ecx, [ebx + 0x1a0]
push edi
call dword [eax + 0x10]
mov eax, dword [ebx + 0x1ac]
lea ecx, [ebx + 0x1ac]
push edi
call dword [eax + 0x10]
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp esi, 0x78
jne 0x482b77
mov eax, dword [ebx + 0xd8]
lea ecx, [ebx + 0xd8]
lea edx, [ebp - 0x54]
push edx
call dword [eax + 0x34]
push 0x5239fc
lea ecx, [ebp - 0x54]
mov dword [ebp - 4], 1
call fcn.004190d0
test al, al
je 0x482a66
push 0x5280ec
lea esi, [ebx + 0xb0]
lea eax, [ebp - 0x78]
push esi
push eax
call fcn.00414830
lea ecx, [ebp - 0x54]
push ecx
push eax
lea eax, [ebp - 0xc0]
push eax
mov byte [ebp - 4], 2
call fcn.004147b0
mov edi, eax
push 0x5280ec
lea eax, [ebp - 0x9c]
push esi
push eax
mov byte [ebp - 4], 3
call fcn.00414830
mov ecx, dword [ebx + 0xac]
add ecx, 0x3c
push ecx
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 4
call fcn.004147b0
push dword [edi + 4]
push dword [eax + 4]
call fcn.004f38ac
add esp, 0x38
lea ecx, [ebp - 0x30]
call fcn.00417dd0
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 3
call fcn.00417dd0
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 2
call fcn.00417dd0
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 1
call fcn.00417dd0
push 0
push dword [ebx + 0x7c]
call dword [sym.imp.USER32.dll_EnableWindow]
mov eax, dword [ebx + 0xe4]
lea ecx, [ebx + 0xe4]
lea edx, [ebp - 0x78]
push edx
call dword [eax + 0x34]
push eax
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 5
call fcn.00417e10
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 1
call fcn.00417dd0
push str..3do
lea ecx, [ebp - 0x54]
call fcn.004190d0
test al, al
je 0x482b52
push 0x5280d4
lea esi, [ebx + 0xb0]
lea eax, [ebp - 0xe4]
push esi
push eax
call fcn.00414830
lea ecx, [ebp - 0x54]
push ecx
push eax
lea eax, [ebp - 0x9c]
push eax
mov byte [ebp - 4], 6
call fcn.004147b0
mov edi, eax
push 0x5280d4
lea eax, [ebp - 0xc0]
push esi
push eax
mov byte [ebp - 4], 7
call fcn.00414830
mov ecx, dword [ebx + 0xac]
add ecx, 0x60
push ecx
push eax
lea eax, [ebp - 0x78]
push eax
mov byte [ebp - 4], 8
call fcn.004147b0
push dword [edi + 4]
push dword [eax + 4]
call fcn.004f38ac
add esp, 0x38
lea ecx, [ebp - 0x78]
call fcn.00417dd0
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 7
call fcn.00417dd0
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 6
call fcn.00417dd0
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 1
call fcn.00417dd0
push 0
push dword [ebx + 0x7c]
call dword [sym.imp.USER32.dll_EnableWindow]
lea ecx, [ebp - 0x54]
mov dword [ebp - 4], 0xffffffff
call fcn.00417dd0
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push esi
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004de480
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc