Function at 0x3002ed72
Capabilities:
Move file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x468
mov eax, dword [0x3002226c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov edi, dword [ebp + 8]
xor esi, esi
push 0x206
lea eax, [ebp - 0x44e]
push esi
push eax
mov dword [ebp - 0x460], edi
mov word [ebp - 0x450], si
call sub.MSVCR80.dll_memset
push 0x244
lea eax, [ebp - 0x248]
push esi
push eax
call sub.MSVCR80.dll_memset
add esp, 0x18
cmp edi, esi
mov dword [ebp - 0x464], esi
mov dword [ebp - 0x454], esi
je 0x3002f011
cmp dword [edi + 0x21c], esi
je 0x3002f011
cmp ebx, esi
je 0x3002f011
cmp dword [ebx + 0x21c], esi
je 0x3002f011
push 1
lea eax, [ebp - 0x454]
push eax
push ebx
call fcn.3002e4b7
test eax, eax
je 0x3002f01c
push dword [ebp - 0x454]
push ebx
call fcn.3002e584
test eax, eax
push dword [ebp - 0x454]
jne 0x3002ee30
call dword [sym.imp.KERNEL32.dll_LocalFree]
jmp 0x3002f01c
call dword [sym.imp.KERNEL32.dll_LocalFree]
push edi
call fcn.3002c73d
test eax, eax
je 0x3002f01c
push ebx
call fcn.3002c73d
test eax, eax
je 0x3002efe7
mov eax, dword [edi + 0x21c]
cmp dword [eax], esi
mov dword [ebp - 0x45c], esi
jbe 0x3002efe7
mov dword [ebp - 0x458], esi
mov ecx, dword [ebx + 0x21c]
mov ecx, dword [ecx]
cmp ecx, dword [ebx + 4]
jae 0x3002efc4
mov esi, dword [eax + 0xc]
add esi, dword [ebp - 0x458]
push esi
call fcn.3003dc93
cmp word [eax], 0x5c
jne 0x3002ee94
inc eax
inc eax
push eax
lea edi, [ebx + 0xc]
push edi
push 0x30003b94
lea eax, [ebp - 0x450]
push 0x104
push eax
call dword [sym.imp.MSVCR80.dll_swprintf_s]
lea eax, [esi + 0x208]
add esp, 0x14
push eax
mov dword [ebp - 0x468], eax
call fcn.3003dc93
cmp word [eax], 0x5c
jne 0x3002eecd
inc eax
inc eax
push eax
push edi
push 0x30003b94
lea eax, [ebp - 0x248]
push 0x104
push eax
call dword [sym.imp.MSVCR80.dll_swprintf_s]
mov ecx, dword [ebx + 0x21c]
add esp, 0x14
lea eax, [ebp - 0x450]
push eax
call fcn.300403e0
test eax, eax
je 0x3002efd4
lea eax, [ebp - 0x450]
push eax
push esi
mov esi, dword [sym.imp.KERNEL32.dll_MoveFileW]
call esi
test eax, eax
jne 0x3002ef43
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
call fcn.3003daba
test eax, eax
je 0x3002ef35
push esi
push 0x30003b5c
call fcn.3003dbd9
pop ecx
pop ecx
push 0
push 0x30303030
call fcn.30043574
jmp 0x3002ef98
lea eax, [ebp - 0x248]
push eax
push dword [ebp - 0x468]
call esi
test eax, eax
jne 0x3002ef8e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
call fcn.3003daba
test eax, eax
je 0x3002ef74
push esi
push 0x30003b20
call fcn.3003dbd9
pop ecx
pop ecx
push 0
push 0x30303030
call fcn.30043574
lea eax, [ebp - 0x450]
push eax
call fcn.3003d1cf
jmp 0x3002ef98
mov dword [ebp - 0x464], 1
inc dword [ebp - 0x45c]
mov eax, dword [ebp - 0x460]
mov eax, dword [eax + 0x21c]
mov ecx, dword [ebp - 0x45c]
add dword [ebp - 0x458], 0x44c
cmp ecx, dword [eax]
jb 0x3002ee6c
jmp 0x3002efe7
call fcn.3003daba
test eax, eax
je 0x3002efe7
push 0x30003af0
jmp 0x3002efe2
call fcn.3003daba
test eax, eax
je 0x3002efe7
push 0x30003ab4
call fcn.3003db54
push dword [ebx + 0x214]
mov esi, dword [sym.imp.KERNEL32.dll_ReleaseMutex]
call esi
mov edi, dword [ebp - 0x460]
push dword [edi + 0x214]
call esi
push edi
call fcn.3002e7d8
mov eax, dword [ebp - 0x464]
jmp 0x3002f01e
push esi
push 0x30303030
call fcn.30043574
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.300696c7
leave
ret 8