Function at 0x40f490
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x475800
mov eax, dword fs:[0]
push eax
sub esp, 0x28
push ebx
push esi
push edi
mov eax, dword [0x4bc00c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov ebx, ecx
mov dword [ebp - 0x20], ebx
call fcn.00403ac0
mov ecx, eax
test ecx, ecx
je 0x40f9be
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
mov dword [ebp - 4], 1
sub esp, 0x18
mov dword [ebp - 0x2c], esp
mov ecx, esp
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
xor eax, eax
mov word [ecx], ax
push 9
push str.stemp.bat
call fcn.00402980
mov byte [ebp - 4], 2
sub esp, 0x18
mov dword [ebp - 0x28], esp
mov ecx, esp
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
xor eax, eax
mov word [ecx], ax
push 6
push 0x48d2ac
call fcn.00402980
mov byte [ebp - 4], 3
mov byte [ebp - 4], 1
mov edx, 0x70
lea ecx, [ebp - 0x24]
call fcn.00401380
add esp, 0x30
mov byte [ebp - 4], 4
mov byte [ebp - 4], 5
push 0x48d1b0
lea ecx, [ebp - 0x28]
call fcn.0045fcf0
mov byte [ebp - 4], 6
mov byte [ebp - 0x11], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
lea eax, [ebp - 0x28]
push eax
lea edx, [ebp - 0x24]
call fcn.0045f3b0
add esp, 4
mov byte [ebp - 4], 7
mov byte [ebp - 4], 6
mov dl, byte [ebp - 0x11]
lea ecx, [ebp - 0x1c]
call fcn.004642f0
add esp, 4
mov byte [ebp - 4], 0xa
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x28]
add edx, 0xfffffff0
or esi, 0xffffffff
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f5b8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
push ecx
push str.successfully
lea ecx, [ebp - 0x1c]
call fcn.0045f840
test eax, eax
jle 0x40f623
push ecx
push str.success
lea ecx, [ebp - 0x1c]
call fcn.0045f840
test eax, eax
jle 0x40f623
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push 0x48d10a
call fcn.0045fcf0
mov byte [ebp - 4], 0x12
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.Necessary_changes_have_been_done.
call fcn.0045fcf0
mov byte [ebp - 4], 0x13
push ecx
mov ecx, esp
mov dword [ebp - 0x30], esp
push 0x48d168
call fcn.0045fcf0
mov byte [ebp - 4], 0x14
mov byte [ebp - 4], 9
mov ecx, ebx
jmp 0x40f747
push str.Error_occurred_during_code_execution
lea ecx, [ebp - 0x18]
call fcn.0045fc60
push ecx
mov dword [ebp - 0x30], esp
mov dword [ebp - 0x2c], esp
mov edi, dword [ebp - 0x1c]
mov ecx, dword [edi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [edi - 4]
cmp dword [eax], 0
jl 0x40f659
cmp ecx, dword [edi - 0x10]
jne 0x40f659
lea ebx, [edi - 0x10]
lock inc dword [eax]
jmp 0x40f683
mov eax, dword [ecx]
push 2
push dword [edi - 0xc]
call dword [eax]
mov ebx, eax
test ebx, ebx
je 0x40f9c8
mov eax, dword [edi - 0xc]
mov dword [ebx + 4], eax
mov edx, dword [edi - 0xc]
inc edx
push edx
push edi
lea ecx, [ebx + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [ebx + 0x10]
mov ecx, dword [ebp - 0x2c]
mov dword [ecx], eax
mov byte [ebp - 4], 0xb
mov byte [ebp - 4], 0xc
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push str.spoolerStopped_KB_11572
call fcn.0045fcf0
mov byte [ebp - 4], 0xd
mov byte [ebp - 4], 9
or ecx, 0xffffffff
call fcn.00462c10
add esp, 4
mov ecx, esp
mov dword [ebp - 0x30], esp
push 0x48d10a
call fcn.0045fcf0
mov byte [ebp - 4], 0xe
push ecx
mov dword [ebp - 0x28], esp
mov dword [ebp - 0x2c], esp
mov edi, dword [ebp - 0x18]
mov ecx, dword [edi - 0x10]
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
lea eax, [edi - 4]
cmp dword [eax], 0
jl 0x40f6f2
cmp ecx, dword [edi - 0x10]
jne 0x40f6f2
lea ebx, [edi - 0x10]
lock inc dword [eax]
jmp 0x40f71c
mov eax, dword [ecx]
push 2
push dword [edi - 0xc]
call dword [eax]
mov ebx, eax
test ebx, ebx
je 0x40f9cd
mov eax, dword [edi - 0xc]
mov dword [ebx + 4], eax
mov edx, dword [edi - 0xc]
inc edx
push edx
push edi
lea ecx, [ebx + 0x10]
call fcn.004031f0
add esp, 8
lea eax, [ebx + 0x10]
mov ecx, dword [ebp - 0x2c]
mov dword [ecx], eax
mov byte [ebp - 4], 0xf
mov byte [ebp - 4], 0x10
push ecx
mov ecx, esp
mov dword [ebp - 0x2c], esp
push str.Failure
call fcn.0045fcf0
mov byte [ebp - 4], 0x11
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x20]
call fcn.00463120
add esp, 0xc
mov byte [ebp - 4], 0x15
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f771
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov dword [ebp - 4], 4
jmp 0x40f85e
push str.stemp.bat
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0x2c]
call fcn.0045f2e0
add esp, 4
mov byte [ebp - 4], 0x23
push dword [eax]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x2c]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f89b
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40f8b9
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x18]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x40f8d8
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.00403880
call fcn.004031e0
call fcn.004031e0
call fcn.004031e0
call fcn.004031e0
int3