Function at 0x53e852
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xa
push 0
push 0
dec ecx
jne 0x53e274
push ebx
push esi
push edi
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x53e9b3
push dword fs:[eax]
mov dword fs:[eax], esp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [0x58344c]
cmp byte [eax], 0
jne case.default.0x53e3ed
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 4]
cmp byte [eax + 0x24], 0
jne case.default.0x53e3ed
xor ebx, ebx
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 4
jae 0x53e3a5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
xor edx, edx
call fcn.0040d74c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.0040d52c
test al, al
je 0x53e383
lea edx, [ebp - 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.0047f0f8
mov eax, dword [ebp - 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x18]
call fcn.00405a0c
jne 0x53e383
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 1
jne 0x53e37f
mov eax, dword [0x583ca4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x10]
call fcn.00405638
lea edx, [ebp - 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.0040dae4
mov edx, dword [ebp - 0x10]
mov eax, dword [0x5836dc]
call fcn.00405638
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.0040d9a4
mov edx, dword [ebp - 0x14]
mov eax, dword [0x583dcc]
call fcn.00405638
mov eax, dword [0x5834f4]
mov byte [eax], 1
mov bl, 1
jmp 0x53e3c3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.0040d52c
test al, al
je 0x53e3c3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.00405a74
push eax
call sub.kernel32.dll_DeleteFileA
jmp 0x53e3c3
mov bl, 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.0040d52c
test al, al
je 0x53e3c3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
xor edx, edx
call fcn.0040d74c
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
test bl, bl
je 0x53e8da
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 4]
cmp eax, 6
ja case.default.0x53e3ed
jmp dword [eax*4 + 0x53e3f4]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x18]
call fcn.0040c588
mov eax, dword [ebp - 0x18]
push eax
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.0047f0f8
mov eax, dword [ebp - 0x20]
lea edx, [ebp - 0x1c]
call fcn.0040c588
mov eax, dword [ebp - 0x1c]
pop edx
call fcn.0040c794
test eax, eax
jne 0x53e4a3
mov eax, dword [ebp - 4]
mov byte [eax + 0x38], 1
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc]
lea eax, [ebp - 0x24]
call fcn.004058fc
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x10]
mov eax, dword [ebp - 4]
call fcn.0053db00
mov eax, dword [ebp - 4]
mov byte [eax + 0x1c], 1
jmp case.default.0x53e3ed
mov eax, dword [ebp - 4]
cmp dword [eax + 0x20], 2
jge case.default.0x53e3ed
mov eax, dword [ebp - 4]
cmp byte [eax + 0x24], 0
jne case.default.0x53e3ed
mov eax, dword [ebp - 4]
inc dword [eax + 0x20]
jmp 0x53e2d2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea edx, [ebp - 0x28]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x18]
call fcn.0040c588
mov eax, dword [ebp - 0x28]
push eax
lea edx, [ebp - 0x30]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.0047f0f8
mov eax, dword [ebp - 0x30]
lea edx, [ebp - 0x2c]
call fcn.0040c588
mov eax, dword [ebp - 0x2c]
pop edx
call fcn.0040c794
test eax, eax
jne 0x53e5f0
mov dl, 1
mov eax, dword [0x41c37c]
call fcn.00404674
mov dword [ebp - 8], eax
xor eax, eax
push ebp
push 0x53e566
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x10]
mov eax, dword [ebp - 8]
call fcn.004218d8
push 0
push 0
mov eax, dword [ebp - 8]
call fcn.00421108
mov eax, dword [0x583f5c]
mov eax, dword [eax]
mov edx, dword [ebp - 8]
call fcn.00483f20
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x53e590
mov eax, dword [ebp - 8]
call fcn.004046a4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 4]
mov byte [eax + 0x38], 1
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc]
lea eax, [ebp - 0x34]
call fcn.004058fc
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x10]
mov eax, dword [ebp - 4]
call fcn.0053db00
mov eax, dword [ebp - 4]
mov byte [eax + 0x1c], 1
jmp 0x53e60d
mov eax, dword [ebp - 4]
cmp dword [eax + 0x20], 2
jge 0x53e60d
mov eax, dword [ebp - 4]
cmp byte [eax + 0x24], 0
jne 0x53e60d
mov eax, dword [ebp - 4]
inc dword [eax + 0x20]
jmp 0x53e2d2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp case.default.0x53e3ed
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
lea edx, [ebp - 0x38]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x18]
call fcn.0040c588
mov eax, dword [ebp - 0x38]
push eax
lea edx, [ebp - 0x40]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.0047f0f8
mov eax, dword [ebp - 0x40]
lea edx, [ebp - 0x3c]
call fcn.0040c588
mov eax, dword [ebp - 0x3c]
pop edx
call fcn.0040c794
test eax, eax
jne 0x53e6c5
mov eax, dword [0x583ca4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x10]
call fcn.00405638
lea edx, [ebp - 0x44]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.0040dae4
mov edx, dword [ebp - 0x44]
mov eax, dword [0x5836dc]
call fcn.00405638
lea edx, [ebp - 0x48]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.0040d9a4
mov edx, dword [ebp - 0x48]
mov eax, dword [0x583dcc]
call fcn.00405638
mov eax, dword [0x5834f4]
mov byte [eax], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x1c], 1
jmp 0x53e6e2
mov eax, dword [ebp - 4]
cmp dword [eax + 0x20], 2
jge 0x53e6e2
mov eax, dword [ebp - 4]
cmp byte [eax + 0x24], 0
jne 0x53e6e2
mov eax, dword [ebp - 4]
inc dword [eax + 0x20]
jmp 0x53e2d2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp case.default.0x53e3ed
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 4]
mov byte [eax + 0x38], 2
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x10]
mov eax, dword [ebp - 4]
call fcn.0053e0e4
test al, al
je 0x53e744
mov eax, dword [ebp - 4]
mov byte [eax + 0x1c], 1
jmp 0x53e761
mov eax, dword [ebp - 4]
cmp dword [eax + 0x20], 2
jge 0x53e761
mov eax, dword [ebp - 4]
cmp byte [eax + 0x24], 0
jne 0x53e761
mov eax, dword [ebp - 4]
inc dword [eax + 0x20]
jmp 0x53e2d2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp case.default.0x53e3ed
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 4]
mov byte [eax + 0x38], 1
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc]
lea eax, [ebp - 0x4c]
call fcn.004058fc
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x10]
mov eax, dword [ebp - 4]
call fcn.0053db00
mov eax, dword [ebp - 4]
mov byte [eax + 0x1c], 1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp case.default.0x53e3ed
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 4]
mov byte [eax + 0x38], 1
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc]
lea eax, [ebp - 0x50]
call fcn.004058fc
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x10]
mov eax, dword [ebp - 4]
call fcn.0053db00
mov eax, dword [ebp - 4]
mov byte [eax + 0x1c], 1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp case.default.0x53e3ed
mov eax, dword [0x58344c]
cmp byte [eax], 0
jne 0x53e8c3
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 4]
mov byte [eax + 0x38], 2
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x10]
mov eax, dword [ebp - 4]
call fcn.0053e0e4
test al, al
jne 0x53e8bc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
xor edx, edx
call fcn.0040d74c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.00405a74
push eax
call sub.kernel32.dll_DeleteFileA
mov eax, dword [ebp - 4]
mov byte [eax + 0x1c], 1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp case.default.0x53e3ed
mov eax, dword [0x58344c]
cmp byte [eax], 0
jne case.default.0x53e3ed
mov eax, dword [ebp - 4]
cmp dword [eax + 0x20], 2
jge case.default.0x53e3ed
mov eax, dword [ebp - 4]
cmp byte [eax + 0x24], 0
jne case.default.0x53e3ed
mov eax, dword [ebp - 4]
mov byte [eax + 0x38], 0
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 1
jne 0x53e942
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
xor edx, edx
call fcn.0040d74c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x10]
call fcn.00405a74
push eax
call sub.kernel32.dll_DeleteFileA
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
push 1
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x14]
mov eax, dword [ebp - 4]
call fcn.0053dd80
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [ebp - 4]
inc dword [eax + 0x20]
jmp 0x53e2d2
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x53e9ba
lea eax, [ebp - 0x50]
mov edx, 0x12
call fcn.00405608
ret