Function at 0x40b710
Capabilities:
Delete file

Disassembly:
mov al, byte [0x42589a]
sub esp, 0x114
test al, al
je 0x40b74b
mov eax, dword [0x421bf0]
mov ecx, dword [0x421bf4]
mov edx, dword [0x421bec]
add ecx, eax
mov eax, dword [0x421be8]
add ecx, edx
mov edx, dword [0x422ebc]
add ecx, eax
lea eax, [ecx + edx + 0xc]
mov dword [esp + 0xc], eax
jmp 0x40b773
mov ecx, dword [0x421bf4]
mov edx, dword [0x422ed0]
mov eax, dword [0x421bec]
add edx, ecx
add edx, dword [0x421bf0]
add edx, eax
mov eax, dword [0x421be8]
lea ecx, [edx + eax + 0xc]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0xc]
mov eax, dword [0x425600]
push ebx
and edx, 0xffff
push ebp
push esi
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push edi
shl edx, 0x10
push edx
push 0
push 0x401
push eax
call esi
mov al, byte [0x42589a]
test al, al
je 0x40b987
push 1
push 0x422ed4
call fcn.0040bda0
add esp, 8
test eax, eax
push 0x14a
push 0x42535c
je 0x40b8a7
mov ecx, dword [0x422eb4]
mov edi, dword [sym.imp.USER32.dll_LoadStringA]
push 0x89
push ecx
call edi
push 0x422ed4
push 0x42535c
push 0x4254a8
call fcn.00411c30
mov edx, dword [0x4255f4]
mov ebx, dword [sym.imp.USER32.dll_SetWindowTextA]
add esp, 0xc
push 0x4254a8
push edx
call ebx
mov eax, dword [0x4255fc]
push 0x4254a8
push 0
push 0x180
push eax
call esi
mov ecx, dword [0x4255fc]
push 0
push 0
push 0x18b
push ecx
call esi
mov ecx, dword [0x4255fc]
mov ebp, dword [sym.imp.USER32.dll_GetScrollRange]
mov dword [esp + 0x14], eax
lea edx, [esp + 0x10]
lea eax, [esp + 0x18]
push edx
push eax
push 1
push ecx
call ebp
mov edx, dword [esp + 0x10]
mov eax, dword [0x4255fc]
push 1
push edx
push 1
push eax
call dword [sym.imp.USER32.dll_SetScrollPos]
mov ecx, dword [esp + 0x14]
mov edx, dword [0x4255fc]
dec ecx
push 0
push ecx
push 0x197
push edx
call esi
mov eax, dword [0x425600]
push 0
push 0
push 0x408
push eax
call esi
mov ecx, dword [0x425600]
inc eax
push 0
push eax
push 0x402
push ecx
call esi
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x40bb6b
mov edx, dword [0x422eb4]
mov edi, dword [sym.imp.USER32.dll_LoadStringA]
push 0x8c
push edx
call edi
push 0x422ed4
push 0x42535c
push 0x4254a8
call fcn.00411c30
mov eax, dword [0x4255f4]
mov ebx, dword [sym.imp.USER32.dll_SetWindowTextA]
add esp, 0xc
push 0x4254a8
push eax
call ebx
mov ecx, dword [0x4255fc]
push 0x4254a8
push 0
push 0x180
push ecx
call esi
mov edx, dword [0x4255fc]
push 0
push 0
push 0x18b
push edx
call esi
mov edx, dword [0x4255fc]
mov ebp, dword [sym.imp.USER32.dll_GetScrollRange]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x10]
lea ecx, [esp + 0x18]
push eax
push ecx
push 1
push edx
call ebp
mov eax, dword [esp + 0x10]
mov ecx, dword [0x4255fc]
push 1
push eax
push 1
push ecx
call dword [sym.imp.USER32.dll_SetScrollPos]
mov edx, dword [esp + 0x14]
mov eax, dword [0x4255fc]
dec edx
push 0
push edx
push 0x197
push eax
call esi
mov ecx, dword [0x425600]
push 0
push 0
push 0x408
push ecx
call esi
mov edx, dword [0x425600]
inc eax
push 0
push eax
push 0x402
push edx
call esi
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x40bb6b
mov eax, dword [0x422c10]
push eax
push 0x422ed4
call fcn.0040c0c0
add esp, 8
lea ecx, [esp + 0x20]
push str.Uninstall.exe
push 0x422ed4
push str._s_s
push ecx
call fcn.00411c30
add esp, 0x10
lea edx, [esp + 0x20]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
push 0x14a
push 0x42535c
je 0x40ba95
mov eax, dword [0x422eb4]
mov edi, dword [sym.imp.USER32.dll_LoadStringA]
push 0x88
push eax
call edi
lea ecx, [esp + 0x20]
push ecx
push 0x42535c
push 0x4254a8
call fcn.00411c30
mov edx, dword [0x4255f4]
mov ebx, dword [sym.imp.USER32.dll_SetWindowTextA]
add esp, 0xc
push 0x4254a8
push edx
call ebx
mov eax, dword [0x4255fc]
push 0x4254a8
push 0
push 0x180
push eax
call esi
mov ecx, dword [0x4255fc]
push 0
push 0
push 0x18b
push ecx
call esi
mov ecx, dword [0x4255fc]
mov ebp, dword [sym.imp.USER32.dll_GetScrollRange]
mov dword [esp + 0x14], eax
lea edx, [esp + 0x10]
lea eax, [esp + 0x18]
push edx
push eax
push 1
push ecx
call ebp
mov edx, dword [esp + 0x10]
mov eax, dword [0x4255fc]
push 1
push edx
push 1
push eax
call dword [sym.imp.USER32.dll_SetScrollPos]
mov ecx, dword [esp + 0x14]
mov edx, dword [0x4255fc]
dec ecx
push 0
push ecx
push 0x197
push edx
call esi
mov eax, dword [0x425600]
push 0
push 1
push 0x402
push eax
jmp 0x40bb54
mov ecx, dword [0x422eb4]
mov edi, dword [sym.imp.USER32.dll_LoadStringA]
push 0x8c
push ecx
call edi
lea edx, [esp + 0x20]
push edx
push 0x42535c
push 0x4254a8
call fcn.00411c30
mov eax, dword [0x4255f4]
mov ebx, dword [sym.imp.USER32.dll_SetWindowTextA]
add esp, 0xc
push 0x4254a8
push eax
call ebx
mov ecx, dword [0x4255fc]
push 0x4254a8
push 0
push 0x180
push ecx
call esi
mov edx, dword [0x4255fc]
push 0
push 0
push 0x18b
push edx
call esi
mov edx, dword [0x4255fc]
mov ebp, dword [sym.imp.USER32.dll_GetScrollRange]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x10]
lea ecx, [esp + 0x18]
push eax
push ecx
push 1
push edx
call ebp
mov eax, dword [esp + 0x10]
mov ecx, dword [0x4255fc]
push 1
push eax
push 1
push ecx
call dword [sym.imp.USER32.dll_SetScrollPos]
mov edx, dword [esp + 0x14]
mov eax, dword [0x4255fc]
dec edx
push 0
push edx
push 0x197
push eax
call esi
mov ecx, dword [0x425600]
push 0
push 1
push 0x402
push ecx
call esi
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x422ed4
call fcn.0040c220
add esp, 4
call fcn.0040c2f0
mov al, byte [0x41d338]
test al, al
je 0x40bcf1
call fcn.0040c790
test al, al
push 0x14a
push 0x4254a8
je 0x40bc41
mov edx, dword [0x422eb4]
push 0x8a
push edx
call edi
mov eax, dword [0x4255f4]
push 0x4254a8
push eax
call ebx
mov ecx, dword [0x4255fc]
push 0x4254a8
push 0
push 0x180
push ecx
call esi
mov edx, dword [0x4255fc]
push 0
push 0
push 0x18b
push edx
call esi
mov edx, dword [0x4255fc]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x10]
lea ecx, [esp + 0x18]
push eax
push ecx
push 1
push edx
call ebp
mov eax, dword [esp + 0x10]
mov ecx, dword [0x4255fc]
push 1
push eax
push 1
push ecx
call dword [sym.imp.USER32.dll_SetScrollPos]
mov edx, dword [esp + 0x14]
mov eax, dword [0x4255fc]
dec edx
push 0
push edx
push 0x197
push eax
call esi
mov ecx, dword [0x425600]
push 0
push 0
push 0x408
push ecx
call esi
mov edx, dword [0x425600]
inc eax
push 0
push eax
push 0x402
push edx
jmp 0x40bce7
mov eax, dword [0x422eb4]
push 0x8d
push eax
call edi
mov ecx, dword [0x4255f4]
push 0x4254a8
push ecx
call ebx
mov edx, dword [0x4255fc]
push 0x4254a8
push 0
push 0x180
push edx
call esi
mov eax, dword [0x4255fc]
push 0
push 0
push 0x18b
push eax
call esi
lea ecx, [esp + 0x10]
lea edx, [esp + 0x18]
mov dword [esp + 0x14], eax
mov eax, dword [0x4255fc]
push ecx
push edx
push 1
push eax
call ebp
mov ecx, dword [esp + 0x10]
mov edx, dword [0x4255fc]
push 1
push ecx
push 1
push edx
call dword [sym.imp.USER32.dll_SetScrollPos]
mov eax, dword [esp + 0x14]
mov ecx, dword [0x4255fc]
dec eax
push 0
push eax
push 0x197
push ecx
call esi
mov edx, dword [0x425600]
push 0
push 0
push 0x408
push edx
call esi
inc eax
push 0
push eax
mov eax, dword [0x425600]
push 0x402
push eax
call esi
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [0x422eb4]
push 0x14a
push 0x4254a8
push 0x5d
push ecx
call edi
mov edx, dword [0x4255f4]
push 0x4254a8
push edx
call ebx
mov eax, dword [0x4255fc]
push 0x4254a8
push 0
push 0x180
push eax
call esi
mov ecx, dword [0x4255fc]
push 0
push 0
push 0x18b
push ecx
call esi
mov ecx, dword [0x4255fc]
mov edi, eax
lea edx, [esp + 0x10]
lea eax, [esp + 0x18]
push edx
push eax
push 1
push ecx
call ebp
mov edx, dword [esp + 0x10]
mov eax, dword [0x4255fc]
push 1
push edx
push 1
push eax
call dword [sym.imp.USER32.dll_SetScrollPos]
mov ecx, dword [0x4255fc]
dec edi
push 0
push edi
push 0x197
push ecx
call esi
mov edx, dword [esp + 0x1c]
mov eax, dword [0x425600]
push 0
push edx
push 0x402
push eax
call esi
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x114
ret