Function at 0x47bc4a
Capabilities:
Check if file exists
Copy file

Disassembly:
push 0xb4
mov eax, 0x5ebc76
call fcn.0059bbd7
xor edi, edi
push edi
call fcn.005c35ca
mov esi, eax
sub esi, dword [0x6f1678]
pop ecx
mov ecx, edx
sbb ecx, dword [0x6f167c]
mov dword [ebp - 0xbc], ecx
js 0x47c2f6
jg 0x47bc8c
cmp esi, 0xe10
jbe 0x47c2f6
push 7
mov dword [0x6f1678], eax
xor eax, eax
pop ecx
mov dword [0x6f167c], edx
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], ecx
mov word [ebp - 0x40], ax
mov dword [ebp - 4], edi
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x8c], ecx
mov word [ebp - 0xa0], ax
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 1
call fcn.004cb6c0
mov byte [ebp - 4], 2
cmp dword [ebp - 0xa8], 0
je 0x47bd25
push 0x63424c
lea edx, [ebp - 0xb8]
lea ecx, [ebp - 0x28]
call fcn.00411559
pop ecx
push eax
lea ecx, [ebp - 0x40]
call fcn.0040b0ac
lea ecx, [ebp - 0x28]
call fcn.0040b67e
push 0x650a54
lea edx, [ebp - 0xb8]
lea ecx, [ebp - 0x28]
call fcn.00411559
pop ecx
push eax
lea ecx, [ebp - 0xa0]
call fcn.0040b0ac
lea ecx, [ebp - 0x28]
call fcn.0040b67e
push 8
pop ebx
cmp dword [ebp - 0x8c], ebx
lea ecx, [ebp - 0xa0]
lea eax, [ebp - 0x40]
cmovae ecx, dword [ebp - 0xa0]
cmp dword [ebp - 0x2c], ebx
push ecx
cmovae eax, dword [ebp - 0x40]
push eax
push 0x122d
push str.HealthMgr::Update360HuabaoScr
push str.__s__d___strPicPath_old__s_:_strScrPath__s
call fcn.0040a649
add esp, 0x14
mov dword [ebp - 0x60], edi
xor eax, eax
mov word [ebp - 0x70], ax
push 7
pop ecx
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x44], ecx
mov word [ebp - 0x58], ax
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x40]
call fcn.004272ec
lea edx, [ebp - 0x58]
lea ecx, [ebp - 0xa0]
call fcn.004272ec
mov ecx, dword [ebp - 0x60]
mov esi, 0x646898
test ecx, ecx
je 0x47bdab
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x47bee1
push str.HealthMgr::Update360HuabaoScr
lea ecx, [ebp - 0x28]
call fcn.0040b0d5
push esi
mov byte [ebp - 4], 5
call fcn.005c2f90
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.0040b220
mov edx, 0x1235
lea ecx, [ebp - 0x88]
call fcn.00420ed4
mov byte [ebp - 4], 6
mov ecx, eax
cmp dword [eax + 0x14], ebx
jb 0x47bdea
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040b220
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 5
call fcn.0040b67e
push esi
call fcn.005c2f90
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.0040b220
push edi
call fcn.005c35ca
pop ecx
push edx
push eax
lea ecx, [ebp - 0x88]
call fcn.0041094b
pop ecx
pop ecx
mov byte [ebp - 4], 7
mov ecx, eax
cmp dword [eax + 0x14], ebx
jb 0x47be39
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040b220
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 5
call fcn.0040b67e
mov esi, str._0_versionerror
push esi
call fcn.005c2f90
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.0040b220
mov esi, str._exeversion_
push esi
call fcn.005c2f90
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.0040b220
cmp dword [ebp - 0x5c], ebx
lea eax, [ebp - 0x70]
push dword [ebp - 0x60]
cmovae eax, dword [ebp - 0x70]
lea ecx, [ebp - 0x28]
push eax
call fcn.0040b220
mov esi, str._scrversion_
push esi
call fcn.005c2f90
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.0040b220
cmp dword [ebp - 0x44], ebx
lea eax, [ebp - 0x58]
push dword [ebp - 0x48]
cmovae eax, dword [ebp - 0x58]
lea ecx, [ebp - 0x28]
push eax
call fcn.0040b220
lea ecx, [ebp - 0x28]
call fcn.004cc061
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 4
call fcn.0040b67e
mov ecx, dword [ebp - 0x60]
mov esi, 0x646898
mov eax, dword [ebp - 0x48]
test ecx, ecx
je 0x47c29b
test eax, eax
je 0x47c29b
cmp dword [ebp - 0x5c], ebx
lea edx, [ebp - 0x70]
lea ecx, [ebp - 0x58]
cmovae edx, dword [ebp - 0x70]
cmp dword [ebp - 0x44], ebx
cmovae ecx, dword [ebp - 0x58]
call fcn.004275c6
test eax, eax
jns 0x47c29b
cmp dword [ebp - 0x2c], ebx
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call fcn.004352fd
pop ecx
test eax, eax
jne 0x47c01e
cmp dword [ebp - 0x2c], ebx
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
push 0x1248
push str.HealthMgr::Update360HuabaoScr
push str.__s__d___Check_sign___s_Failed
call fcn.0040a649
add esp, 0x10
lea ecx, [ebp - 0x28]
push str.HealthMgr::Update360HuabaoScr
call fcn.0040b0d5
push esi
mov byte [ebp - 4], bl
call fcn.005c2f90
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.0040b220
mov edx, 0x124c
lea ecx, [ebp - 0x88]
call fcn.00420ed4
mov byte [ebp - 4], 9
mov ecx, eax
cmp dword [eax + 0x14], ebx
jb 0x47bf8b
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040b220
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.0040b67e
push esi
call fcn.005c2f90
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.0040b220
push edi
call fcn.005c35ca
pop ecx
push edx
push eax
lea ecx, [ebp - 0x88]
call fcn.0041094b
pop ecx
pop ecx
mov byte [ebp - 4], 0xa
mov ecx, eax
cmp dword [eax + 0x14], ebx
jb 0x47bfd9
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040b220
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.0040b67e
mov esi, str._1_signerror
push esi
call fcn.005c2f90
pop ecx
push eax
push esi
lea ecx, [ebp - 0x28]
call fcn.0040b220
lea ecx, [ebp - 0x28]
call fcn.004cc061
lea ecx, [ebp - 0x28]
call fcn.0040b67e
jmp 0x47c2c8
cmp dword [ebp - 0x8c], ebx
lea edi, [ebp - 0xa0]
lea esi, [ebp - 0x40]
cmovae edi, dword [ebp - 0xa0]
cmp dword [ebp - 0x2c], ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
cmovae esi, dword [ebp - 0x40]
call ebx
push eax
push edi
push esi
push 0x1258
mov esi, str.HealthMgr::Update360HuabaoScr
push esi
push str.__s__d___SetSystemScreen__strPicPath___s_strScrPath___s_error__d
call fcn.0040a649
add esp, 0x18
lea eax, [ebp - 0x40]
push 8
pop edi
cmp dword [ebp - 0x2c], edi
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x47c1e6
cmp dword [ebp - 0x8c], edi
lea ecx, [ebp - 0xa0]
push 0
cmovae ecx, dword [ebp - 0xa0]
lea eax, [ebp - 0x40]
cmp dword [ebp - 0x2c], edi
push ecx
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
call ebx
mov esi, eax
test esi, esi
je 0x47c1c7
push str.HealthMgr::Update360HuabaoScr
lea ecx, [ebp - 0x28]
call fcn.0040b0d5
push 0x646898
mov byte [ebp - 4], 0xb
call fcn.005c2f90
pop ecx
push eax
push 0x646898
lea ecx, [ebp - 0x28]
call fcn.0040b220
mov edx, 0x125f
lea ecx, [ebp - 0x88]
call fcn.00420ed4
mov byte [ebp - 4], 0xc
mov ecx, eax
cmp dword [eax + 0x14], edi
jb 0x47c0f4
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040b220
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xb
call fcn.0040b67e
push 0x646898
call fcn.005c2f90
pop ecx
push eax
push 0x646898
lea ecx, [ebp - 0x28]
call fcn.0040b220
push 0
call fcn.005c35ca
pop ecx
push edx
push eax
lea ecx, [ebp - 0x88]
call fcn.0041094b
pop ecx
pop ecx
mov byte [ebp - 4], 0xd
mov ecx, eax
cmp dword [eax + 0x14], edi
jb 0x47c14c
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040b220
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xb
call fcn.0040b67e
mov edi, str._3_copyerror
push edi
call fcn.005c2f90
pop ecx
push eax
push edi
lea ecx, [ebp - 0x28]
call fcn.0040b220
mov edx, esi
lea ecx, [ebp - 0x88]
call fcn.0045bbd2
mov byte [ebp - 4], 0xe
mov ecx, eax
cmp dword [eax + 0x14], 8
jb 0x47c198
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040b220
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xb
call fcn.0040b67e
lea ecx, [ebp - 0x28]
call fcn.004cc061
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 4
call fcn.0040b67e
call ebx
push eax
push 0x1266
push str.HealthMgr::Update360HuabaoScr
push str.__s__d___SetSystemScreen_error_d
call fcn.0040a649
add esp, 0x10
jmp 0x47c2c8
push esi
lea ecx, [ebp - 0x28]
call fcn.0040b0d5
mov ebx, 0x646898
mov byte [ebp - 4], 0xf
push ebx
call fcn.005c2f90
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x28]
call fcn.0040b220
mov edx, 0x126a
lea ecx, [ebp - 0x88]
call fcn.00420ed4
mov byte [ebp - 4], 0x10
mov ecx, eax
cmp dword [eax + 0x14], edi
jb 0x47c226
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040b220
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xf
call fcn.0040b67e
push ebx
call fcn.005c2f90
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x28]
call fcn.0040b220
push 0
call fcn.005c35ca
pop ecx
push edx
push eax
lea ecx, [ebp - 0x88]
call fcn.0041094b
pop ecx
pop ecx
mov byte [ebp - 4], 0x11
mov ecx, eax
cmp dword [eax + 0x14], edi
jb 0x47c276
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040b220
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xf
call fcn.0040b67e
mov esi, str._2_sysenableerror
jmp 0x47bff8
cmp dword [ebp - 0x44], ebx
lea ecx, [ebp - 0x58]
lea eax, [ebp - 0x70]
cmovae ecx, dword [ebp - 0x58]
cmp dword [ebp - 0x5c], ebx
push ecx
cmovae eax, dword [ebp - 0x70]
push eax
push 0x1243
push str.HealthMgr::Update360HuabaoScr
push str.__s__d___CmpVer_old__s_:_new__s
call fcn.0040a649
add esp, 0x14
lea ecx, [ebp - 0x58]
call fcn.0040b67e
lea ecx, [ebp - 0x70]
call fcn.0040b67e
lea ecx, [ebp - 0xb8]
call fcn.0040b67e
lea ecx, [ebp - 0xa0]
call fcn.0040b67e
lea ecx, [ebp - 0x40]
call fcn.0040b67e
call fcn.0059bb81
ret