Function at 0x442ce0
Capabilities:
Delete file
Reference google public dns server

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x5b53fd
push eax
mov dword fs:[0], esp
sub esp, 0x278
push ebx
push esi
push edi
mov esi, edx
mov ebx, ecx
call fcn.005201a0
test ebx, ebx
je 0x44377d
cmp esi, 1
jle 0x44377d
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
mov dword [ebp - 4], 0
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 7
mov word [ebp - 0x30], ax
push str.8.8.8.8
push esi
push ebx
mov edx, 0x5de7f8
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x60]
call fcn.0043c260
add esp, 0xc
test al, al
je 0x442d8b
call fcn.005201a0
lea ecx, [ebp - 0x60]
add eax, 0x228
push ecx
push 4
push eax
call fcn.0044ca30
push esi
push ebx
mov edx, 0x5de804
lea ecx, [ebp - 0x14]
call fcn.0043c020
add esp, 8
test al, al
je 0x442db7
call fcn.005201a0
lea ecx, [ebp - 0x14]
add eax, 0x238
push ecx
push 4
push eax
call fcn.0044ccd0
push str.8.8.8.8
push esi
push ebx
mov edx, 0x5de814
lea ecx, [ebp - 0x60]
call fcn.0043c260
add esp, 0xc
test al, al
je 0x442de8
call fcn.005201a0
lea ecx, [ebp - 0x60]
add eax, 0x250
push ecx
push 4
push eax
call fcn.0044ca30
push esi
push ebx
mov edx, 0x5de828
lea ecx, [ebp - 0x14]
call fcn.0043c020
add esp, 8
test al, al
je 0x442e14
call fcn.005201a0
lea ecx, [ebp - 0x14]
add eax, 0x258
push ecx
push 4
push eax
call fcn.0044ccd0
push str.8.8.8.8
push esi
push ebx
mov edx, 0x5de840
lea ecx, [ebp - 0x60]
call fcn.0043c260
add esp, 0xc
test al, al
je 0x442e45
call fcn.005201a0
lea ecx, [ebp - 0x60]
add eax, 0x208
push ecx
push 4
push eax
call fcn.0044ca30
push esi
push ebx
mov edx, 0x5de854
lea ecx, [ebp - 0x14]
call fcn.0043c020
add esp, 8
test al, al
je 0x442e71
call fcn.005201a0
lea ecx, [ebp - 0x14]
add eax, 0x220
push ecx
push 4
push eax
call fcn.0044ccd0
push 0x5de86c
push esi
push ebx
mov edx, 0x5de878
lea ecx, [ebp - 0x60]
call fcn.0043c260
add esp, 0xc
test al, al
je 0x442ea2
call fcn.005201a0
lea ecx, [ebp - 0x60]
add eax, 0x210
push ecx
push 4
push eax
call fcn.0044ca30
push 0x5de890
push esi
push ebx
mov edx, 0x5de8a4
lea ecx, [ebp - 0x60]
call fcn.0043c260
add esp, 0xc
test al, al
je 0x442ed3
call fcn.005201a0
lea ecx, [ebp - 0x60]
add eax, 0x218
push ecx
push 4
push eax
call fcn.0044ca30
push esi
push ebx
mov edx, 0x5de8bc
lea ecx, [ebp - 0x14]
call fcn.0043c020
add esp, 8
test al, al
je 0x442eff
call fcn.005201a0
lea ecx, [ebp - 0x14]
add eax, 0x248
push ecx
push 4
push eax
call fcn.0044ccd0
push esi
push ebx
mov edx, 0x5de8d0
lea ecx, [ebp - 0x14]
call fcn.0043c020
add esp, 8
test al, al
je 0x442f2b
call fcn.005201a0
lea ecx, [ebp - 0x14]
add eax, 0x240
push ecx
push 4
push eax
call fcn.0044ccd0
push esi
push ebx
mov edx, 0x5de8e4
mov ecx, 0x6c54c8
call fcn.0043c350
push esi
push ebx
mov edx, 0x5de8ec
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 0x10
test al, al
je 0x442f68
call fcn.005201a0
lea ecx, [ebp - 0xd]
add eax, 0x260
push ecx
push 4
push eax
call fcn.0044c910
push str.example_email.com
push esi
push ebx
mov edx, 0x5de91c
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x442f99
call fcn.005201a0
lea ecx, [ebp - 0x30]
add eax, 0x268
push ecx
push 4
push eax
call fcn.0044c7c0
push str.example_email.com
push esi
push ebx
mov edx, 0x5de940
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x442fca
call fcn.005201a0
lea ecx, [ebp - 0x30]
add eax, 0x270
push ecx
push 4
push eax
call fcn.0044c7c0
push str._any_text_in_quotes_
push esi
push ebx
mov edx, 0x5de990
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x442ffb
call fcn.005201a0
lea ecx, [ebp - 0x30]
add eax, 0x278
push ecx
push 4
push eax
call fcn.0044c7c0
push str._any_path_in_quotes_
push esi
push ebx
mov edx, 0x5de9d0
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x44302c
call fcn.005201a0
lea ecx, [ebp - 0x30]
add eax, 0x280
push ecx
push 4
push eax
call fcn.0044c7c0
push str._any_text_in_quotes_
push esi
push ebx
mov edx, 0x5de9f0
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x44305d
call fcn.005201a0
lea ecx, [ebp - 0x30]
add eax, 0x288
push ecx
push 4
push eax
call fcn.0044c7c0
push esi
push ebx
mov edx, 0x5dea0c
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 8
test al, al
je 0x443089
call fcn.005201a0
lea ecx, [ebp - 0xd]
add eax, 0x290
push ecx
push 4
push eax
call fcn.0044c910
push esi
push ebx
mov edx, str.pconnection
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 8
test al, al
je 0x4430b5
call fcn.005201a0
lea ecx, [ebp - 0xd]
add eax, 0x2a8
push ecx
push 4
push eax
call fcn.0044c910
push esi
push ebx
mov edx, 0x5dea4c
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 8
test al, al
je 0x4430e1
call fcn.005201a0
lea ecx, [ebp - 0xd]
add eax, 0x168
push ecx
push 4
push eax
call fcn.0044c910
push esi
push ebx
mov edx, 0x5dea5c
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 8
test al, al
je 0x44310d
call fcn.005201a0
lea ecx, [ebp - 0xd]
add eax, 0x130
push ecx
push 4
push eax
call fcn.0044c910
push esi
push ebx
mov edx, 0x5dea70
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 8
test al, al
je 0x443139
call fcn.005201a0
lea ecx, [ebp - 0xd]
add eax, 0x138
push ecx
push 4
push eax
call fcn.0044c910
push esi
push ebx
mov edx, 0x5dea84
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 8
test al, al
je 0x443165
call fcn.005201a0
lea ecx, [ebp - 0xd]
add eax, 0x148
push ecx
push 4
push eax
call fcn.0044c910
push str.valid_path
push esi
push ebx
mov edx, 0x5deaac
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x443196
call fcn.005201a0
lea ecx, [ebp - 0x30]
add eax, 0x128
push ecx
push 4
push eax
call fcn.0044c7c0
push str.valid_path
push esi
push ebx
mov edx, 0x5de86c
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x4431c7
call fcn.005201a0
lea ecx, [ebp - 0x30]
add eax, 0x150
push ecx
push 4
push eax
call fcn.0044c7c0
push 0x5dd7b8
push esi
push ebx
mov edx, str.language
lea ecx, [ebp - 0x60]
call fcn.0043c260
add esp, 0xc
test al, al
je 0x4431f8
call fcn.005201a0
lea ecx, [ebp - 0x60]
add eax, 0x158
push ecx
push 4
push eax
call fcn.0044ca30
push str.valid_path
push esi
push ebx
mov edx, 0x5de9d0
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x443229
call fcn.005201a0
lea ecx, [ebp - 0x30]
add eax, 0x160
push ecx
push 4
push eax
call fcn.0044c7c0
push esi
push ebx
mov edx, 0x5dead0
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 8
test al, al
je 0x443255
call fcn.005201a0
lea ecx, [ebp - 0xd]
add eax, 0x170
push ecx
push 4
push eax
call fcn.0044c910
push esi
push ebx
mov edx, 0x5deae4
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 8
test al, al
je 0x443281
call fcn.005201a0
lea ecx, [ebp - 0xd]
add eax, 0x178
push ecx
push 4
push eax
call fcn.0044c910
push esi
push ebx
mov edx, 0x5deb04
lea ecx, [ebp - 0x18]
call fcn.0043c140
add esp, 8
test al, al
je 0x4432ad
call fcn.005201a0
lea ecx, [ebp - 0x18]
add eax, 0x180
push ecx
push 4
push eax
call fcn.0044cb80
push esi
push ebx
mov edx, 0x5deb1c
lea ecx, [ebp - 0x18]
call fcn.0043c140
add esp, 8
test al, al
je 0x4432f3
call fcn.005201a0
lea ecx, [ebp - 0x18]
add eax, 0x190
push ecx
push 4
push eax
call fcn.0044cb80
call fcn.005201a0
lea ecx, [ebp - 0xe]
mov byte [ebp - 0xe], 0
push ecx
push 4
add eax, 0x188
push eax
call fcn.0044c910
push esi
push ebx
mov edx, str.autoset_videomode
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 8
test al, al
je 0x44331f
call fcn.005201a0
lea ecx, [ebp - 0xd]
add eax, 0x198
push ecx
push 4
push eax
call fcn.0044c910
push str.valid_path
push esi
push ebx
mov edx, 0x5deb5c
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x443350
call fcn.005201a0
lea ecx, [ebp - 0x30]
add eax, 0x1b0
push ecx
push 4
push eax
call fcn.0044c7c0
push str.valid_path
push esi
push ebx
mov edx, 0x5deb88
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x443381
call fcn.005201a0
lea ecx, [ebp - 0x30]
add eax, 0x1b8
push ecx
push 4
push eax
call fcn.0044c7c0
push esi
push ebx
mov edx, 0x5debc0
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 8
test al, al
je 0x4433b1
call fcn.005201a0
lea ecx, [ebp - 0xe]
mov byte [ebp - 0xe], 0
push ecx
push 4
add eax, 0x1c0
push eax
call fcn.0044c910
push esi
push ebx
mov edx, 0x5debf4
lea ecx, [ebp - 0xd]
call fcn.0043c350
add esp, 8
test al, al
je 0x4433e1
call fcn.005201a0
lea ecx, [ebp - 0xe]
mov byte [ebp - 0xe], 0
push ecx
push 4
add eax, 0x1c8
push eax
call fcn.0044c910
push esi
push ebx
mov edx, 0x5dec34
lea ecx, [ebp - 0x18]
call fcn.0043c140
add esp, 8
test al, al
je 0x44340d
call fcn.005201a0
lea ecx, [ebp - 0x18]
add eax, 0x1d0
push ecx
push 4
push eax
call fcn.0044cb80
push esi
push ebx
mov edx, 0x5dec6c
lea ecx, [ebp - 0x14]
call fcn.0043c020
add esp, 8
test al, al
je 0x443439
call fcn.005201a0
lea ecx, [ebp - 0x14]
add eax, 0x1d8
push ecx
push 4
push eax
call fcn.0044ccd0
push str.client_ID_or_IP
push esi
push ebx
mov edx, 0x5decbc
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x44346d
cmp dword [ebp - 0x1c], 8
lea eax, [ebp - 0x30]
push dword [ebp - 0x20]
cmovae eax, dword [ebp - 0x30]
mov ecx, 0x6ad08c
push eax
call fcn.004496e0
push str.client_password
push esi
push ebx
mov edx, 0x5decec
lea ecx, [ebp - 0x30]
call fcn.0043bc60
add esp, 0xc
test al, al
je 0x4434a1
cmp dword [ebp - 0x1c], 8
lea eax, [ebp - 0x30]
push dword [ebp - 0x20]
cmovae eax, dword [ebp - 0x30]
mov ecx, 0x6ad0a4
push eax
call fcn.004496e0
mov edi, dword [0x6c54a0]
xor eax, eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 7
mov word [ebp - 0x48], ax
push str.unsigned_integer
push esi
push ebx
mov edx, 0x5decf4
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x48]
call fcn.0043bc60
add esp, 0xc
cmp dword [ebp - 0x38], 0
jne 0x443716
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x34]
cmp ecx, 8
jb 0x443525
mov edx, dword [ebp - 0x48]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44351b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44398d
push ecx
push edx
call fcn.00583877
add esp, 8
push esi
push ebx
mov edx, str.service
mov dword [0x6c54a0], edi
mov ecx, 0x6c54c9
call fcn.0043c350
push esi
push ebx
mov edx, str.install_service
mov ecx, 0x6c54ca
call fcn.0043c350
xor eax, eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 7
mov word [ebp - 0x48], ax
push eax
push esi
push ebx
mov edx, str.update
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x48]
call fcn.0043bc60
mov esi, dword [ebp - 0x48]
add esp, 0x1c
cmp dword [ebp - 0x38], 0
je 0x443666
push 0x104
lea eax, [ebp - 0x280]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x280]
push 0x5c
push eax
call fcn.005851fe
xor ecx, ecx
lea edx, [ebp - 0x48]
add esp, 8
cmp dword [ebp - 0x34], 8
cmovae edx, esi
mov word [eax + 2], cx
mov esi, edx
lea ebx, [ebx]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x4435d0
lea edi, [ebp - 0x280]
sub edx, esi
add edi, 0xfffffffe
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4435e6
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
xor esi, esi
jmp 0x443610
lea eax, [ebp - 0x280]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x443635
push 0xa
call edi
inc esi
cmp esi, 0x3e8
jl 0x443610
mov edx, str.Cant_delete_updater:
je 0x44363a
mov edx, str.Updater_deleted:
mov ecx, 0x6b43a0
lea esi, [ebp - 0x280]
call fcn.0044d180
mov edx, esi
mov ecx, eax
call fcn.0044d180
push eax
call fcn.0044d430
mov esi, dword [ebp - 0x48]
add esp, 4
mov byte [0x6c54a4], 1
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x34]
cmp eax, 8
jb 0x4436a1
lea ecx, [eax*2 + 2]
mov eax, esi
cmp ecx, 0x1000
jb 0x443697
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x443988
push ecx
push esi
call fcn.00583877
add esp, 8
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x4436df
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4436d5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x443988
push ecx
push edx
call fcn.00583877
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0x10
jb 0x44377d
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x443773
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x443988
jmp 0x443773
cmp dword [ebp - 0x34], 8
lea ecx, [ebp - 0x18]
push 0xa
lea eax, [ebp - 0x48]
cmovae eax, dword [ebp - 0x48]
push ecx
push eax
call fcn.005934cc
mov byte [ebp - 4], 1
add esp, 0xc
mov ecx, dword [ebp - 0x34]
mov edi, eax
cmp ecx, 8
jb 0x443525
mov edx, dword [ebp - 0x48]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44351b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44398d
jmp 0x44351b
push ecx
push edx
call fcn.00583877
add esp, 8
call fcn.005201a0
mov ecx, eax
call fcn.0051ae80
call fcn.005201a0
mov ecx, eax
call fcn.00520ac0
mov esi, dword [ebx]
lea ecx, [ebp - 0x48]
push 1
xor eax, eax
mov dword [ebp - 0x48], 0
push 0x5ddc40
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 7
mov word [ebp - 0x48], ax
call fcn.004496e0
push esi
lea edx, [ebp - 0x48]
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x78]
call fcn.0044cdc0
add esp, 4
push 0x5ded70
mov edx, eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x30]
call fcn.0044cdc0
add esp, 4
push 0x6acea4
mov edx, eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x60]
call fcn.0044ce40
mov esi, eax
add esp, 4
cmp esi, 0x6acebc
je 0x44385b
mov ecx, 0x6acebc
call fcn.00449550
mov ecx, dword [esi]
mov dword [0x6acebc], ecx
mov ecx, dword [esi + 4]
mov dword [0x6acec0], ecx
mov eax, dword [esi + 8]
mov dword [0x6acec4], eax
mov eax, dword [esi + 0xc]
mov dword [0x6acec8], eax
mov eax, dword [esi + 0x10]
mov dword [0x6acecc], eax
mov eax, dword [esi + 0x14]
mov dword [0x6aced0], eax
xor eax, eax
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov ecx, dword [ebp - 0x4c]
cmp ecx, 8
jb 0x443895
mov edx, dword [ebp - 0x60]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44388b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x443992
push ecx
push edx
call fcn.00583877
add esp, 8
mov ecx, dword [ebp - 0x1c]
xor eax, eax
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 7
mov word [ebp - 0x60], ax
cmp ecx, 8
jb 0x4438e3
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4438d9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x443992
push ecx
push edx
call fcn.00583877
add esp, 8
mov ecx, dword [ebp - 0x64]
xor eax, eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 7
mov word [ebp - 0x30], ax
cmp ecx, 8
jb 0x44392d
mov edx, dword [ebp - 0x78]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x443923
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x443992
push ecx
push edx
call fcn.00583877
add esp, 8
mov ecx, dword [ebp - 0x34]
xor eax, eax
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 7
mov word [ebp - 0x78], ax
cmp ecx, 8
jb 0x443977
mov edx, dword [ebp - 0x48]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x44396d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x443992
push ecx
push edx
call fcn.00583877
add esp, 8
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00591c98
call fcn.00591c98
call fcn.00591c98
int3