Function at 0x4c4a24
Capabilities:
Delete file

Disassembly:
mov eax, 0x4efb83
call fcn.004ebd20
sub esp, 0x484
mov eax, dword [0x517ad4]
push esi
xor eax, ebp
push edi
mov edi, ecx
mov esi, dword [edi + 0x4c]
mov edx, dword [edi + 0x48]
mov ecx, dword [edi + 8]
mov dword [ebp - 0x10], eax
mov eax, dword [edi + 0xc]
cmp esi, eax
mov dword [ebp - 0x488], edi
mov dword [ebp - 0x48c], esi
ja 0x4c4a7d
jb 0x4c4a64
cmp edx, ecx
jae 0x4c4a7d
sub ecx, edx
sbb eax, esi
xor edx, edx
cmp eax, edx
jb 0x4c4a7d
ja 0x4c4a75
cmp ecx, dword [ebp + 8]
jbe 0x4c4a7d
xor eax, eax
inc eax
jmp 0x4c4d51
xor eax, eax
push ebx
mov word [ebp - 0x1c], 0x5c
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov word [ebp - 0x224], ax
mov dword [ebp - 4], eax
push str..tmp
lea eax, [edi + 0x10]
push eax
lea eax, [ebp - 0x47c]
push eax
call fcn.004032df
mov eax, dword [eax]
lea ebx, [ebp - 0x474]
call fcn.0040e026
mov esi, eax
mov eax, dword [ebp - 0x47c]
add eax, 0xfffffff4
cmp eax, dword [0x51b43c]
je 0x4c4ad1
push eax
call fcn.004013b2
test esi, esi
je 0x4c4b15
lea eax, [ebp - 0x47c]
push eax
lea eax, [ebp - 0x474]
call fcn.0040df92
push dword [eax]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [ebp - 0x47c]
add eax, 0xfffffff4
cmp eax, dword [0x51b43c]
je 0x4c4b06
push eax
call fcn.004013b2
lea eax, [ebp - 0x474]
call fcn.0040e0dc
test eax, eax
jne 0x4c4ad5
mov eax, dword [edi + 0x3c]
dec eax
mov dword [ebp - 0x478], eax
js 0x4c4c0e
lea eax, [edi + 0x38]
mov dword [ebp - 0x484], eax
mov eax, dword [ebp - 0x478]
mov ecx, dword [ebp - 0x484]
call fcn.0045d61b
mov eax, dword [eax]
lea ecx, [eax + 8]
lea esi, [ebp - 0x47c]
call fcn.0040306f
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x47c]
lea ebx, [ebp - 0x474]
call fcn.0040e026
test eax, eax
je 0x4c4ba3
mov ecx, ebx
call fcn.0043bf71
mov esi, dword [ebp - 0x484]
mov edi, eax
mov eax, dword [ebp - 0x478]
call fcn.004c3bea
mov eax, dword [ebp - 0x478]
mov ecx, esi
call fcn.0045d61b
mov eax, dword [eax]
lea ecx, [eax + 0x14]
mov eax, ebx
call fcn.004c3b31
mov edi, dword [ebp - 0x488]
jmp 0x4c4be7
push dword [ebp - 0x47c]
lea eax, [ebp - 0x48c]
push eax
call fcn.004c4883
push eax
lea eax, [edi + 0x50]
push eax
call fcn.004c557b
mov eax, dword [ebp - 0x48c]
add eax, 0xfffffff4
cmp eax, dword [0x51b43c]
je 0x4c4bd6
push eax
call fcn.004013b2
push dword [ebp - 0x478]
mov eax, dword [ebp - 0x484]
call fcn.004c3bc1
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x47c]
add eax, 0xfffffff4
cmp eax, dword [0x51b43c]
je 0x4c4c02
push eax
call fcn.004013b2
dec dword [ebp - 0x478]
jns 0x4c4b2e
mov esi, dword [edi + 0x4c]
mov eax, dword [edi + 0xc]
cmp esi, eax
mov edx, dword [edi + 0x48]
mov ecx, dword [edi + 8]
ja 0x4c4c3f
jb 0x4c4c26
mov ebx, edx
cmp ebx, ecx
jae 0x4c4c3f
sub ecx, edx
sbb eax, esi
xor edx, edx
cmp eax, edx
jb 0x4c4c3f
ja 0x4c4c37
cmp ecx, dword [ebp + 8]
jbe 0x4c4c3f
xor esi, esi
inc esi
jmp 0x4c4d43
lea ecx, [edi + 0x38]
call fcn.004c3c0e
mov eax, dword [edi + 0x3c]
mov edx, dword [ebp + 8]
mov ecx, dword [edi + 0x4c]
lea ebx, [eax - 1]
mov eax, dword [edi + 0x48]
add edx, 0x1400000
xor esi, esi
add eax, edx
adc ecx, esi
cmp ecx, dword [edi + 0xc]
mov dword [ebp - 0x480], edx
jb 0x4c4d23
ja 0x4c4c7c
cmp eax, dword [edi + 8]
jbe 0x4c4d23
test ebx, ebx
jl 0x4c4d23
mov eax, ebx
lea ecx, [edi + 0x38]
call fcn.0045d61b
mov eax, dword [eax]
lea ecx, [eax + 8]
lea esi, [ebp - 0x48c]
call fcn.0040306f
mov byte [ebp - 4], 2
mov esi, dword [ebp - 0x48c]
push esi
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
je 0x4c4cea
push esi
lea eax, [ebp - 0x488]
push eax
call fcn.004c4883
push eax
lea eax, [edi + 0x50]
push eax
call fcn.004c557b
mov eax, dword [ebp - 0x488]
add eax, 0xfffffff4
cmp eax, dword [0x51b43c]
je 0x4c4ce1
push eax
call fcn.004013b2
push ebx
lea eax, [edi + 0x38]
call fcn.004c3bc1
lea eax, [esi - 0xc]
dec ebx
mov byte [ebp - 4], 0
cmp eax, dword [0x51b43c]
je 0x4c4d00
push eax
call fcn.004013b2
mov ecx, dword [ebp - 0x480]
add ecx, dword [edi + 0x48]
push 0
pop eax
adc eax, dword [edi + 0x4c]
cmp eax, dword [edi + 0xc]
ja 0x4c4c7c
jb 0x4c4d23
cmp ecx, dword [edi + 8]
ja 0x4c4c7c
mov ecx, dword [ebp + 8]
xor eax, eax
add ecx, dword [edi + 0x48]
adc eax, dword [edi + 0x4c]
cmp eax, dword [edi + 0xc]
ja 0x4c4d3f
jb 0x4c4d3a
cmp ecx, dword [edi + 8]
jae 0x4c4d3f
xor eax, eax
inc eax
jmp 0x4c4d41
xor eax, eax
mov esi, eax
lea eax, [ebp - 0x474]
call fcn.0040e105
mov eax, esi
pop ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
pop edi
xor ecx, ebp
pop esi
call fcn.004ebd70
leave
ret 4