Function at 0x4c44e0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd0
push ebx
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 4], ecx
mov dword [ebp - 0xc], edx
mov dword [ebp - 8], eax
xor eax, eax
push ebp
push 0x4c4769
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0x15], 0
xor eax, eax
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x14], eax
lea edx, [ebp - 4]
mov eax, 0x2d5c
call fcn.0040a86c
lea eax, [ebp - 0x1c]
push eax
mov ecx, 7
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.0040554c
mov eax, dword [ebp - 0x1c]
xor edx, edx
call fcn.0040a548
mov ebx, eax
cmp ebx, 0x1b5030
jle 0x4c4714
lea eax, [ebp - 0x20]
push eax
mov ecx, 0x4c4780
mov edx, 0x4c4790
mov eax, dword [ebp - 8]
call fcn.004c3408
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 8]
add eax, 0x114
call fcn.0040507c
xor eax, eax
push ebp
push 0x4c470d
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x2d5d
push 0xa
mov ecx, dword [0x4e57f8]
mov dl, 1
mov eax, dword [0x419e4c]
call fcn.0041effc
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx]
cmp edx, 0
jne 0x4c45b5
cmp eax, 0xc350
seta al
jmp 0x4c45b8
setg al
cmp dword [ebp - 0x14], 0
setne dl
and al, dl
je 0x4c46a3
lea edx, [ebp - 0x18]
mov ecx, 2
mov eax, dword [ebp - 0x14]
call fcn.0041e858
push 0
push 0
mov eax, dword [ebp - 0x14]
call fcn.0041e64c
push 0xffff
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x114]
mov dl, 1
mov eax, dword [0x419ccc]
call fcn.0041eb44
mov dword [ebp - 0x10], eax
cmp word [ebp - 0x18], 0x5a4d
jne 0x4c4639
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx]
push edx
push eax
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
call fcn.0041e8c8
push edx
push eax
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx]
cmp edx, dword [esp + 4]
jne 0x4c462e
cmp eax, dword [esp]
sete al
add esp, 8
mov byte [ebp - 0x15], al
jmp 0x4c4653
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
call dword [edx]
mov ecx, eax
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
call fcn.004bfca0
test eax, eax
sete byte [ebp - 0x15]
mov eax, dword [ebp - 8]
movzx eax, byte [eax + 0xe8]
and al, byte [ebp - 0x15]
je 0x4c46a3
lea eax, [ebp - 4]
push eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x114]
mov dword [ebp - 0x30], eax
mov byte [ebp - 0x2c], 0xb
mov dword [ebp - 0x28], ebx
mov byte [ebp - 0x24], 0
lea edx, [ebp - 0x30]
mov ecx, 1
mov eax, 0x4c479c
call fcn.0040b924
mov eax, dword [ebp - 4]
push eax
push 0
push 0
xor ecx, ecx
mov dl, 4
mov eax, dword [ebp - 8]
call fcn.004c35b4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4c4735
lea eax, [ebp - 0x10]
call fcn.0041061c
lea eax, [ebp - 0x14]
call fcn.0041061c
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x114]
call fcn.0040a980
movzx edx, byte [ebp - 0x15]
xor dl, 1
and al, dl
je 0x4c46ed
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x114]
call fcn.004054ec
push eax
call sub.kernel32.dll_DeleteFileA
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x114]
call fcn.0040a980
test al, al
jne 0x4c470c
mov eax, dword [ebp - 8]
add eax, 0x114
call fcn.00405028
ret
mov eax, dword [ebp - 8]
cmp byte [eax + 0xe8], 0
je 0x4c4735
push 0x4c47c4
push 0
push 0
xor ecx, ecx
mov dl, 4
mov eax, dword [ebp - 8]
call fcn.004c35b4
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x114]
call fcn.0040507c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4c4770
lea eax, [ebp - 0x20]
mov edx, 2
call fcn.0040504c
lea eax, [ebp - 4]
call fcn.00405028
ret