Function at 0x509044
Capabilities:
Delete file

Disassembly:
push 0x148
mov eax, 0x7910bf
call fcn.00700ca1
mov esi, dword [ebp + 8]
xor ebx, ebx
cmp dword [esi + 0x10], ebx
jne 0x509064
xor eax, eax
jmp 0x50934a
cmp dword [esi + 0x14], 8
mov eax, esi
jb 0x50906e
mov eax, dword [esi]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov dword [ebp - 0x154], eax
test eax, eax
jne 0x50934a
push 0xf
pop edi
push 7
push str.GPCUtil
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], edi
mov byte [ebp - 0x70], bl
call fcn.00439710
lea eax, [ebp - 0x70]
mov dword [ebp - 4], ebx
push eax
call fcn.006210e3
and dword [ebp - 0x48], 0
mov ebx, eax
pop ecx
push 8
push str.filePath
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x44], edi
mov byte [ebp - 0x58], 0
call fcn.00439710
push 0
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 1
push esi
push eax
call fcn.00620ff2
add esp, 0xc
push 0
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 2
push ecx
push eax
lea ecx, [ebp - 0x148]
call fcn.0061c551
mov edi, eax
and dword [ebp - 0x30], 0
lea ecx, [ebp - 0x40]
push 0xe
push str.GetLastError__
mov byte [ebp - 4], 3
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.00439710
mov byte [ebp - 4], 4
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [ebp - 0xa0]
push eax
call fcn.006211a2
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 5
push ecx
push eax
lea ecx, [ebp - 0x118]
call fcn.0061c551
mov esi, eax
xor eax, eax
mov byte [ebp - 4], 6
push eax
push 0x858903
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], al
call fcn.00439710
mov byte [ebp - 4], 7
lea eax, [ebp - 0x88]
push str.filesystem__DeleteFile_failed
push eax
call fcn.006212a1
pop ecx
pop ecx
push 0
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 8
push ecx
push eax
lea ecx, [ebp - 0xe8]
call fcn.0061c551
push edi
push esi
push eax
mov ecx, ebx
mov byte [ebp - 4], 9
call fcn.00621500
lea ecx, [ebp - 0xd0]
call fcn.00438e20
lea ecx, [ebp - 0xe8]
call fcn.00438e20
lea ecx, [ebp - 0x88]
call fcn.00438e20
mov eax, dword [ebp - 0x14]
mov esi, 0x1000
cmp eax, 0x10
jb 0x509210
mov ecx, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x150], ecx
cmp eax, esi
jb 0x509207
lea eax, [ebp - 0x14c]
push eax
lea eax, [ebp - 0x150]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x14c]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x150]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
push 0xf
xor ebx, ebx
lea ecx, [ebp - 0x100]
pop edi
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], edi
mov byte [ebp - 0x28], bl
call fcn.00438e20
lea ecx, [ebp - 0x118]
call fcn.00438e20
lea ecx, [ebp - 0xa0]
call fcn.00438e20
mov eax, dword [ebp - 0x2c]
cmp eax, 0x10
jb 0x509285
mov ecx, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], ecx
cmp eax, esi
jb 0x50927c
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0x14c]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x150]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14c]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
lea ecx, [ebp - 0x130]
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], edi
mov byte [ebp - 0x40], bl
call fcn.00438e20
lea ecx, [ebp - 0x148]
call fcn.00438e20
lea ecx, [ebp - 0xb8]
call fcn.00438e20
mov eax, dword [ebp - 0x44]
cmp eax, 0x10
jb 0x5092f5
mov ecx, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], ecx
cmp eax, esi
jb 0x5092ec
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0x14c]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x150]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14c]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], edi
mov byte [ebp - 0x58], bl
cmp eax, 0x10
jb 0x509344
mov ecx, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], ecx
cmp eax, esi
jb 0x50933b
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0x14c]
push eax
call fcn.004343f0
mov eax, dword [ebp - 0x150]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14c]
push eax
push ecx
call fcn.007009b8
pop ecx
pop ecx
mov eax, dword [ebp - 0x154]
call fcn.00700c4b
ret