Function at 0x453764
Capabilities:
Check if file exists
Delete file

Disassembly:
push 0x2a4
mov eax, 0x5e1e33
call fcn.0046dcda
mov eax, dword [ebp + 8]
push eax
mov dword [ebp - 0x2ac], eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x453e3b
call fcn.00452603
test al, al
je 0x4537af
cdq
out 0xb, eax
pop es
or eax, esp
push edx
stc
mov dl, 0x22
movsd dword es:[edi], dword [esi]
xchg ecx, eax
pushfd
call 0x3dc5785a
and byte [ebx - 0x68], ch
retf 0x31d3
push dword [ebp - 0x2ac]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
je 0x4537f0
call fcn.004521f8
test al, al
je 0x453e3b
ret 0x5019
push 0x208
xor ebx, ebx
lea eax, [ebp - 0x218]
push ebx
push eax
call fcn.00480640
add esp, 0xc
mov dword [ebp - 0x234], 7
xor eax, eax
mov dword [ebp - 0x238], ebx
lea ecx, [ebp - 0x248]
mov word [ebp - 0x248], ax
push ebx
push 0x5e6948
call fcn.00402ad0
mov dword [ebp - 4], ebx
call fcn.004524ef
test al, al
je 0x45384e
mov esp, 0x4fd84e4e
xlatb
xor byte [esi - 0x77e2f4a6], cl
jbe 0x453863
lea edx, [esi - 0x18]
call 0x2ede3a
inc dword [eax + eax*8 - 0x4115e08c]
pop esi
cmp al, 0x99
lea ecx, [edx + 0x30]
or al, 0xc2
push 0x7e38e46e
jne 0x4538bf
call fcn.004521f8
test al, al
je 0x453876
ljmp 0x8d99:0x3c5ef2be
outsb dx, byte [esi]
in al, 0x38
jle 0x4538dd
push esi
rcr byte [0xd719d8b0], 1
mov al, 0x14
dec ecx
imul esi, dword [eax + 0x70], 0xffffffc3
call fcn.00452015
test al, al
je 0x453895
fcom qword [esi]
mov dword [edi + 0x4d], edx
xor dword [eax], ebx
xchg ebp, eax
and esp, dword [0x4a216149]
test al, 0x1c
jb 0x45384d
jno 0x453890
jmp 0xfe2dbe26
lea eax, [ebp - 0x218]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push dword [ebp - 0x2ac]
lea eax, [ebp - 0x2a8]
push eax
call fcn.0045572d
pop ecx
pop ecx
mov byte [ebp - 4], 1
call fcn.00452603
test al, al
je 0x4538db
ja 0x4538e5
adc dword [esi - 0x3b], ecx
push eax
fldenv [ecx - 0x6ad9f11f]
dec eax
xchg ebp, eax
sub dword [ecx], esi
out 0x89, al
adc eax, ebp
cdq
call fcn.00452579
test al, al
je 0x4538ff
in al, dx
invalid
lea ebx, [eax + 0x78]
push edx
pop eax
js 0x45393a
sub eax, 0x446c278
jge 0x45392a
cmovl ecx, ecx
aad 2
invalid
call fcn.00452534
test al, al
je 0x453921
je 0x453890
loope 0x45388e
jl 0x45395f
adc cl, byte [edx]
mov dword [eax + 0x6f], ebp
int 0x67
retf 0xcf50
push dword [ebp - 0x2ac]
lea eax, [ebp - 0x278]
push eax
call fcn.00455b15
pop ecx
pop ecx
mov byte [ebp - 4], 2
call fcn.00451fd0
test al, al
je 0x453956
std
invalid
xchg edx, eax
out 0xff, al
inc dword [eax + eax*8 + 0x33a71474]
sub ebx, dword [edx + 0x4446c0ef]
xchg edi, eax
outsd dx, dword [esi]
cmpsd dword [esi], dword es:[edi]
xor ebp, dword [ebx]
lcall 0x6f97, 0x4446c0ef
pop ds
fsub qword [edx - 0x42]
mov ebp, 0x571292d5
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x260]
push eax
mov al, byte [0x50fffffd]
call fcn.00455b15
lea eax, [ebp - 0x278]
mov byte [ebp - 4], 3
push eax
call fcn.0045bc25
add esp, 0xc
call fcn.0045223d
test al, al
je 0x453995
out dx, al
mov ecx, 0xe2267e44
dec esp
shr byte [esi], 1
ret 0x8af0
call fcn.004525be
test al, al
je 0x4539be
in eax, dx
arpl word [edi], bx
nop
jmp 0x453983
call fcn.00451fd0
test al, al
je 0x4539e5
pop eax
pop es
and al, cl
ljmp 0x74d4
lea eax, [ebp - 0x260]
push eax
call fcn.0045bc25
pop ecx
lea eax, [ebp - 0x278]
push eax
lea ecx, [ebp - 0x260]
call fcn.00454c66
test eax, eax
jne 0x453a52
call fcn.004524aa
test al, al
je 0x453a22
loope 0x453a59
das
shl ch, cl
inc ebp
insd dword es:[edi], dx
std
inc edx
pushfd
wait
pop es
sti
xchg byte [ebp + 0x5d], dl
cmp word [ebp - 0x218], 0
jne 0x453a30
xor eax, eax
jmp 0x453a3d
lea eax, [ebp - 0x218]
push eax
call fcn.0048ece7
pop ecx
push eax
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x248]
call fcn.00402ad0
jmp 0x453ad0
call fcn.00452420
test al, al
je 0x453a78
invalid
call fcn.004521f8
test al, al
je 0x453aa1
mov cl, 0x52
outsd dx, dword [esi]
aam 0xec
mov cl, 0xfb
shr ecx, 0x99
leave
leave
add esp, dword [esi + 0x7e]
call 0xea73b6f5
popal
ljmp 0x9c8b
push dword [ebp - 0x2ac]
lea eax, [ebp - 0x290]
push eax
call fcn.004559dd
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x248]
call fcn.004043f0
push 0
push 1
lea ecx, [ebp - 0x290]
call fcn.0041edb0
and dword [ebp - 0x2b0], 0
call fcn.00452579
test al, al
je 0x453af6
je 0x453b55
inc ecx
xlatb
frstor dword [edx + 0xd7b3f34]
xor eax, 0x22a6fef8
mov dl, 0x1e
clc
sbb ah, byte [ebx]
push 0xe0a5839e
std
invalid
and dword [ebp - 0x220], 0
lea ecx, [ebp - 0x230]
xor eax, eax
mov dword [ebp - 0x21c], 7
push eax
push 0x5e6948
mov word [ebp - 0x230], ax
call fcn.00402ad0
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x230]
call fcn.004029b0
call fcn.004524ef
test al, al
je 0x453b63
test eax, edx
std
invalid
jl 0x453b5a
ficom word [edi + 0x457577ba]
pop esi
in al, 0x90
push esi
in eax, dx
mov cl, byte [esi + 0x49]
pop edx
stc
pop es
add bh, byte [ecx]
mov ah, 0xd4
imul ecx, dword [eax + edx*8], 0xffffffd9
invalid
aam 0x6b
or al, 0xd0
f2xm1
push ebp
and bl, byte [edi - 0x1bdc18]
inc dword [eax + eax*8 - 0xad7e68c]
call fcn.00451f8b
test al, al
je 0x453b85
sub ch, dh
jmp 0x453b17
call fcn.0045223d
test al, al
je 0x453baa
ret 0xecc4
push 0xffffffffffffffff
xor ebx, ebx
lea eax, [ebp - 0x2a8]
push ebx
push eax
lea ecx, [ebp - 0x230]
call fcn.00405c90
mov esi, str..fcb
push esi
call fcn.0048ece7
pop ecx
push eax
push esi
lea ecx, [ebp - 0x230]
call fcn.00405da0
mov eax, dword [ebp - 0x2b0]
test eax, eax
jle 0x453c1b
cdq
push edx
push eax
lea eax, [ebp - 0x290]
push eax
call fcn.0045524b
add esp, 0xc
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 5
call fcn.00405c90
push ebx
push 1
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 4
call fcn.0041edb0
mov cl, 0xfc
inc dword [ebx - 0x21b43]
dec dword [eax]
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x453cfe
call fcn.004521f8
test al, al
je 0x453c62
loope 0x453be6
or byte [edi + eax + 0x199da955], dh
pop ds
iretd
call fcn.0045209f
test al, al
je 0x453c89
arpl word [edi], si
pop ebx
movsb byte es:[edi], byte [esi]
jg 0x453c18
cmp eax, edi
invalid
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x453cfe
call fcn.0045209f
test al, al
je 0x453cd0
push esi
inc byte [edi]
mov bh, 0xf8
jl 0x453c73
sub dword [eax + 0x27], esp
push ecx
insb byte es:[edi], dx
ret 0x33e4
mov ebx, dword [ebp - 0x2b0]
cmp ebx, 0xa
jge 0x453df5
push 0
inc ebx
mov byte [ebp - 4], 3
push 1
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x2b0], ebx
call fcn.0041edb0
jmp 0x453af6
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
push dword [ebp - 0x2ac]
call fcn.0048cfc6
pop ecx
pop ecx
call fcn.00452351
test al, al
je 0x453d40
push esi
xchg dword [edi], esi
pop esp
leave
shr byte [ebx + ecx*4 - 0x32159ef8], 1
pop ds
or byte [edx + 0x7750df7b], 0x65
cli
retf
call fcn.004520e4
test al, al
je 0x453d61
out 0x72, al
add edx, dword [ebp - 0x25d3965d]
stosd dword es:[edi], eax
xor byte [eax], al
jo 0x453d9b
inc esp
pushal
out dx, eax
fbld tbyte [edx]
xchg dword [esi + ebx + 0x8e879cd], edi
in al, 0xff
inc dword [eax + eax*8 + 0x39c01874]
xor ah, bh
cmp byte [eax - 0x80], ch
push eax
xor byte [ecx - 2], dl
sbb eax, 0xd39c7843
push edx
dec edi
loope 0x453dc5
call fcn.0045216e
test al, al
je 0x453d82
sar byte [ecx], 0x32
out 0x38, eax
push 0x51305080
invalid
out dx, eax
in al, dx
push es
xchg ecx, eax
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmovae eax, dword [ebp - 0x230]
push eax
call esi
call dword [eax - 1]
salc
test eax, eax
je 0x453dc2
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
push 5
cmovae eax, dword [ebp - 0x230]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
mov ebx, dword [ebp - 0x2ac]
push ebx
call esi
test eax, eax
je 0x453df5
std
invalid
call fcn.0045230c
test al, al
je 0x453dea
adc dl, bh
inc ebp
mov al, 0x3b
out 0xad, al
pop eax
sti
imul esp, dword [ebp + 0x576cd0b2], 0x29
fmul dword [esi]
push 5
push 0
push ebx
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
xor ebx, ebx
lea ecx, [ebp - 0x230]
xor esi, esi
push ebx
inc esi
push esi
call fcn.0041edb0
push ebx
push esi
lea ecx, [ebp - 0x260]
call fcn.0041edb0
push ebx
push esi
lea ecx, [ebp - 0x278]
call fcn.0041edb0
push ebx
push esi
lea ecx, [ebp - 0x2a8]
call fcn.0041edb0
push ebx
push esi
lea ecx, [ebp - 0x248]
call fcn.0041edb0
call fcn.0046dc84
ret