Function at 0x40cf56
Capabilities:
Delete file
Terminate process

Disassembly:
push ebp
lea ebp, [esp - 0x70]
sub esp, 0x2f8
mov eax, dword [0x4377f4]
push ebx
xor eax, ebp
push esi
mov dword [ebp + 0x6c], eax
push edi
lea eax, [ebp - 0x94]
mov dword [ebp - 0x214], ecx
mov ecx, dword [0x438844]
xor ebx, ebx
push eax
mov dword [ebp - 0x224], ebx
call fcn.0040bc77
cmp dword [ebp - 0x80], ebx
je 0x40d126
push 0xf
pop edi
push ebx
lea ecx, [ebp - 0x1ac]
mov dword [ebp - 0x194], edi
call fcn.00402121
push ebx
push ebx
xor esi, esi
push ebx
inc esi
lea eax, [ebp - 0x1ac]
push esi
push eax
call fcn.00418fc0
add esp, 0x14
push str..exe
lea ecx, [ebp - 0xb0]
call fcn.0040299a
push eax
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0x78]
push eax
call fcn.00402a92
add esp, 0xc
push eax
lea ecx, [ebp - 0x1c8]
call fcn.004028ce
push ebx
push esi
lea ecx, [ebp - 0x78]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0xb0]
call fcn.00402285
lea eax, [ebp - 0x1c8]
push eax
lea eax, [ebp - 0x250]
push eax
mov dword [ebp - 0x24c], ebx
mov dword [ebp - 0x248], ebx
mov dword [ebp - 0x244], ebx
call fcn.004196a0
lea eax, [ebp - 0x1ac]
push eax
mov dword [ebp - 0x218], ebx
call fcn.00414190
mov dword [ebp - 0x220], eax
lea eax, [ebp - 0x1c8]
push eax
call fcn.00414190
add esp, 0x10
push dword [ebp - 0x220]
mov ecx, eax
call fcn.0040213d
test eax, eax
jne 0x40d06c
mov dword [ebp - 0x218], esi
cmp dword [ebp - 0x24c], ebx
je 0x40d09a
mov eax, dword [ebp - 0x248]
sub eax, dword [ebp - 0x24c]
sar eax, 2
cmp eax, dword [ebp - 0x218]
jbe 0x40d09a
sub esp, 0x1c
mov ecx, esp
push str.Please_close_the_application_before_uninstalling_it
jmp 0x40d130
cmp byte [ebp + 0x78], bl
je 0x40d0fa
push 0xc8
lea eax, [ebp - 0x5c]
push ebx
push eax
call fcn.0041c310
mov eax, dword [ebp - 0x90]
add esp, 0xc
cmp dword [ebp - 0x7c], 0x10
jae 0x40d0c3
lea eax, [ebp - 0x90]
push eax
lea eax, [ebp - 0x5c]
push str.Are_you_sure_you_want_to_uninstall__s_
push eax
call fcn.0041da3b
add esp, 0xc
push 4
push str.Uninstall
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [ebp - 0x214]
push dword [eax + 4]
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 6
je 0x40d0fa
push ebx
call fcn.0041dc1a
push ebx
lea ecx, [ebp - 0x104]
mov dword [ebp - 0xec], edi
call fcn.00402121
mov ecx, dword [ebp - 0x214]
lea eax, [ebp - 0x104]
push eax
call fcn.0040b53c
cmp dword [ebp - 0xf0], ebx
jne 0x40d140
sub esp, 0x1c
mov ecx, esp
push str.Failed_to_uninstall
call fcn.0040299a
mov ecx, dword [ebp - 0x214]
call fcn.0040ab47
mov eax, dword [ebp - 0x214]
cmp dword [eax + 0x24], ebx
jne 0x40d1aa
push 0x24
call fcn.0041b48d
cmp eax, ebx
pop ecx
mov dword [ebp - 0x220], eax
je 0x40d18c
mov eax, dword [ebp - 0x214]
mov eax, dword [eax + 0x2c]
imul eax, eax, 0x32
add eax, 0x434756
push eax
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x224], esi
call fcn.0040299a
mov ecx, dword [ebp - 0x220]
push eax
push esi
call fcn.00412610
jmp 0x40d18e
xor eax, eax
test byte [ebp - 0x224], 1
mov ecx, dword [ebp - 0x214]
mov dword [ecx + 0x24], eax
je 0x40d1aa
push ebx
push esi
lea ecx, [ebp - 0x78]
call fcn.00402285
mov eax, dword [ebp - 0x214]
mov eax, dword [eax + 0x2c]
cmp eax, esi
je 0x40d1c0
cmp eax, 3
jne 0x40d3bb
push ebx
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0xb4], edi
call fcn.00402121
push ebx
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0x98], edi
call fcn.00402121
push ebx
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0xd0], edi
call fcn.00402121
push ebx
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x60], edi
call fcn.00402121
lea eax, [ebp - 0xcc]
push eax
push 0x1c
call fcn.00409973
pop ecx
pop ecx
lea eax, [ebp - 0x94]
push eax
push 0x42c6fc
lea eax, [ebp - 0xcc]
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.00402e85
add esp, 0xc
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.00402a92
push eax
call fcn.00418f60
add esp, 0x10
neg al
sbb al, al
push ebx
inc al
push esi
lea ecx, [ebp - 0x26c]
mov byte [ebp - 0x219], al
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x288]
call fcn.00402285
cmp byte [ebp - 0x219], bl
je 0x40d288
lea eax, [ebp - 0xcc]
push eax
push 0x26
call fcn.00409973
pop ecx
pop ecx
push str.Bin
lea eax, [ebp - 0x94]
push eax
push 0x42c6fc
lea eax, [ebp - 0xcc]
push eax
lea eax, [ebp - 0x240]
push eax
call fcn.00402e85
add esp, 0xc
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.00402a92
add esp, 0xc
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.00402e85
add esp, 0xc
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0xb0]
call fcn.004026ab
push ebx
push esi
lea ecx, [ebp - 0x288]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x26c]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x240]
call fcn.00402285
push str.unins000.exe
lea eax, [ebp - 0xb0]
push eax
lea eax, [ebp - 0x240]
push eax
call fcn.00402e85
add esp, 0xc
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0xe8]
call fcn.004026ab
push ebx
push esi
lea ecx, [ebp - 0x240]
call fcn.00402285
push str.__verysilent
lea eax, [ebp - 0xe8]
push eax
lea eax, [ebp - 0x240]
push eax
call fcn.00402e85
add esp, 0xc
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x78]
call fcn.004026ab
push ebx
push esi
lea ecx, [ebp - 0x240]
call fcn.00402285
lea eax, [ebp - 0xb0]
push eax
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0xe8]
push eax
call fcn.00414d80
add esp, 0xc
push ebx
push esi
lea ecx, [ebp - 0x78]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0xe8]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0xb0]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0xcc]
call fcn.00402285
mov dword [ebp - 0x218], str._Server_
push 0x42c5d4
lea ecx, [ebp - 0x78]
call fcn.0040299a
lea eax, [ebp - 0x78]
push eax
push dword [ebp - 0x218]
lea eax, [ebp - 0x104]
push eax
lea eax, [ebp - 0x240]
push eax
call fcn.00402e85
add esp, 0xc
push eax
mov eax, dword [ebp - 0x214]
mov ecx, dword [eax + 0x24]
call fcn.00412260
push ebx
push esi
lea ecx, [ebp - 0x240]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x78]
call fcn.00402285
add dword [ebp - 0x218], 0x42f
cmp dword [ebp - 0x218], 0x437578
jl 0x40d3c5
push 0x42c5d4
lea ecx, [ebp - 0x78]
call fcn.0040299a
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x94]
push eax
mov eax, dword [ebp - 0x214]
mov ecx, dword [eax + 0x24]
call fcn.00412260
push ebx
push esi
lea ecx, [ebp - 0x78]
call fcn.00402285
push str.MicrosoftWindowsCurrentVersionUninstall
lea ecx, [ebp - 0x78]
call fcn.0040299a
lea eax, [ebp - 0x78]
push eax
push esi
lea ecx, [ebp - 0x1ec]
call fcn.00412610
push ebx
push esi
lea ecx, [ebp - 0x78]
call fcn.00402285
push 0x42c5d4
lea ecx, [ebp - 0x78]
call fcn.0040299a
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x94]
push eax
lea ecx, [ebp - 0x1ec]
call fcn.00412260
push ebx
push esi
lea ecx, [ebp - 0x78]
call fcn.00402285
push str.MicrosoftWindowsCurrentVersionUninstall
lea ecx, [ebp - 0x78]
call fcn.0040299a
lea eax, [ebp - 0x78]
push eax
push ebx
lea ecx, [ebp - 0x210]
call fcn.00412610
push ebx
push esi
lea ecx, [ebp - 0x78]
call fcn.00402285
push 0x42c5d4
lea ecx, [ebp - 0x78]
call fcn.0040299a
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x94]
push eax
lea ecx, [ebp - 0x210]
call fcn.00412260
push ebx
push esi
lea ecx, [ebp - 0x78]
call fcn.00402285
push ebx
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x124], edi
call fcn.00402121
push ebx
lea ecx, [ebp - 0x158]
mov dword [ebp - 0x140], edi
call fcn.00402121
push ebx
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x15c], edi
call fcn.00402121
push ebx
lea ecx, [ebp - 0x190]
mov dword [ebp - 0x178], edi
call fcn.00402121
mov dword [ebp - 0x108], edi
push ebx
lea ecx, [ebp - 0x120]
call fcn.00402121
lea eax, [ebp - 0x120]
push eax
push 0xb
call fcn.00409973
lea eax, [ebp - 0x13c]
push eax
push ebx
call fcn.00409973
lea eax, [ebp - 0x158]
push eax
push 2
call fcn.00409973
lea eax, [ebp - 0x174]
push eax
push 0x26
call fcn.00409973
lea eax, [ebp - 0x190]
push eax
push 0x1c
call fcn.00409973
add esp, 0x18
mov ecx, esp
push ebx
call fcn.00403b2c
lea eax, [ebp - 0x94]
push eax
push 0x42c6fc
lea ecx, [ebp - 0x26c]
call fcn.0040299a
push eax
lea eax, [ebp - 0x190]
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.00402a92
add esp, 0xc
push eax
lea eax, [ebp - 0x240]
push eax
call fcn.00402a92
sub esp, 0x10
mov ecx, esp
push eax
call fcn.004028ce
call fcn.0041a520
add esp, 0x2c
push ebx
push esi
lea ecx, [ebp - 0x240]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x288]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x26c]
call fcn.00402285
sub esp, 0x10
mov ecx, esp
push ebx
call fcn.00403b2c
sub esp, 0x1c
mov edi, esp
lea eax, [ebp - 0x94]
push eax
push str.C:ProgramDataMicrosoftWindowsStart_MenuPrograms_
lea ecx, [ebp - 0x240]
call fcn.0040299a
push eax
push edi
call fcn.00402a92
add esp, 0xc
call fcn.0041a520
add esp, 0x2c
push ebx
push esi
lea ecx, [ebp - 0x240]
call fcn.00402285
sub esp, 0x10
mov ecx, esp
push ebx
call fcn.00403b2c
lea eax, [ebp - 0x94]
push eax
mov edi, 0x42c6fc
push edi
lea ecx, [ebp - 0x26c]
call fcn.0040299a
push eax
lea eax, [ebp - 0x174]
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.00402a92
add esp, 0xc
push eax
lea eax, [ebp - 0x240]
push eax
call fcn.00402a92
sub esp, 0x10
mov ecx, esp
push eax
call fcn.004028ce
call fcn.0041a520
add esp, 0x2c
push ebx
push esi
lea ecx, [ebp - 0x240]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x288]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x26c]
call fcn.00402285
sub esp, 0x10
mov ecx, esp
push ebx
call fcn.00403b2c
lea eax, [ebp - 0x94]
push eax
push edi
lea ecx, [ebp - 0x26c]
call fcn.0040299a
push eax
lea eax, [ebp - 0x158]
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.00402a92
add esp, 0xc
push eax
lea eax, [ebp - 0x240]
push eax
call fcn.00402a92
sub esp, 0x10
mov ecx, esp
push eax
call fcn.004028ce
call fcn.0041a520
add esp, 0x2c
push ebx
push esi
lea ecx, [ebp - 0x240]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x288]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x26c]
call fcn.00402285
sub esp, 0x10
mov ecx, esp
push ebx
call fcn.00403b2c
lea eax, [ebp - 0x94]
push eax
push edi
lea ecx, [ebp - 0x26c]
call fcn.0040299a
push eax
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.00402a92
add esp, 0xc
push eax
lea eax, [ebp - 0x240]
push eax
call fcn.00402a92
sub esp, 0x10
mov ecx, esp
push eax
call fcn.004028ce
call fcn.0041a520
add esp, 0x2c
push ebx
push esi
lea ecx, [ebp - 0x240]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x288]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x26c]
call fcn.00402285
push str..lnk
lea ecx, [ebp - 0xb0]
call fcn.0040299a
push eax
lea eax, [ebp - 0x94]
push eax
push edi
lea ecx, [ebp - 0x78]
call fcn.0040299a
push eax
lea eax, [ebp - 0x13c]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.00402a92
add esp, 0xc
push eax
lea eax, [ebp - 0x288]
push eax
call fcn.00402a92
add esp, 0xc
push eax
lea eax, [ebp - 0x240]
push eax
call fcn.00402a92
add esp, 0xc
cmp dword [eax + 0x18], 0x10
jb 0x40d847
mov eax, dword [eax + 4]
jmp 0x40d84a
add eax, 4
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push ebx
push esi
lea ecx, [ebp - 0x240]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x288]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x26c]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x78]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0xb0]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x120]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x190]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x174]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x158]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x13c]
call fcn.00402285
lea ecx, [ebp - 0x210]
call fcn.004125c0
lea ecx, [ebp - 0x1ec]
call fcn.004125c0
push ebx
push esi
lea ecx, [ebp - 0x104]
call fcn.00402285
lea ecx, [ebp - 0x250]
call fcn.0040248a
push ebx
push esi
lea ecx, [ebp - 0x1c8]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x1ac]
call fcn.00402285
push ebx
push esi
lea ecx, [ebp - 0x94]
call fcn.00402285
mov ecx, dword [ebp + 0x6c]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.0041c2f6
add ebp, 0x70
leave
ret 8