Function at 0x514480
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 4
push 0
push 0
dec ecx
jne 0x514489
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 4], edx
mov ebx, eax
mov eax, dword [ebp - 4]
call fcn.004055e4
xor eax, eax
push ebp
push 0x51488d
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
push ebp
push 0x51485e
push dword fs:[edx]
mov dword fs:[edx], esp
movzx eax, byte [ebx + 0x3c4]
cmp eax, 0x12
ja case.0x5144d6.5
movzx eax, byte [eax + 0x5144dd]
jmp dword [eax*4 + 0x5144f0]
push 0x5148ac
push 0x5148ac
xor ecx, ecx
mov edx, 0x5148bc
mov eax, dword [ebp - 4]
call fcn.005063a0
dec eax
jne 0x514538
mov byte [0x528e19], 1
jmp case.0x5144d6.5
mov byte [0x528e19], 0
jmp case.0x5144d6.5
push 0x5148ac
push 0x5148d4
xor ecx, ecx
mov edx, 0x5148bc
mov eax, dword [ebp - 4]
call fcn.005069e0
dec eax
jne 0x51456c
mov byte [0x528e19], 1
jmp case.0x5144d6.5
mov byte [0x528e19], 0
jmp case.0x5144d6.5
push 0x5148ec
push 0x5148ec
xor ecx, ecx
mov edx, 0x5148bc
mov eax, dword [ebp - 4]
call fcn.005074cc
mov byte [0x528e19], al
jmp case.0x5144d6.5
push 0x5148ac
push 0x5148ac
xor ecx, ecx
mov edx, 0x5148bc
mov eax, dword [ebp - 4]
call fcn.00507954
mov byte [0x528e19], al
jmp case.0x5144d6.5
push 0
movzx eax, byte [ebx + 0x3c4]
mov ecx, 0x5148bc
mov edx, dword [ebp - 4]
call fcn.00508fa0
mov byte [0x528e19], al
jmp case.0x5144d6.5
push 0
movzx eax, byte [ebx + 0x3c4]
mov ecx, 0x5148bc
mov edx, dword [0x528e04]
call fcn.00508e0c
mov byte [0x528e19], al
jmp case.0x5144d6.5
mov edx, 0x5148bc
mov eax, dword [ebp - 4]
call fcn.0050a704
mov byte [0x528e19], al
cmp byte [0x528e19], 0
je 0x514850
xor edx, edx
push ebp
push 0x514849
push dword fs:[edx]
mov dword fs:[edx], esp
xor eax, eax
mov dword [ebp - 0x18], eax
mov eax, dword [0x528e04]
mov edx, 0x5148fc
call fcn.0040558c
je 0x5147f1
xor edx, edx
push ebp
push 0x5147ea
push dword fs:[edx]
mov dword fs:[edx], esp
mov dl, 1
mov eax, dword [0x41b604]
call fcn.00404218
mov dword [ebp - 0x18], eax
mov edx, dword [0x528e04]
mov eax, ebx
call fcn.00514944
mov dword [0x528e0c], eax
mov dword [0x528e10], edx
mov eax, dword [0x528e0c]
add eax, 0x56380414
mov dword [0x528e14], eax
mov eax, dword [0x528e14]
push eax
mov ecx, 0x51490c
mov edx, 0x5148bc
mov eax, ebx
call fcn.00514de8
mov eax, 0x5148bc
call fcn.004055f4
push eax
call sub.kernel32.dll_DeleteFileA
mov edx, 0x51490c
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
call dword [ecx + 0x68]
mov eax, 0x51490c
call fcn.004055f4
push eax
call sub.kernel32.dll_DeleteFileA
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x514792
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
test eax, eax
jl 0x514792
inc eax
mov dword [ebp - 0x1c], eax
xor esi, esi
lea ecx, [ebp - 0x20]
mov edx, esi
mov eax, dword [ebp - 0x18]
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, 0x514928
call fcn.00405740
test eax, eax
je 0x514788
lea ecx, [ebp - 8]
mov edx, esi
mov eax, dword [ebp - 0x18]
mov edi, dword [eax]
call dword [edi + 0xc]
movzx eax, byte [0x514930]
push eax
lea eax, [ebp - 0x24]
push eax
xor ecx, ecx
mov edx, 0x514928
mov eax, dword [ebp - 8]
call fcn.0040fb10
mov edx, dword [ebp - 0x24]
lea eax, [ebp - 8]
call fcn.004051fc
lea eax, [ebp - 8]
push eax
mov edx, dword [ebp - 8]
mov eax, 0x51493c
call fcn.00405740
mov ecx, eax
dec ecx
xor edx, edx
mov eax, dword [ebp - 8]
call fcn.0040565c
lea ecx, [ebp - 0xc]
mov edx, dword [ebp - 8]
mov eax, ebx
call fcn.0051139c
lea ecx, [ebp - 0x10]
mov edx, dword [ebp - 0xc]
mov eax, ebx
call fcn.00511724
cmp dword [ebp - 0x10], 0
je 0x514788
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov edx, dword [ebp - 0x10]
mov ecx, dword [eax]
call dword [ecx + 0x38]
inc esi
dec dword [ebp - 0x1c]
jne 0x5146ec
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5147f1
mov eax, 0x5148bc
call fcn.0040a750
test al, al
je 0x5147bd
mov eax, 0x5148bc
call fcn.004055f4
push eax
call sub.kernel32.dll_DeleteFileA
mov eax, 0x51490c
call fcn.0040a750
test al, al
je 0x5147db
mov eax, 0x51490c
call fcn.004055f4
push eax
call sub.kernel32.dll_DeleteFileA
cmp dword [ebp - 0x18], 0
je 0x5147e9
lea eax, [ebp - 0x18]
call fcn.00410398
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x514850
mov eax, 0x5148bc
call fcn.0040a750
test al, al
je 0x51481c
mov eax, 0x5148bc
call fcn.004055f4
push eax
call sub.kernel32.dll_DeleteFileA
mov eax, 0x51490c
call fcn.0040a750
test al, al
je 0x51483a
mov eax, 0x51490c
call fcn.004055f4
push eax
call sub.kernel32.dll_DeleteFileA
cmp dword [ebp - 0x18], 0
je 0x514848
lea eax, [ebp - 0x18]
call fcn.00410398
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x514865
ret