Function at 0x47eec0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
push ebx
push esi
push edi
call fcn.004041fc
je 0x47f636
mov ebx, eax
xor eax, eax
push ebp
push 0x47f62d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, ebx
xor edx, edx
call fcn.00423aa8
push 0
call sub.ole32.dll_OleInitialize
call fcn.0047cc3c
xor eax, eax
mov dword [ebx + 0x54], eax
push 0
push 0
mov cl, 1
xor edx, edx
xor eax, eax
call fcn.00426430
xor ecx, ecx
xor edx, edx
call fcn.004263f4
mov esi, eax
mov dword [ebx + 0x9c], esi
mov eax, dword [0x59dee0]
cmp byte [eax], 0
je 0x47ef3e
mov edx, dword [0x59dc10]
mov edx, dword [edx]
mov eax, dword [esi + 0x80]
call fcn.004254b0
jmp 0x47ef54
mov ecx, 0x47f640
mov eax, dword [esi + 0x80]
mov edx, dword [0x5a17f8]
call fcn.00425f4c
mov eax, dword [ebx + 0x9c]
mov dword [eax + 0xbc], ebx
mov dword [eax + 0xb8], 0x47cecc
mov edx, 0x47f654
call fcn.00425634
mov eax, dword [0x59de20]
cmp byte [eax], 0
je 0x47ef85
mov eax, ebx
call fcn.0047ce44
push 0x7f00
mov eax, dword [0x5a17f8]
push eax
call sub.user32.dll_LoadIconA
push eax
push 0
push 0x80
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 0x1c]
push eax
call sub.user32.dll_SendMessageA
push 0x4e
call sub.user32.dll_GetSystemMetrics
mov esi, eax
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 0x80]
sub esi, dword [eax + 0x24]
sar esi, 1
jns 0x47efcb
adc esi, 0
push 0x4f
call sub.user32.dll_GetSystemMetrics
mov edi, eax
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 0x80]
sub edi, dword [eax + 0x28]
sar edi, 1
jns 0x47efea
adc edi, 0
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 0x80]
mov eax, dword [eax + 0x24]
push eax
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 0x80]
mov eax, dword [eax + 0x28]
push eax
mov eax, dword [ebx + 0x9c]
mov ecx, edi
mov edx, esi
call fcn.004263f4
mov eax, dword [ebx + 0x9c]
xor ecx, ecx
xor edx, edx
call fcn.00426260
mov ecx, dword [0x59dc68]
mov ecx, dword [ecx]
mov edx, dword [0x59dd0c]
mov edx, dword [edx]
call fcn.00425918
mov dword [ebx + 0x58], eax
mov edx, dword [0x59dbd0]
mov edx, dword [edx]
mov eax, dword [ebx + 0x58]
call fcn.00426130
mov eax, dword [ebx + 0x58]
mov edx, 0xffff
call fcn.00425ad0
mov eax, dword [ebx + 0x58]
mov dl, 1
call fcn.004261d0
call sub.kernel32.dll_GetCurrentProcessId
mov edx, dword [0x59d950]
mov edx, dword [edx]
mov dword [edx], eax
mov eax, dword [0x59df6c]
movzx eax, byte [eax]
xor al, 1
mov edx, dword [0x59d950]
mov edx, dword [edx]
mov byte [edx + 4], al
mov eax, dword [ebx + 0x9c]
xor ecx, ecx
xor edx, edx
call fcn.00426260
mov ecx, dword [0x59dcf4]
mov ecx, dword [ecx]
mov edx, dword [0x59dd84]
mov edx, dword [edx]
call fcn.00425918
mov dword [ebx + 0x60], eax
mov edx, dword [0x59dc58]
mov edx, dword [edx]
mov eax, dword [ebx + 0x60]
call fcn.00426130
mov eax, dword [ebx + 0x60]
mov edx, 0xbdd0ee
call fcn.00425ad0
mov eax, dword [ebx + 0x60]
mov dl, 1
call fcn.004261d0
mov eax, dword [0x59dfb4]
mov eax, dword [eax]
xor edx, edx
push edx
push eax
lea eax, [ebp - 8]
call fcn.00421f90
mov ecx, dword [ebp - 8]
lea eax, [ebp - 4]
mov edx, 0x47f668
call fcn.004056a4
mov edx, dword [ebp - 4]
mov eax, dword [ebx + 0x60]
call fcn.00425634
mov eax, dword [ebx + 0x9c]
xor edx, edx
call fcn.00426e34
mov dword [ebx + 0x68], eax
mov edx, dword [0x59ddb8]
mov edx, dword [edx]
mov eax, dword [ebx + 0x68]
call fcn.00425834
mov edx, dword [0x59dd18]
mov edx, dword [edx]
mov eax, dword [ebx + 0x68]
call fcn.00425880
mov edx, dword [0x59dc94]
mov edx, dword [edx]
mov eax, dword [ebx + 0x68]
call fcn.00426130
mov edx, dword [0x59db28]
mov edx, dword [edx]
mov eax, dword [ebx + 0x68]
call fcn.00425ad0
mov eax, dword [ebx + 0x68]
mov dl, 1
call fcn.004261d0
mov edx, dword [0x59df5c]
mov edx, dword [edx]
mov eax, dword [ebx + 0x68]
call fcn.00425634
mov eax, dword [ebx + 0x68]
mov dword [eax + 0x44], ebx
mov dword [eax + 0x40], 0x47ecb8
mov eax, dword [ebx + 0x9c]
xor edx, edx
call fcn.00426e34
mov dword [ebx + 0x94], eax
mov edx, dword [0x59dc08]
mov edx, dword [edx]
mov eax, dword [ebx + 0x94]
call fcn.00425834
mov edx, dword [0x59dcc4]
mov edx, dword [edx]
mov eax, dword [ebx + 0x94]
call fcn.00425880
mov edx, dword [0x59daac]
mov edx, dword [edx]
mov eax, dword [ebx + 0x94]
call fcn.00426130
mov edx, dword [0x59da84]
mov edx, dword [edx]
mov eax, dword [ebx + 0x94]
call fcn.004258ec
mov eax, dword [ebx + 0x9c]
xor edx, edx
call fcn.00426e34
mov dword [ebx + 0x90], eax
mov edx, dword [0x59de08]
mov edx, dword [edx]
mov eax, dword [ebx + 0x90]
call fcn.00425834
mov edx, dword [0x59dea8]
mov edx, dword [edx]
mov eax, dword [ebx + 0x90]
call fcn.00425880
mov edx, dword [0x59dccc]
mov edx, dword [edx]
mov eax, dword [ebx + 0x90]
call fcn.00426130
mov edx, dword [0x59dcac]
mov edx, dword [edx]
mov eax, dword [ebx + 0x90]
call fcn.004258ec
mov eax, dword [ebx + 0x9c]
xor edx, edx
call fcn.00426e34
mov dword [ebx + 0x98], eax
mov edx, dword [0x59da2c]
mov edx, dword [edx]
mov eax, dword [ebx + 0x98]
call fcn.00425834
mov edx, dword [0x59db08]
mov edx, dword [edx]
mov eax, dword [ebx + 0x98]
call fcn.00425880
mov edx, dword [0x59d918]
mov edx, dword [edx]
mov eax, dword [ebx + 0x98]
call fcn.00426130
mov edx, dword [0x59d908]
mov edx, dword [edx]
mov eax, dword [ebx + 0x98]
call fcn.004258ec
mov eax, dword [0x59e0b0]
cmp dword [eax], 0
je 0x47f2ba
mov edx, dword [0x59e0b0]
mov edx, dword [edx]
mov eax, dword [ebx + 0x94]
call fcn.00426fd0
jmp 0x47f2c7
mov eax, dword [ebx + 0x94]
xor edx, edx
call fcn.00426130
mov eax, dword [0x59d8d0]
cmp dword [eax], 0
je 0x47f2e4
mov edx, dword [0x59d8d0]
mov edx, dword [edx]
mov eax, dword [ebx + 0x94]
call fcn.00427034
mov eax, dword [0x59da44]
cmp dword [eax], 0
je 0x47f303
mov edx, dword [0x59da44]
mov edx, dword [edx]
mov eax, dword [ebx + 0x90]
call fcn.00426fd0
jmp 0x47f310
mov eax, dword [ebx + 0x90]
xor edx, edx
call fcn.00426130
mov eax, dword [0x59daa8]
cmp dword [eax], 0
je 0x47f32d
mov edx, dword [0x59daa8]
mov edx, dword [edx]
mov eax, dword [ebx + 0x90]
call fcn.00427034
mov eax, dword [0x59dec0]
cmp dword [eax], 0
je 0x47f34c
mov edx, dword [0x59dec0]
mov edx, dword [edx]
mov eax, dword [ebx + 0x98]
call fcn.00426fd0
jmp 0x47f359
mov eax, dword [ebx + 0x98]
xor edx, edx
call fcn.00426130
mov eax, dword [0x59df14]
cmp dword [eax], 0
je 0x47f376
mov edx, dword [0x59df14]
mov edx, dword [edx]
mov eax, dword [ebx + 0x98]
call fcn.00427034
mov eax, dword [ebx + 0x9c]
xor edx, edx
call fcn.00426e34
mov dword [ebx + 0x64], eax
mov edx, dword [0x59df7c]
mov edx, dword [edx]
mov eax, dword [ebx + 0x64]
call fcn.00425880
mov edx, dword [0x59e03c]
mov edx, dword [edx]
mov eax, dword [ebx + 0x64]
call fcn.00425834
mov edx, dword [0x59dec8]
mov edx, dword [edx]
mov eax, dword [ebx + 0x64]
call fcn.00426130
mov eax, dword [ebx + 0x64]
mov edx, 0xbdd0ee
call fcn.00425ad0
mov eax, dword [ebx + 0x64]
mov dl, 1
call fcn.004261d0
mov eax, dword [ebx + 0x64]
mov edx, 0x47f674
call fcn.00425634
mov eax, dword [ebx + 0x64]
mov dword [eax + 0x44], ebx
mov dword [eax + 0x40], 0x47ec60
mov eax, dword [ebx + 0x9c]
xor ecx, ecx
xor edx, edx
call fcn.00426260
mov ecx, dword [0x59de64]
mov ecx, dword [ecx]
mov edx, dword [0x59def8]
mov edx, dword [edx]
call fcn.00425918
mov dword [ebx + 0x5c], eax
mov edx, dword [0x59ddc0]
mov edx, dword [edx]
mov eax, dword [ebx + 0x5c]
call fcn.00426130
mov eax, dword [ebx + 0x5c]
mov edx, 0xbdd0ee
call fcn.00425ad0
mov eax, dword [ebx + 0x5c]
mov dl, 1
call fcn.004261d0
mov eax, dword [ebx + 0x5c]
xor edx, edx
call fcn.00425b40
mov eax, dword [ebx + 0x90]
mov dl, 1
call fcn.004261d0
mov eax, dword [ebx + 0x90]
mov dword [eax + 0x44], ebx
mov dword [eax + 0x40], 0x47ee2c
mov eax, dword [ebx + 0x94]
mov dl, 1
call fcn.004261d0
mov eax, dword [ebx + 0x94]
mov dword [eax + 0x44], ebx
mov dword [eax + 0x40], 0x47ed44
mov eax, dword [ebx + 0x98]
mov dl, 1
call fcn.004261d0
mov eax, dword [ebx + 0x98]
mov dword [eax + 0x44], ebx
mov dword [eax + 0x40], 0x47ed9c
mov edx, ebx
mov eax, dword [ebx + 0x9c]
call fcn.00423af4
mov ecx, 0x47c3a8
mov edx, ebx
lea eax, [ebx + 0x1c]
call fcn.00422cd8
lea eax, [ebx + 0x1c]
push eax
push 0x64
push 0x58
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 0x1c]
push eax
call sub.user32.dll_SetTimer
mov eax, 0x47d338
mov edx, dword [0x59d97c]
mov dword [edx], eax
mov eax, 0x47d1e8
mov edx, dword [0x59e02c]
mov dword [edx], eax
mov eax, 0x47d3ec
mov edx, dword [0x59df10]
mov dword [edx], eax
mov eax, ebx
call fcn.0047e564
mov eax, ebx
mov edx, 0xc8
call fcn.0047ca9c
mov ecx, 0x47c250
mov edx, ebx
lea eax, [ebx + 0x2e]
call fcn.00422cd8
mov ecx, 0x47eeb8
mov edx, ebx
lea eax, [ebx + 0x7e]
call fcn.00422cd8
mov ecx, 0x47bfc8
mov edx, ebx
lea eax, [ebx + 0x6c]
call fcn.00422cd8
lea eax, [ebx + 0x2e]
push eax
push 0x3e8
push 0x59
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 0x1c]
push eax
call sub.user32.dll_SetTimer
lea eax, [ebx + 0x6c]
push eax
push 0x3e8
push 0xde
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 0x1c]
push eax
call sub.user32.dll_SetTimer
push 1
call main
push 1
call main
lea eax, [ebx + 0x7e]
push eax
push 0xea60
push 0xe9
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 0x1c]
push eax
call sub.user32.dll_SetTimer
mov eax, dword [0x59da64]
mov byte [eax], 1
push 0x13
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 0x1c]
push eax
call sub.user32.dll_SetWindowPos
mov eax, dword [0x59ddbc]
mov eax, dword [eax]
mov edx, 0x47f688
call fcn.004057b4
je 0x47f5da
mov eax, dword [0x59ddbc]
mov eax, dword [eax]
call fcn.0040581c
push eax
call sub.kernel32.dll_DeleteFileA
mov eax, dword [ebx + 0x9c]
mov edx, dword [eax + 0x80]
mov ecx, dword [edx + 0x24]
push ecx
mov edx, dword [edx + 0x28]
push edx
mov ecx, edi
mov edx, esi
call fcn.004263f4
push 0x13
push 0
push 0
push 0
push 0
push 0xfffffffffffffffe
mov eax, dword [ebx + 0x9c]
mov eax, dword [eax + 0x1c]
push eax
call sub.user32.dll_SetWindowPos
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x47f634
lea eax, [ebp - 8]
mov edx, 2
call fcn.004053b0
ret
pop edi
pop esi
pop ebx
pop ecx
pop ecx
pop ebp
ret