Function at 0x40d848
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x45
push 0
push 0
dec ecx
jne 0x40d850
push ecx
push ebx
push esi
push edi
mov ebx, edx
mov edi, eax
lea esi, [ebp - 0x1dc]
xor eax, eax
push ebp
push 0x40dd96
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x1fc]
call fcn.00406970
mov edx, dword [ebp - 0x1fc]
lea eax, [ebp - 8]
mov ecx, 0x40ddac
call fcn.00402cac
lea eax, [ebp - 0x200]
call fcn.00406970
mov edx, dword [ebp - 0x200]
lea eax, [ebp - 0xc]
mov ecx, 0x40ddc0
call fcn.00402cac
mov edx, dword [ebp - 8]
mov eax, esi
call fcn.00401820
mov eax, esi
call fcn.004015b0
call fcn.004012c0
mov edx, 0x40ddd4
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40de24
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40de80
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40dee0
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
push 0x40df28
push dword [ebp - 0xc]
push 0x40df60
lea eax, [ebp - 0x204]
mov edx, 3
call fcn.00402d20
mov edx, dword [ebp - 0x204]
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40df74
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40df98
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40dfac
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40dfc0
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40dfec
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40e00c
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40e07c
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40e08c
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40e0bc
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40e0dc
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40e07c
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40e150
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov edx, 0x40e170
mov eax, esi
call fcn.00403044
call fcn.004020ec
call fcn.004012c0
mov eax, esi
call fcn.004019b8
call fcn.004012c0
lea eax, [ebp - 0x208]
call fcn.00406858
lea eax, [ebp - 0x208]
mov edx, 0x40e188
call fcn.00402c68
mov eax, dword [ebp - 0x208]
call fcn.00405df4
test al, al
je 0x40db23
push 0x40e19c
push dword [ebp - 8]
push 0x40e19c
lea eax, [ebp - 0x20c]
mov edx, 3
call fcn.00402d20
mov eax, dword [ebp - 0x20c]
call fcn.00402e58
push eax
lea edx, [ebp - 0x210]
mov eax, dword [ebp - 8]
call fcn.00405fc0
mov eax, dword [ebp - 0x210]
call fcn.00402e58
push eax
push 0
lea eax, [ebp - 0x214]
call fcn.00406858
lea eax, [ebp - 0x214]
mov edx, 0x40e188
call fcn.00402c68
mov eax, dword [ebp - 0x214]
call fcn.00402e58
mov ecx, eax
mov edx, 0x40e1a0
xor eax, eax
call fcn.004064b0
jmp 0x40dbdb
lea eax, [ebp - 0x218]
call fcn.004068e4
lea eax, [ebp - 0x218]
mov edx, 0x40e188
call fcn.00402c68
mov eax, dword [ebp - 0x218]
call fcn.00405df4
test al, al
je 0x40dbc8
push 0x40e19c
push dword [ebp - 8]
push 0x40e19c
lea eax, [ebp - 0x21c]
mov edx, 3
call fcn.00402d20
mov eax, dword [ebp - 0x21c]
call fcn.00402e58
push eax
lea edx, [ebp - 0x220]
mov eax, dword [ebp - 8]
call fcn.00405fc0
mov eax, dword [ebp - 0x220]
call fcn.00402e58
push eax
push 0
lea eax, [ebp - 0x224]
call fcn.004068e4
lea eax, [ebp - 0x224]
mov edx, 0x40e188
call fcn.00402c68
mov eax, dword [ebp - 0x224]
call fcn.00402e58
mov ecx, eax
mov edx, 0x40e1a0
xor eax, eax
call fcn.004064b0
jmp 0x40dbdb
mov eax, edi
call fcn.004029e4
mov eax, ebx
call fcn.004029e4
jmp 0x40dd6b
call sub.kernel32.dll_GetTickCount
mov dword [ebp - 0x10], eax
jmp 0x40dc35
lea eax, [ebp - 0x1f8]
push eax
call sub.user32.dll_TranslateMessage
lea eax, [ebp - 0x1f8]
push eax
call sub.user32.dll_DispatchMessageA
call sub.kernel32.dll_GetTickCount
xor edx, edx
push edx
push eax
mov eax, dword [ebp - 0x10]
add eax, 0x1388
cdq
cmp edx, dword [esp + 4]
jne 0x40dc1e
cmp eax, dword [esp]
pop edx
pop eax
jae 0x40dc35
jmp 0x40dc22
pop edx
pop eax
jge 0x40dc35
mov eax, edi
call fcn.004029e4
mov eax, ebx
call fcn.004029e4
jmp 0x40dd6b
mov eax, dword [ebp - 0xc]
call fcn.00405df4
test al, al
je 0x40dbe5
push 0x64
call sub.kernel32.dll_Sleep
mov eax, dword [ebp - 8]
call fcn.00402e58
push eax
call sub.kernel32.dll_DeleteFileA
mov eax, edi
call fcn.004029e4
mov eax, ebx
call fcn.004029e4
mov edx, dword [ebp - 0xc]
mov eax, esi
call fcn.00401820
mov eax, esi
call fcn.004015a4
call fcn.004012c0
jmp 0x40dd3d
lea edx, [ebp - 4]
mov eax, esi
call fcn.00401ca0
mov eax, esi
call fcn.00401d0c
call fcn.004012c0
lea eax, [ebp - 0x228]
push eax
mov ecx, 1
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.00402eb4
mov eax, dword [ebp - 0x228]
mov edx, 0x40e1b0
call fcn.00402da4
jne 0x40dcea
lea eax, [ebp - 4]
mov ecx, 4
mov edx, 1
call fcn.00402ef4
push dword [ebx]
push dword [ebp - 4]
push 0x40e1bc
mov eax, ebx
mov edx, 3
call fcn.00402d20
jmp 0x40dd3d
lea eax, [ebp - 0x22c]
push eax
mov ecx, 1
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.00402eb4
mov eax, dword [ebp - 0x22c]
mov edx, 0x40e1c8
call fcn.00402da4
jne 0x40dd3d
lea eax, [ebp - 4]
mov ecx, 4
mov edx, 1
call fcn.00402ef4
push dword [edi]
push dword [ebp - 4]
push 0x40e1bc
mov eax, edi
mov edx, 3
call fcn.00402d20
mov eax, esi
call fcn.00401a68
call fcn.004012c0
test al, al
je 0x40dc7f
mov eax, esi
call fcn.004019b8
call fcn.004012c0
mov eax, dword [ebp - 0xc]
call fcn.00402e58
push eax
call sub.kernel32.dll_DeleteFileA
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x40dd9d
lea eax, [ebp - 0x22c]
mov edx, 0xd
call fcn.00402a08
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.00402a08
ret