Function at 0x40ce00
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fed3a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x248
push ebx
push esi
lea eax, [ebp - 0x2c]
push edi
mov esi, ecx
push eax
mov dword [ebp - 0x10], esi
call fcn.00419ce0
mov edi, dword [esi + 0x2bc]
lea ecx, [ebp - 0x64]
xor ebx, ebx
push ecx
mov dword [ebp - 4], ebx
call fcn.00408e30
add esp, 8
mov edi, dword [ebp + 8]
mov ecx, 0x10
mov byte [ebp - 4], 1
cmp dword [edi + 0x14], ecx
jb 0x40ce5b
mov eax, dword [edi]
jmp 0x40ce5d
mov eax, edi
push eax
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x50], ecx
jae 0x40ce69
lea eax, [ebp - 0x64]
push eax
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x18], ecx
jae 0x40ce75
lea eax, [ebp - 0x2c]
push eax
push str.ID:_s__s__update_tool__s
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 8
mov esi, 0xf
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.DoUpdate
mov byte [ecx], bl
call fcn.00404e20
push 4
push 0x57d720
call fcn.0041cec0
add esp, 0x34
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 0xffffffffffffffff
push ebx
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push edi
mov byte [ecx], bl
call fcn.00404af0
test byte [0x57d6a0], 1
mov byte [ebp - 4], 2
jne 0x40cef8
or dword [0x57d6a0], 1
mov ecx, 0x564458
mov byte [ebp - 4], 3
call fcn.00423310
push 0x502550
call fcn.004e0e4d
add esp, 4
mov byte [ebp - 4], 2
lea edx, [ebp - 0x48]
push edx
mov ecx, 0x564458
mov byte [ebp - 4], 1
call fcn.00424700
mov byte [ebp - 4], 4
cmp dword [ebp - 0x38], ebx
jne 0x40d019
test byte [0x57d6a0], 1
jne 0x40cf46
or dword [0x57d6a0], 1
mov ecx, 0x564458
mov byte [ebp - 4], 5
call fcn.00423310
push 0x502550
call fcn.004e0e4d
add esp, 4
mov byte [ebp - 4], 4
lea eax, [ebp - 0x80]
push eax
mov ecx, 0x564458
call fcn.00423170
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 0x1c
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.Failed_to_download_the_tool.
mov byte [ebp - 4], 6
mov byte [ecx], bl
call fcn.00404e20
mov ecx, dword [ebp - 0x10]
call fcn.00407e90
mov eax, dword [ebp - 0x2c]
mov edi, 0x10
cmp dword [ebp - 0x18], edi
jae 0x40cf8d
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 0x22
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.ID:_s_Failed_to_download_the_tool.
mov byte [ecx], bl
call fcn.00404e20
push 1
push 0x57d720
call fcn.0041cec0
add esp, 0x28
cmp dword [ebp - 0x6c], edi
jb 0x40cfca
mov ecx, dword [ebp - 0x80]
push ecx
call fcn.004df8f9
add esp, 4
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x70], ebx
mov byte [ebp - 0x80], bl
cmp dword [ebp - 0x34], edi
jb 0x40cfe4
mov edx, dword [ebp - 0x48]
push edx
call fcn.004df8f9
add esp, 4
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], ebx
mov byte [ebp - 0x48], bl
cmp dword [ebp - 0x50], edi
jb 0x40cffe
mov eax, dword [ebp - 0x64]
push eax
call fcn.004df8f9
add esp, 4
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x54], ebx
mov byte [ebp - 0x64], bl
cmp dword [ebp - 0x18], edi
jb 0x40d486
mov ecx, dword [ebp - 0x2c]
push ecx
jmp 0x40d47e
lea ecx, [ebp - 0x16c]
call fcn.00404940
lea ecx, [ebp - 0x254]
call fcn.00404940
lea edx, [ebp - 0x254]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 0xffffffffffffffff
push ebx
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push edi
mov byte [ebp - 4], 8
mov byte [ecx], bl
call fcn.00404af0
mov byte [ebp - 4], 9
call fcn.0042f580
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.0042a8d0
cmp al, bl
je 0x40d3ca
lea eax, [ebp - 0x16c]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 0xffffffffffffffff
push ebx
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push edi
mov byte [ecx], bl
call fcn.00404af0
mov byte [ebp - 4], 0xa
call fcn.0042f580
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.0042a6f0
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x200]
push ecx
lea ecx, [ebp - 0x118]
call fcn.00404af0
push 0xffffffffffffffff
push ebx
lea edx, [ebp - 0x1e4]
push edx
lea ecx, [ebp - 0xfc]
call fcn.00404af0
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x254]
push eax
lea ecx, [ebp - 0x16c]
call fcn.00404af0
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x238]
push ecx
lea ecx, [ebp - 0x150]
call fcn.00404af0
push 0xffffffffffffffff
push ebx
lea edx, [ebp - 0x1ac]
push edx
lea ecx, [ebp - 0xc4]
call fcn.00404af0
mov ax, word [ebp - 0x18e]
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x188]
push ecx
lea ecx, [ebp - 0xa0]
mov word [ebp - 0xa6], ax
call fcn.00404af0
mov dl, byte [ebp - 0x18c]
push 1
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
mov byte [ebp - 0xa4], dl
push 0xd
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.Installing...
mov byte [ecx], bl
call fcn.00404e20
mov ecx, dword [ebp - 0x10]
call fcn.00407e90
mov ecx, 0x10
cmp dword [edi + 0x14], ecx
jb 0x40d16f
mov eax, dword [edi]
jmp 0x40d171
mov eax, edi
push eax
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x18], ecx
jae 0x40d17d
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 0x1d
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.ID:_s_DoUpdate_unpack_tool:_s
mov byte [ecx], bl
call fcn.00404e20
push 4
push 0x57d720
call fcn.0041cec0
add esp, 0x2c
push 7
push ebx
push str..tar.gz
lea ecx, [ebp - 0x48]
call fcn.00402860
cmp eax, 0xffffffff
jne 0x40d239
lea eax, [ebp - 0x80]
push eax
call fcn.004222c0
mov ecx, eax
call fcn.00406530
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
lea edx, [ebp - 0x134]
push edx
push eax
push ecx
mov byte [ebp - 4], 0xb
call fcn.004088d0
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x84], esp
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x48]
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push eax
mov byte [ebp - 4], 0xc
mov byte [ecx], bl
call fcn.00404af0
mov byte [ebp - 4], 0xb
call fcn.00422680
add esp, 0x38
cmp dword [ebp - 0x6c], 0x10
mov byte [ebp + 0xb], al
mov byte [ebp - 4], 8
jb 0x40d230
mov ecx, dword [ebp - 0x80]
push ecx
call fcn.004df8f9
add esp, 4
cmp byte [ebp + 0xb], bl
je 0x40d35a
push 7
push ebx
push str..tar.gz
lea ecx, [ebp - 0x48]
call fcn.00402860
cmp eax, 0xffffffff
jne 0x40d29b
mov eax, 0x10
cmp dword [edi + 0x14], eax
jb 0x40d25a
mov edi, dword [edi]
cmp dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x2c]
push edi
jae 0x40d266
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push str.ID:_s_DoUpdate_delete_tool:_s
call fcn.00406560
push 4
push 0x57d720
call fcn.0041cec0
mov eax, dword [ebp - 0x48]
add esp, 0x2c
cmp dword [ebp - 0x34], 0x10
jae 0x40d294
lea eax, [ebp - 0x48]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea edx, [ebp - 0x16c]
push edx
call fcn.0042f580
mov ecx, eax
call fcn.0042ee90
mov edi, dword [ebp - 0x10]
push 1
push 1
push 1
push 1
mov ecx, edi
call fcn.0040b590
push 2
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 0x11
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.udpate_successlly
mov byte [ecx], bl
call fcn.00404e20
mov ecx, edi
call fcn.00407e90
lea ecx, [ebp - 0x254]
call fcn.00404820
lea ecx, [ebp - 0x16c]
call fcn.00404820
mov edi, 0x10
cmp dword [ebp - 0x34], edi
jb 0x40d311
mov eax, dword [ebp - 0x48]
push eax
call fcn.004df8f9
add esp, 4
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], ebx
mov byte [ebp - 0x48], bl
cmp dword [ebp - 0x50], edi
jb 0x40d32b
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.004df8f9
add esp, 4
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x54], ebx
mov byte [ebp - 0x64], bl
cmp dword [ebp - 0x18], edi
jb 0x40d345
mov edx, dword [ebp - 0x2c]
push edx
call fcn.004df8f9
add esp, 4
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 0x11
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.Failed_to_unpack.
mov byte [ecx], bl
call fcn.00404e20
mov ecx, dword [ebp - 0x10]
call fcn.00407e90
mov eax, 0x10
cmp dword [edi + 0x14], eax
jb 0x40d38b
mov edi, dword [edi]
cmp dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x2c]
push edi
jae 0x40d397
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 0x22
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.ID:_s_DoUpdate_Failed_to_unpack:_s
mov byte [ecx], bl
call fcn.00404e20
push 1
push 0x57d720
call fcn.0041cec0
add esp, 0x2c
mov edi, 0x10
jmp 0x40d42b
push ebx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 0x2a
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.Failed_to_load_information_about_the_tool.
mov byte [ecx], bl
call fcn.00404e20
mov ecx, dword [ebp - 0x10]
call fcn.00407e90
mov eax, dword [ebp - 0x2c]
mov edi, 0x10
cmp dword [ebp - 0x18], edi
jae 0x40d3ff
lea eax, [ebp - 0x2c]
push eax
sub esp, 0x1c
mov ecx, esp
mov dword [ebp + 8], esp
push 0x1e
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.ID:_s_DoUpdate_Failed_to_load.
mov byte [ecx], bl
call fcn.00404e20
push 1
push 0x57d720
call fcn.0041cec0
add esp, 0x28
lea ecx, [ebp - 0x254]
call fcn.00404820
lea ecx, [ebp - 0x16c]
call fcn.00404820
cmp dword [ebp - 0x34], edi
jb 0x40d452
mov eax, dword [ebp - 0x48]
push eax
call fcn.004df8f9
add esp, 4
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], ebx
mov byte [ebp - 0x48], bl
cmp dword [ebp - 0x50], edi
jb 0x40d46c
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.004df8f9
add esp, 4
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x54], ebx
mov byte [ebp - 0x64], bl
cmp dword [ebp - 0x18], edi
jb 0x40d486
mov edx, dword [ebp - 0x2c]
push edx
call fcn.004df8f9
add esp, 4
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
xor al, al
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 4