Function at 0x453aed
Capabilities:
Delete file

Disassembly:
push 8
mov eax, 0x46dd47
call fcn.00463531
mov esi, ecx
mov eax, dword [esi + 0x1b4]
test eax, eax
jge 0x453b0f
mov eax, 0x80004005
jmp 0x453c51
mov ecx, dword [esi + 0x1a4]
cmp eax, ecx
jge 0x453c4f
push 2
pop ebx
mov ecx, esi
call fcn.00451890
mov edi, eax
test edi, edi
je 0x453b05
push edi
mov ecx, esi
call fcn.0045394d
test eax, eax
jne 0x453c59
cmp dword [ebp + 8], eax
jne 0x453bbf
push dword [esi + 0x1cc]
fldz
push ecx
push ecx
fstp qword [esp]
push eax
push dword [esi + 0x1b4]
mov ecx, esi
call fcn.00450fb6
fldz
mov ecx, dword [esi + 0x1e8]
fstp qword [esi + 0x1c0]
push edi
lea eax, [ebp - 0x10]
push eax
call fcn.00414815
and dword [ebp - 4], 0
lea eax, [edi + 0x28]
push eax
lea ecx, [ebp - 0x10]
call dword [sym.imp.MFC80U.DLL_Ordinal_870]
push eax
call fcn.0045ecb0
cmp eax, ebx
pop ecx
pop ecx
jne 0x453c5e
push dword [esi + 0x1cc]
fld1
push ecx
push ecx
fstp qword [esp]
push 1
push dword [esi + 0x1b4]
mov ecx, esi
call fcn.00450fb6
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10]
call dword [sym.imp.MFC80U.DLL_Ordinal_577]
lea ecx, [edi + 0x3c]
call dword [sym.imp.MFC80U.DLL_Ordinal_3927]
test al, al
jne 0x453c09
mov ecx, dword [esi + 0x1e8]
push edi
lea eax, [ebp - 0x14]
push eax
call fcn.00414a86
lea eax, [edi + 0x40]
push eax
lea ecx, [ebp - 0x14]
mov dword [ebp - 4], ebx
call dword [sym.imp.MFC80U.DLL_Ordinal_870]
push eax
call fcn.0045ecb0
cmp eax, ebx
pop ecx
pop ecx
jne 0x453d85
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call dword [sym.imp.MFC80U.DLL_Ordinal_577]
push dword [esi + 0x1cc]
fld1
and dword [esi + 0x1d0], 0
push ecx
push ecx
fstp qword [esp]
push 3
push dword [esi + 0x1b4]
mov ecx, esi
call fcn.00450fb6
inc dword [esi + 0x1b4]
mov eax, dword [esi + 0x1b4]
and dword [ebp + 8], 0
cmp eax, dword [esi + 0x1a4]
jl 0x453b20
mov ecx, esi
call fcn.004510d1
xor eax, eax
call fcn.00463609
ret 4
xor eax, eax
inc eax
jmp 0x453c51
xor ebx, ebx
cmp eax, ebx
jne 0x453cb8
lea eax, [ebp - 0x10]
push eax
call fcn.0045d770
test eax, eax
pop ecx
jne 0x453c84
mov esi, 0x80004005
lea ecx, [ebp - 0x10]
call dword [sym.imp.MFC80U.DLL_Ordinal_577]
mov eax, esi
jmp 0x453c51
push dword [esi + 0x1cc]
fldz
push ecx
push ecx
fstp qword [esp]
push 1
push dword [esi + 0x1b4]
mov ecx, esi
call fcn.00450fb6
push ebx
push edi
mov ecx, esi
call fcn.00453272
test eax, eax
je 0x453c72
mov dword [esi + 0x1d4], ebx
xor esi, esi
inc esi
jmp 0x453c77
mov ecx, dword [esi + 0x1e8]
push edi
lea eax, [ebp + 8]
push eax
call fcn.00414815
push ebx
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
call dword [sym.imp.MFC80U.DLL_Ordinal_870]
push eax
call fcn.0045def0
mov ebx, eax
test ebx, ebx
pop ecx
pop ecx
je 0x453ce9
cmp ebx, dword [edi + 0x20]
jb 0x453cfb
lea ecx, [ebp + 8]
xor ebx, ebx
call dword [sym.imp.MFC80U.DLL_Ordinal_870]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test ebx, ebx
fldz
jbe 0x453d27
mov eax, ebx
fstp st(0)
test eax, eax
mov dword [ebp - 0x14], eax
fild dword [ebp - 0x14]
jge 0x453d15
fadd qword [0x47a5f0]
mov eax, dword [edi + 0x20]
fild dword [edi + 0x20]
test eax, eax
jge 0x453d25
fadd qword [0x47a5f0]
fdivp st(1)
test ebx, ebx
mov dword [ebp - 0x14], ebx
fild dword [ebp - 0x14]
jge 0x453d37
fadd qword [0x47a5f0]
push dword [esi + 0x1cc]
fstp qword [esi + 0x1c0]
push ecx
push ecx
fstp qword [esp]
push 1
push dword [esi + 0x1b4]
mov ecx, esi
call fcn.00450fb6
push 0
push edi
mov ecx, esi
call fcn.00453272
test eax, eax
lea ecx, [ebp + 8]
je 0x453d7a
and dword [esi + 0x1d4], 0
call dword [sym.imp.MFC80U.DLL_Ordinal_577]
jmp 0x453cb3
call dword [sym.imp.MFC80U.DLL_Ordinal_577]
jmp 0x453c72
cmp eax, 1
jne 0x453db2
mov ecx, dword [esi + 0x1e8]
push edi
lea eax, [ebp + 8]
push eax
call fcn.00414a86
mov ecx, eax
call dword [sym.imp.MFC80U.DLL_Ordinal_870]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp + 8]
call dword [sym.imp.MFC80U.DLL_Ordinal_577]
lea eax, [ebp - 0x14]
push eax
call fcn.0045d770
test eax, eax
pop ecx
jne 0x453dcd
mov esi, 0x80004005
lea ecx, [ebp - 0x14]
jmp 0x453c7a
push dword [esi + 0x1cc]
fldz
push ecx
push ecx
fstp qword [esp]
push ebx
push dword [esi + 0x1b4]
mov ecx, esi
call fcn.00450fb6
push 1
push edi
mov ecx, esi
call fcn.00453272
test eax, eax
je 0x453dc0
and dword [esi + 0x1d4], 0
xor esi, esi
inc esi
jmp 0x453dc5