Function at 0x405575
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8e0
mov eax, dword [0x41c0b0]
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
call fcn.00406b1f
test eax, eax
je 0x4058d0
push ebx
push esi
push edi
push dword [ebp + 0xc]
lea edi, [ebp - 0x8d0]
call fcn.004052ab
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 4]
push dword [ebp - 0x8d0]
push eax
call fcn.0040ed6b
test eax, eax
pop ecx
pop ecx
je 0x4055ea
lea ecx, [ebx + 8]
or eax, 0xffffffff
xor edi, edi
call fcn.00405f76
lea eax, [ebx + 0x30]
call fcn.00405ce0
lea esi, [ebx + 0x18]
call fcn.00406b42
lea edi, [ebp - 0x8d0]
lea eax, [ebx + 4]
call fcn.00401d75
mov edx, dword [ebx + 0x2c]
cmp edx, dword [ebp + 0x14]
mov eax, dword [ebx + 0x28]
ja 0x405632
jb 0x4055fc
cmp eax, dword [ebp + 0x10]
jae 0x405632
mov ecx, dword [ebp + 0x10]
sub ecx, eax
mov eax, dword [ebp + 0x14]
sbb eax, edx
xor edx, edx
cmp eax, edx
jb 0x405632
ja 0x405613
cmp ecx, dword [ebp + 0x18]
jbe 0x405632
mov eax, dword [ebp - 0x8d0]
add eax, 0xfffffff4
cmp eax, dword [0x41cc24]
je 0x40562a
push eax
call fcn.0040172e
xor eax, eax
inc eax
jmp 0x4058cd
xor eax, eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov word [ebp - 0x218], ax
push 0x419b78
lea eax, [ebp - 0x8d0]
push eax
lea eax, [ebp + 0xc]
push eax
mov word [ebp - 0x10], 0x5c
call fcn.004058f5
mov eax, dword [eax]
lea edi, [ebp - 0x468]
call fcn.00406a4c
mov esi, eax
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff4
cmp eax, dword [0x41cc24]
je 0x40567f
push eax
call fcn.0040172e
test esi, esi
je 0x4056bd
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp - 0x468]
call fcn.0040691b
push dword [eax]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff4
cmp eax, dword [0x41cc24]
je 0x4056ae
push eax
call fcn.0040172e
lea eax, [ebp - 0x468]
call fcn.00406a23
test eax, eax
jne 0x405683
and dword [ebp + 0xc], 0
cmp dword [ebx + 0x1c], 0
jle 0x4057cd
lea eax, [ebx + 0x18]
mov dword [ebp - 0x8e0], eax
mov edi, dword [ebp + 0xc]
mov esi, dword [ebp - 0x8e0]
call fcn.00406904
mov ecx, eax
lea esi, [ebp - 0x8dc]
call fcn.00401671
xor eax, eax
mov dword [ebp - 0x470], eax
mov dword [ebp - 0x46c], eax
mov word [ebp - 0x67c], ax
mov eax, dword [ebp - 0x8dc]
lea edi, [ebp - 0x8cc]
mov word [ebp - 0x474], 0x5c
call fcn.00406a4c
test eax, eax
je 0x405755
mov ecx, edi
call fcn.004068c0
mov esi, dword [ebp - 0x8e0]
mov edi, dword [ebp + 0xc]
mov ebx, eax
mov eax, esi
call fcn.004068e2
call fcn.00406904
mov ecx, eax
add ecx, 4
lea eax, [ebp - 0x8cc]
call fcn.004068a1
mov ebx, dword [ebp + 8]
jmp 0x40579c
push str..xml
lea eax, [ebp - 0x8dc]
push eax
lea eax, [ebp - 0x8d4]
push eax
call fcn.004058f5
mov esi, dword [ebp - 0x8d4]
push esi
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x8e0]
call fcn.00406b7c
dec dword [ebp + 0xc]
lea eax, [esi - 0xc]
cmp eax, dword [0x41cc24]
je 0x40579c
push eax
call fcn.0040172e
lea eax, [ebp - 0x8cc]
call fcn.00406afa
mov eax, dword [ebp - 0x8dc]
add eax, 0xfffffff4
cmp eax, dword [0x41cc24]
je 0x4057be
push eax
call fcn.0040172e
inc dword [ebp + 0xc]
mov eax, dword [ebp + 0xc]
cmp eax, dword [ebx + 0x1c]
jl 0x4056d4
mov edx, dword [ebx + 0x2c]
cmp edx, dword [ebp + 0x14]
mov eax, dword [ebx + 0x28]
ja 0x405806
jb 0x4057df
cmp eax, dword [ebp + 0x10]
jae 0x405806
mov ecx, dword [ebp + 0x10]
sub ecx, eax
mov eax, dword [ebp + 0x14]
sbb eax, edx
xor edx, edx
cmp eax, edx
jb 0x405806
ja 0x4057f6
cmp ecx, dword [ebp + 0x18]
jbe 0x405806
lea eax, [ebp - 0x468]
call fcn.00406afa
jmp 0x405613
lea esi, [ebx + 0x18]
mov eax, esi
call fcn.00406847
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x18]
lea edx, [ecx + eax]
xor eax, eax
xor edi, edi
mov ecx, edx
add ecx, dword [ebx + 0x28]
mov dword [ebp - 0x8d4], eax
adc eax, dword [ebx + 0x2c]
mov dword [ebp - 0x8d8], edx
cmp eax, dword [ebp + 0x14]
jb 0x40588a
ja 0x405845
cmp ecx, dword [ebp + 0x10]
jbe 0x40588a
jmp 0x405845
mov edx, dword [ebp - 0x8d8]
cmp edi, dword [ebx + 0x1c]
jge 0x40588a
call fcn.00406904
push dword [eax]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
je 0x405865
mov eax, edi
mov ecx, esi
call fcn.00406b7c
dec edi
mov ecx, dword [ebp - 0x8d8]
mov eax, dword [ebp - 0x8d4]
inc edi
add ecx, dword [ebx + 0x28]
adc eax, dword [ebx + 0x2c]
cmp eax, dword [ebp + 0x14]
ja 0x40583f
jb 0x405884
cmp ecx, dword [ebp + 0x10]
ja 0x40583f
mov edx, dword [ebp - 0x8d8]
add edx, dword [ebx + 0x28]
mov eax, dword [ebp - 0x8d4]
adc eax, dword [ebx + 0x2c]
cmp eax, dword [ebp + 0x14]
ja 0x4058a7
jb 0x4058a2
cmp edx, dword [ebp + 0x10]
jae 0x4058a7
xor esi, esi
inc esi
jmp 0x4058a9
xor esi, esi
lea eax, [ebp - 0x468]
call fcn.00406afa
mov eax, dword [ebp - 0x8d0]
add eax, 0xfffffff4
cmp eax, dword [0x41cc24]
je 0x4058cb
push eax
call fcn.0040172e
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
call fcn.0040f439
leave
ret 0x18