Function at 0x4fb51a
Capabilities:
Delete file
Move file

Disassembly:
mov eax, 0x6b2c09
call fcn.00664608
sub esp, 0x60
mov al, byte [ebp + 0x18]
push ebx
push esi
push edi
xor al, 1
movzx eax, al
push eax
push dword [ebp + 0xc]
lea eax, [ebp - 0x3c]
push dword [ebp + 0x10]
push eax
call fcn.00451589
push dword [ebp + 0x18]
mov esi, dword [ebp + 8]
lea eax, [ebp - 0x54]
push esi
push dword [ebp + 0x14]
xor ebx, ebx
push eax
mov dword [ebp - 4], ebx
call fcn.00451589
xor eax, eax
mov dword [ebp - 0x24], ebx
mov edi, ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
inc ebx
mov byte [ebp - 4], 2
cmp dword [ebp - 0x28], 8
lea eax, [ebp - 0x3c]
mov dword [ebp + 0x14], ebx
jb 0x4fb583
mov eax, dword [ebp - 0x3c]
push eax
call fcn.0045270f
test al, al
jne 0x4fb5e9
push dword [ebp + 0x18]
lea eax, [ebp - 0x6c]
push dword [ebp + 0xc]
push dword [ebp + 0x10]
push eax
call fcn.00451589
lea ecx, [ebp - 0x3c]
cmp ecx, eax
je 0x4fb5b3
mov byte [ebp + 0x18], 0
push dword [ebp + 0x18]
push eax
call fcn.00427ad3
lea ecx, [ebp - 0x6c]
call fcn.00427afc
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x3c]
call fcn.00436ddd
test al, al
jne 0x4fb6ab
cmp dword [ebp - 0x28], 8
lea eax, [ebp - 0x3c]
jb 0x4fb5db
mov eax, dword [ebp - 0x3c]
push eax
call fcn.0045270f
test al, al
je 0x4fb6ab
cmp dword [ebp - 0x28], 8
lea eax, [ebp - 0x3c]
jb 0x4fb5f5
mov eax, dword [ebp - 0x3c]
push ebx
push eax
lea eax, [ebp - 0x6c]
push str._s._d
push eax
call fcn.004577f2
add esp, 0x10
cmp dword [eax + 0x14], 8
mov ecx, eax
mov byte [ebp - 4], 3
jb 0x4fb616
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x24]
call fcn.00427b45
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 2
call fcn.00427afc
cmp dword [ebp - 0x10], 8
lea eax, [ebp - 0x24]
jb 0x4fb63a
mov eax, dword [ebp - 0x24]
push eax
call fcn.0045270f
test al, al
jne 0x4fb67b
cmp dword [ebp - 0x10], 8
lea eax, [ebp - 0x24]
jb 0x4fb650
mov eax, dword [ebp - 0x24]
cmp dword [esi + 0x14], 8
mov ebx, esi
jb 0x4fb65a
mov ebx, dword [esi]
push eax
call fcn.004517b0
push ebx
mov esi, eax
call fcn.004517b0
push esi
push eax
call fcn.00673939
pop ecx
pop ecx
test eax, eax
jne 0x4fb684
mov esi, dword [ebp + 8]
mov ebx, dword [ebp + 0x14]
inc ebx
mov dword [ebp + 0x14], ebx
jmp 0x4fb5e9
push 8
pop esi
lea ecx, [ebp - 0x24]
cmp dword [ebp - 0x10], esi
jb 0x4fb692
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], esi
jb 0x4fb69d
mov eax, dword [ebp - 0x3c]
mov ebx, dword [sym.imp.KERNEL32.DLL_MoveFileW]
push ecx
push eax
call ebx
test eax, eax
jne 0x4fb6b2
xor edi, edi
jmp 0x4fb7fb
cmp byte [ebp + 0x1c], 0
je 0x4fb70a
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], esi
jb 0x4fb6c3
mov eax, dword [ebp - 0x54]
push eax
call fcn.0045270f
test al, al
je 0x4fb70a
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], esi
jb 0x4fb6d8
mov eax, dword [ebp - 0x54]
push eax
call dword [sym.imp.KERNEL32.DLL_DeleteFileW]
test eax, eax
jne 0x4fb70a
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], esi
jb 0x4fb6ee
mov eax, dword [ebp - 0x3c]
lea ecx, [ebp - 0x24]
cmp dword [ebp - 0x10], esi
jb 0x4fb6f9
mov ecx, dword [ebp - 0x24]
push eax
push ecx
call ebx
call dword [sym.imp.KERNEL32.DLL_GetLastError]
mov edi, eax
jmp 0x4fb7fb
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], esi
jb 0x4fb715
mov eax, dword [ebp - 0x54]
mov esi, dword [ebp - 0x28]
lea ecx, [ebp - 0x3c]
mov edx, dword [ebp - 0x3c]
cmp esi, 8
jb 0x4fb725
mov ecx, edx
mov bx, word [ecx]
cmp bx, word [eax]
mov ebx, dword [sym.imp.KERNEL32.DLL_MoveFileW]
jne 0x4fb75e
cmp word [ecx], 0
je 0x4fb75a
mov bx, word [ecx + 2]
cmp bx, word [eax + 2]
mov word [ebp + 0x1e], bx
mov ebx, dword [sym.imp.KERNEL32.DLL_MoveFileW]
jne 0x4fb75e
add ecx, 4
add eax, 4
cmp word [ebp + 0x1e], 0
jne 0x4fb725
xor eax, eax
jmp 0x4fb763
sbb eax, eax
or eax, 1
test eax, eax
je 0x4fb7e1
cmp dword [ebp - 0x40], 8
lea ecx, [ebp - 0x54]
jb 0x4fb773
mov ecx, dword [ebp - 0x54]
cmp dword [ebp - 0x10], 8
lea eax, [ebp - 0x24]
jb 0x4fb77f
mov eax, dword [ebp - 0x24]
push ecx
push eax
call ebx
test eax, eax
jne 0x4fb7fb
mov esi, dword [sym.imp.KERNEL32.DLL_GetLastError]
call esi
mov edi, eax
cmp edi, 3
je 0x4fb79b
cmp edi, 2
jne 0x4fb7d7
xor edi, edi
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], 8
jb 0x4fb7a9
mov eax, dword [ebp - 0x54]
push eax
call fcn.00453a60
test al, al
je 0x4fb7d3
cmp dword [ebp - 0x40], 8
lea eax, [ebp - 0x54]
jb 0x4fb7bf
mov eax, dword [ebp - 0x54]
cmp dword [ebp - 0x10], 8
lea ecx, [ebp - 0x24]
jb 0x4fb7cb
mov ecx, dword [ebp - 0x24]
push eax
push ecx
call ebx
test eax, eax
jne 0x4fb7fb
call esi
mov edi, eax
test edi, edi
je 0x4fb7fb
mov esi, dword [ebp - 0x28]
mov edx, dword [ebp - 0x3c]
lea ecx, [ebp - 0x3c]
cmp esi, 8
jb 0x4fb7eb
mov ecx, edx
cmp dword [ebp - 0x10], 8
lea eax, [ebp - 0x24]
jb 0x4fb7f7
mov eax, dword [ebp - 0x24]
push ecx
push eax
call ebx
mov eax, dword [ebp - 0x10]
cmp eax, 8
jb 0x4fb836
mov ecx, dword [ebp - 0x24]
lea eax, [eax*2 + 2]
mov dword [ebp + 0x1c], eax
mov dword [ebp + 0x18], ecx
cmp eax, 0x1000
jb 0x4fb82d
lea eax, [ebp + 0x1c]
push eax
lea eax, [ebp + 0x18]
push eax
call fcn.004279ae
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x18]
push eax
push ecx
call fcn.006643a9
pop ecx
pop ecx
and dword [ebp - 0x14], 0
lea ecx, [ebp - 0x54]
xor eax, eax
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
call fcn.00427afc
lea ecx, [ebp - 0x3c]
call fcn.00427afc
mov ecx, dword [ebp - 0xc]
mov eax, edi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 0x18