Function at 0x47f48c
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0
push 0
push ebx
push esi
push edi
call fcn.004041fc
je 0x47fc02
mov ebx, eax
xor eax, eax
push ebp
push 0x47fbf9
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.0047d208
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 [0x59eee0]
cmp byte [eax], 0
je 0x47f50a
mov edx, dword [0x59ec10]
mov edx, dword [edx]
mov eax, dword [esi + 0x80]
call fcn.004254b0
jmp 0x47f520
mov ecx, 0x47fc0c
mov eax, dword [esi + 0x80]
mov edx, dword [0x5a27f8]
call fcn.00425f4c
mov eax, dword [ebx + 0x9c]
mov dword [eax + 0xbc], ebx
mov dword [eax + 0xb8], 0x47d498
mov edx, 0x47fc20
call fcn.00425634
mov eax, dword [0x59ee20]
cmp byte [eax], 0
je 0x47f551
mov eax, ebx
call fcn.0047d410
push 0x7f00
mov eax, dword [0x5a27f8]
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 0x47f597
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 0x47f5b6
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 [0x59ec68]
mov ecx, dword [ecx]
mov edx, dword [0x59ed0c]
mov edx, dword [edx]
call fcn.00425918
mov dword [ebx + 0x58], eax
mov edx, dword [0x59ebd0]
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 [0x59e950]
mov edx, dword [edx]
mov dword [edx], eax
mov eax, dword [0x59ef6c]
movzx eax, byte [eax]
xor al, 1
mov edx, dword [0x59e950]
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 [0x59ecf4]
mov ecx, dword [ecx]
mov edx, dword [0x59ed84]
mov edx, dword [edx]
call fcn.00425918
mov dword [ebx + 0x60], eax
mov edx, dword [0x59ec58]
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 [0x59efb4]
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, 0x47fc34
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 [0x59edb8]
mov edx, dword [edx]
mov eax, dword [ebx + 0x68]
call fcn.00425834
mov edx, dword [0x59ed18]
mov edx, dword [edx]
mov eax, dword [ebx + 0x68]
call fcn.00425880
mov edx, dword [0x59ec94]
mov edx, dword [edx]
mov eax, dword [ebx + 0x68]
call fcn.00426130
mov edx, dword [0x59eb28]
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 [0x59ef5c]
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], 0x47f284
mov eax, dword [ebx + 0x9c]
xor edx, edx
call fcn.00426e34
mov dword [ebx + 0x94], eax
mov edx, dword [0x59ec08]
mov edx, dword [edx]
mov eax, dword [ebx + 0x94]
call fcn.00425834
mov edx, dword [0x59ecc4]
mov edx, dword [edx]
mov eax, dword [ebx + 0x94]
call fcn.00425880
mov edx, dword [0x59eaac]
mov edx, dword [edx]
mov eax, dword [ebx + 0x94]
call fcn.00426130
mov edx, dword [0x59ea84]
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 [0x59ee08]
mov edx, dword [edx]
mov eax, dword [ebx + 0x90]
call fcn.00425834
mov edx, dword [0x59eea8]
mov edx, dword [edx]
mov eax, dword [ebx + 0x90]
call fcn.00425880
mov edx, dword [0x59eccc]
mov edx, dword [edx]
mov eax, dword [ebx + 0x90]
call fcn.00426130
mov edx, dword [0x59ecac]
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 [0x59ea2c]
mov edx, dword [edx]
mov eax, dword [ebx + 0x98]
call fcn.00425834
mov edx, dword [0x59eb08]
mov edx, dword [edx]
mov eax, dword [ebx + 0x98]
call fcn.00425880
mov edx, dword [0x59e918]
mov edx, dword [edx]
mov eax, dword [ebx + 0x98]
call fcn.00426130
mov edx, dword [0x59e908]
mov edx, dword [edx]
mov eax, dword [ebx + 0x98]
call fcn.004258ec
mov eax, dword [0x59f0b0]
cmp dword [eax], 0
je 0x47f886
mov edx, dword [0x59f0b0]
mov edx, dword [edx]
mov eax, dword [ebx + 0x94]
call fcn.00426fd0
jmp 0x47f893
mov eax, dword [ebx + 0x94]
xor edx, edx
call fcn.00426130
mov eax, dword [0x59e8d0]
cmp dword [eax], 0
je 0x47f8b0
mov edx, dword [0x59e8d0]
mov edx, dword [edx]
mov eax, dword [ebx + 0x94]
call fcn.00427034
mov eax, dword [0x59ea44]
cmp dword [eax], 0
je 0x47f8cf
mov edx, dword [0x59ea44]
mov edx, dword [edx]
mov eax, dword [ebx + 0x90]
call fcn.00426fd0
jmp 0x47f8dc
mov eax, dword [ebx + 0x90]
xor edx, edx
call fcn.00426130
mov eax, dword [0x59eaa8]
cmp dword [eax], 0
je 0x47f8f9
mov edx, dword [0x59eaa8]
mov edx, dword [edx]
mov eax, dword [ebx + 0x90]
call fcn.00427034
mov eax, dword [0x59eec0]
cmp dword [eax], 0
je 0x47f918
mov edx, dword [0x59eec0]
mov edx, dword [edx]
mov eax, dword [ebx + 0x98]
call fcn.00426fd0
jmp 0x47f925
mov eax, dword [ebx + 0x98]
xor edx, edx
call fcn.00426130
mov eax, dword [0x59ef14]
cmp dword [eax], 0
je 0x47f942
mov edx, dword [0x59ef14]
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 [0x59ef7c]
mov edx, dword [edx]
mov eax, dword [ebx + 0x64]
call fcn.00425880
mov edx, dword [0x59f03c]
mov edx, dword [edx]
mov eax, dword [ebx + 0x64]
call fcn.00425834
mov edx, dword [0x59eec8]
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, 0x47fc40
call fcn.00425634
mov eax, dword [ebx + 0x64]
mov dword [eax + 0x44], ebx
mov dword [eax + 0x40], 0x47f22c
mov eax, dword [ebx + 0x9c]
xor ecx, ecx
xor edx, edx
call fcn.00426260
mov ecx, dword [0x59ee64]
mov ecx, dword [ecx]
mov edx, dword [0x59eef8]
mov edx, dword [edx]
call fcn.00425918
mov dword [ebx + 0x5c], eax
mov edx, dword [0x59edc0]
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], 0x47f3f8
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], 0x47f310
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], 0x47f368
mov edx, ebx
mov eax, dword [ebx + 0x9c]
call fcn.00423af4
mov ecx, 0x47c974
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, 0x47d908
mov edx, dword [0x59e97c]
mov dword [edx], eax
mov eax, 0x47d7b8
mov edx, dword [0x59f02c]
mov dword [edx], eax
mov eax, 0x47d9bc
mov edx, dword [0x59ef10]
mov dword [edx], eax
mov eax, ebx
call fcn.0047eb30
mov eax, ebx
mov edx, 0xc8
call fcn.0047d068
mov ecx, 0x47c81c
mov edx, ebx
lea eax, [ebx + 0x2e]
call fcn.00422cd8
mov ecx, 0x47f484
mov edx, ebx
lea eax, [ebx + 0x7e]
call fcn.00422cd8
mov ecx, 0x47c594
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 [0x59ea64]
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 [0x59edbc]
mov eax, dword [eax]
mov edx, 0x47fc54
call fcn.004057b4
je 0x47fba6
mov eax, dword [0x59edbc]
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 0x47fc00
lea eax, [ebp - 8]
mov edx, 2
call fcn.004053b0
ret
pop edi
pop esi
pop ebx
pop ecx
pop ecx
pop ebp
ret