Function at 0x2759bb50
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x275ac758
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
push edi
mov eax, dword [0x275ba2ec]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [0x275bc8c4]
mov edx, dword [eax + 0xc]
xor ebx, ebx
mov ecx, 0x275bc8c4
mov dword [ebp - 0x20], ebx
call edx
add eax, 0x10
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ebx
cmp dword [edi + 0x6c], ebx
mov dword [ebp - 4], ebx
jne 0x2759bba9
mov esi, 0x80048008
jmp 0x2759bd68
mov ecx, dword [edi + 0x6c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x18]
push 0xffffffffffffffff
call edx
push eax
push ebx
lea ecx, [ebp - 0x20]
call fcn.2757d950
test eax, eax
je 0x2759bd24
cmp dword [ebp + 8], ebx
lea eax, [edi + 0x1c]
jne 0x2759bbd2
lea eax, [edi + 0x20]
cmp dword [ebp + 0xc], 0
mov ebx, dword [eax]
je 0x2759bd20
mov dword [ebp - 0x14], 0
mov eax, dword [ebp + 0xc]
push eax
push ebx
mov ecx, edi
call fcn.27596480
mov esi, eax
mov ecx, esi
and ecx, 0xffff
cmp ecx, 0x20
jne 0x2759bc55
push 1
lea edx, [ebp - 0xd]
push edx
mov byte [ebp - 0xd], 0
call fcn.275a2230
mov eax, dword [ebp - 0x14]
mov ecx, eax
add eax, 1
cmp ecx, 2
mov dword [ebp - 0x14], eax
jge 0x2759bc55
call fcn.27595010
test al, al
je 0x2759bc3c
push 0x275317d8
push 0x27531770
push 3
call fcn.27595fd0
add esp, 0xc
movzx eax, byte [ebp - 0xd]
add eax, 0xfa
lea edx, [eax + eax*2]
add edx, edx
add edx, edx
push edx
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x2759bc59
test esi, esi
jl 0x2759bcbe
test esi, esi
jne 0x2759bbe5
push esi
push ebx
call fcn.2759da80
mov esi, eax
test esi, esi
jge 0x2759bd0a
call fcn.27595010
test al, al
je 0x2759bc8d
push esi
push ebx
push 0x275316d0
push 0x27531668
push 0
call fcn.27595fd0
add esp, 0x14
push ebx
mov esi, 0x8004888d
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x2759bd68
call fcn.27595010
test al, al
je 0x2759bd68
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
test eax, eax
jg 0x2759bce6
call edi
jmp 0x2759bcf2
call fcn.27595010
test al, al
je 0x2759bcdc
push esi
push 0x27531618
push 0x275315b0
push 0
call fcn.27595fd0
add esp, 0x10
mov esi, 0x80048257
jmp 0x2759bd68
call edi
and eax, 0xffff
or eax, 0x80070000
push eax
push ebx
push 0x27531560
push 0x275314f8
push 0
call fcn.27595fd0
add esp, 0x14
jmp 0x2759bd68
mov ecx, dword [edi + 0x6c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x3c]
call edx
push eax
mov eax, dword [ebp + 8]
push eax
mov ecx, edi
call fcn.2759a3d0
xor esi, esi
jmp 0x2759bd68
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
jg 0x2759bd36
call esi
mov esi, eax
jmp 0x2759bd46
call esi
mov esi, eax
and esi, 0xffff
or esi, 0x80070000
call fcn.27595010
test al, al
je 0x2759bd63
push esi
push 0x2752e380
push 0x27531490
push ebx
call fcn.27595fd0
add esp, 0x10
mov esi, 0x80048006
cmp dword [ebp - 0x20], 0
mov edi, dword [ebp - 0x18]
mov dword [ebp - 4], 0xffffffff
je 0x2759bd83
test edi, edi
je 0x2759bd8e
push edi
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
test edi, edi
je 0x2759bd8e
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x2759bdad
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8