Function at 0x42f8a0
Capabilities:
Copy file
Query environment variable
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x463f40
mov eax, dword fs:[0]
push eax
sub esp, 0x98c
mov eax, dword [0x4775a8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
push 0
push str.IsUninstallPrompt_Hi___
push eax
mov dword [ebp - 0x988], eax
mov dword [ebp - 0x98c], edi
mov dword [ebp - 0x994], esi
call fcn.004269e0
xor eax, eax
mov ebx, 0xf
add esp, 0xc
mov dword [ebp - 0x784], ebx
mov dword [ebp - 0x788], eax
mov byte [ebp - 0x798], al
push 0x12
push str.IsUninstallPrompt:
lea ecx, [ebp - 0x7b4]
mov dword [ebp - 4], eax
mov dword [ebp - 0x7a0], ebx
mov dword [ebp - 0x7a4], eax
mov byte [ebp - 0x7b4], al
call fcn.00407c70
push 0
push 0x46e670
lea ecx, [ebp - 0x7d0]
mov byte [ebp - 4], 1
mov dword [ebp - 0x7bc], ebx
mov dword [ebp - 0x7c0], 0
mov byte [ebp - 0x7d0], 0
call fcn.00407c70
mov byte [ebp - 4], 2
test edi, edi
jne 0x42fa4b
mov edx, dword [ebp - 0x7b4]
mov edi, 0x10
cmp dword [ebp - 0x7a0], edi
jae 0x42f98b
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42f990
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0xe
push str.parameter_err.
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x42f9cc
lea eax, [ebp - 0x798]
xor esi, esi
push esi
push eax
mov eax, dword [ebp - 0x988]
push eax
call fcn.004269e0
add esp, 0xc
cmp dword [ebp - 0x7bc], edi
jb 0x42f9f6
mov ecx, dword [ebp - 0x7d0]
push ecx
call fcn.0043c161
add esp, 4
mov dword [ebp - 0x7bc], ebx
mov dword [ebp - 0x7c0], esi
mov byte [ebp - 0x7d0], 0
cmp dword [ebp - 0x7a0], edi
jb 0x42fa20
mov edx, dword [ebp - 0x7b4]
push edx
call fcn.0043c161
add esp, 4
mov dword [ebp - 0x7a0], ebx
mov dword [ebp - 0x7a4], esi
mov byte [ebp - 0x7b4], 0
cmp dword [ebp - 0x784], edi
jb 0x431503
mov eax, dword [ebp - 0x798]
push eax
jmp 0x4314fb
xor edi, edi
mov dword [ebp - 0x990], edi
mov dword [ebp - 0x984], edi
mov dword [esi], edi
call fcn.0042cad0
cmp eax, edi
jne 0x42fa7b
push 0x22
push str._utl_GetCommonProgramFiles_failed_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x4306ba
push str.iNodeSecure_Client_reginfo
push eax
lea ecx, [ebp - 0x364]
push 0x4685c4
push ecx
call fcn.0043ce2a
mov edx, dword [ebp - 0x988]
push edx
call fcn.0042e880
add esp, 0x14
test eax, eax
jne 0x42fdde
push 0x2f
push str.verifying_iNodeCustom_xml_info_FAILED_with_Err
lea ecx, [ebp - 0x7d0]
call fcn.00407c70
push 0x14
push str.__So_copy_bak_files_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
push 0x105
lea eax, [ebp - 0x77c]
push eax
push str.SystemRoot
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
lea eax, [ebp - 0x77c]
dec eax
jmp 0x42faf0
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x42faf0
mov ecx, dword [str._system32_]
mov edx, dword [0x469dec]
mov dword [eax], ecx
mov cx, word [0x469df0]
mov dword [eax + 4], edx
mov dl, byte [0x469df2]
mov word [eax + 8], cx
mov byte [eax + 0xa], dl
xor eax, eax
nop
mov cl, byte [ebp + eax - 0x77c]
mov byte [ebp + eax - 0x260], cl
inc eax
test cl, cl
jne 0x42fb20
lea eax, [ebp - 0x260]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x42fb40
mov edx, dword [str.iNodeCustom.xml]
mov esi, dword [0x469ce0]
mov ebx, dword [0x469ce4]
mov ecx, dword [0x469ce8]
mov dword [eax], edx
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ecx
xor eax, eax
lea ecx, [ecx]
mov cl, byte [ebp + eax - 0x364]
mov byte [ebp + eax - 0x158], cl
inc eax
test cl, cl
jne 0x42fb70
lea edi, [ebp - 0x158]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42fb90
mov ax, word [0x46875c]
mov word [edi], ax
lea eax, [ebp - 0x158]
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x42fba8
mov ecx, dword [0x469ce8]
mov dword [eax], edx
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
push 0
lea edx, [ebp - 0x158]
mov dword [eax + 0xc], ecx
push edx
lea eax, [ebp - 0x260]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x42fbf2
push 0x26
push str.CopyFile_iNodeCustom.xml_return_false_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x42fde8
xor eax, eax
jmp 0x42fc00
mov cl, byte [ebp + eax - 0x77c]
mov byte [ebp + eax - 0x260], cl
inc eax
test cl, cl
jne 0x42fc00
lea eax, [ebp - 0x260]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x42fc20
mov edx, dword [str.iNodeCustomXml.vrf]
mov esi, dword [0x469ccc]
mov ebx, dword [0x469cd0]
mov ecx, dword [0x469cd4]
mov dword [eax], edx
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ecx
mov cx, word [0x469cd8]
mov word [eax + 0x10], cx
mov cl, byte [0x469cda]
mov byte [eax + 0x12], cl
xor eax, eax
mov cl, byte [ebp + eax - 0x364]
mov byte [ebp + eax - 0x158], cl
inc eax
test cl, cl
jne 0x42fc61
lea edi, [ebp - 0x158]
dec edi
jmp 0x42fc80
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42fc80
mov ax, word [0x46875c]
mov word [edi], ax
lea eax, [ebp - 0x158]
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x42fc98
mov ecx, dword [0x469cd4]
mov dword [eax], edx
mov dx, word [0x469cd8]
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ecx
mov cl, byte [0x469cda]
mov word [eax + 0x10], dx
push 0
lea edx, [ebp - 0x158]
mov byte [eax + 0x12], cl
push edx
lea eax, [ebp - 0x260]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x42fcf6
push 0x29
push str.CopyFile_iNodeCustomxml.vrf_return_false_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x42fde8
push 0x46e670
lea ecx, [ebp - 0x364]
push 0
push ecx
call fcn.0042af40
add esp, 0xc
test eax, eax
jne 0x42fdde
lea ecx, [ebp - 0x980]
call fcn.00415910
lea ecx, [ebp - 0x434]
mov byte [ebp - 4], 3
call fcn.0042d5a0
push 0x104
lea edx, [ebp - 0x8d7]
push 0
push edx
mov byte [ebp - 4], 4
mov byte [ebp - 0x8d8], 0
call fcn.0043cdb0
push str.iNodeCustom.xml
lea eax, [ebp - 0x364]
push eax
lea ecx, [ebp - 0x8d8]
push 0x4685c4
push ecx
call fcn.0043ce2a
add esp, 0x1c
lea edx, [ebp - 0x434]
push edx
lea eax, [ebp - 0x8d8]
push eax
lea ecx, [ebp - 0x980]
call fcn.0041aa10
cmp dword [ebp - 0x41c], 0x10
mov eax, dword [ebp - 0x430]
jae 0x42fd9a
lea eax, [ebp - 0x430]
push eax
lea ecx, [ebp - 0x364]
push 1
push ecx
call fcn.0042af40
add esp, 0xc
test eax, eax
jne 0x42fdc2
push 0x2c
push str.verifying_iNodeCustom_xml_info_FAILED_again_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
lea ecx, [ebp - 0x434]
call fcn.004126c0
lea ecx, [ebp - 0x980]
mov byte [ebp - 4], 2
call fcn.00412310
jmp 0x42fde8
mov dword [ebp - 0x984], 1
cmp dword [ebp - 0x7c0], 0
je 0x42fe77
mov edx, dword [ebp - 0x7b4]
mov edi, 0x10
cmp dword [ebp - 0x7a0], edi
jae 0x42fe0e
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42fe13
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0xffffffffffffffff
push 0
lea edx, [ebp - 0x7d0]
push edx
lea ecx, [ebp - 0x798]
call fcn.00412cc0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x42fe53
lea eax, [ebp - 0x798]
push 0
push eax
mov eax, dword [ebp - 0x988]
push eax
call fcn.004269e0
add esp, 0xc
push 0
push 0x46e670
lea ecx, [ebp - 0x7d0]
call fcn.00407c70
cmp dword [ebp - 0x984], 0
jne 0x4300c9
lea ecx, [ebp - 0x364]
push ecx
call fcn.0042cdd0
add esp, 4
test eax, eax
jne 0x4300bf
push 0x29
push str.verifying_uninstall_info_FAILED_with_Err
lea ecx, [ebp - 0x7d0]
call fcn.00407c70
push 0x14
push str.__So_copy_bak_files_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
push 0x105
lea edx, [ebp - 0x8d8]
push edx
push str.SystemRoot
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
lea eax, [ebp - 0x8d8]
dec eax
lea ecx, [ecx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x42fee0
mov ecx, dword [str._system32_]
mov edx, dword [0x469dec]
mov dword [eax], ecx
mov cx, word [0x469df0]
mov dword [eax + 4], edx
mov dl, byte [0x469df2]
mov word [eax + 8], cx
mov byte [eax + 0xa], dl
xor eax, eax
nop
mov cl, byte [ebp + eax - 0x8d8]
mov byte [ebp + eax - 0x260], cl
inc eax
test cl, cl
jne 0x42ff10
lea edi, [ebp - 0x260]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42ff30
mov ecx, 5
mov esi, str.iNodeUninstallInfo.xml
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x364]
mov byte [ebp + eax - 0x158], cl
inc eax
test cl, cl
jne 0x42ff50
lea edi, [ebp - 0x158]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42ff70
mov ax, word [0x46875c]
mov word [edi], ax
lea edi, [ebp - 0x158]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42ff88
mov ebx, dword [sym.imp.KERNEL32.dll_CopyFileA]
mov ecx, 5
mov esi, str.iNodeUninstallInfo.xml
rep movsd dword es:[edi], dword [esi]
push 0
movsw word es:[edi], word [esi]
lea ecx, [ebp - 0x158]
push ecx
lea edx, [ebp - 0x260]
push edx
movsb byte es:[edi], byte [esi]
call ebx
test eax, eax
jne 0x42ffd2
push 0x2d
push str.CopyFile_iNodeUninstallInfo.xml_return_false_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x4300c9
xor eax, eax
jmp 0x42ffe0
mov cl, byte [ebp + eax - 0x8d8]
mov byte [ebp + eax - 0x260], cl
inc eax
test cl, cl
jne 0x42ffe0
lea edi, [ebp - 0x260]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x430000
mov ecx, 6
mov esi, str.iNodeUninstallInfoXml.vrf
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
xor eax, eax
jmp 0x430020
mov cl, byte [ebp + eax - 0x364]
mov byte [ebp + eax - 0x158], cl
inc eax
test cl, cl
jne 0x430020
lea edi, [ebp - 0x158]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x430040
mov ax, word [0x46875c]
mov word [edi], ax
lea edi, [ebp - 0x158]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x430058
mov ecx, 6
mov esi, str.iNodeUninstallInfoXml.vrf
rep movsd dword es:[edi], dword [esi]
push 0
lea ecx, [ebp - 0x158]
push ecx
lea edx, [ebp - 0x260]
push edx
movsw word es:[edi], word [esi]
call ebx
test eax, eax
jne 0x430098
push 0x30
push str.CopyFile_iNodeUninstallInfoxml.vrf_return_false_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x4300c9
lea eax, [ebp - 0x364]
push eax
call fcn.0042cdd0
add esp, 4
test eax, eax
jne 0x4300bf
push 0x2a
push str.verifying_Uninstall_xml_info_FAILED_again_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x4300c9
mov dword [ebp - 0x984], 2
cmp dword [ebp - 0x7c0], 0
je 0x430158
mov edx, dword [ebp - 0x7b4]
mov edi, 0x10
cmp dword [ebp - 0x7a0], edi
jae 0x4300ef
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4300f4
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0xffffffffffffffff
push 0
lea ecx, [ebp - 0x7d0]
push ecx
lea ecx, [ebp - 0x798]
call fcn.00412cc0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x430134
lea eax, [ebp - 0x798]
mov edx, dword [ebp - 0x988]
push 0
push eax
push edx
call fcn.004269e0
add esp, 0xc
push 0
push 0x46e670
lea ecx, [ebp - 0x7d0]
call fcn.00407c70
cmp dword [ebp - 0x984], 0
jne 0x4303d2
mov eax, dword [ebp - 0x988]
push eax
call fcn.0042de40
add esp, 4
test eax, eax
jne 0x4303c8
push 0x2f
push str.verifying_iNodeCustom_ini_info_FAILED_with_Err
lea ecx, [ebp - 0x7d0]
call fcn.00407c70
push 0x14
push str.__So_copy_bak_files_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
push 0x105
lea ecx, [ebp - 0x8d8]
push ecx
push str.SystemRoot
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
lea eax, [ebp - 0x8d8]
dec eax
mov edi, edi
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4301c0
mov edx, dword [str._system32_]
mov ecx, dword [0x469dec]
mov dword [eax], edx
mov dx, word [0x469df0]
mov dword [eax + 4], ecx
mov cl, byte [0x469df2]
mov word [eax + 8], dx
mov byte [eax + 0xa], cl
xor eax, eax
nop
mov cl, byte [ebp + eax - 0x8d8]
mov byte [ebp + eax - 0x260], cl
inc eax
test cl, cl
jne 0x4301f0
lea eax, [ebp - 0x260]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x430210
mov edx, dword [str.iNodeCustom.ini]
mov esi, dword [0x469dcc]
mov ebx, dword [0x469dd0]
mov ecx, dword [0x469dd4]
mov dword [eax], edx
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ecx
xor eax, eax
lea ecx, [ecx]
mov cl, byte [ebp + eax - 0x364]
mov byte [ebp + eax - 0x158], cl
inc eax
test cl, cl
jne 0x430240
lea edi, [ebp - 0x158]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x430260
mov ax, word [0x46875c]
mov word [edi], ax
lea eax, [ebp - 0x158]
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x430278
mov ecx, dword [0x469dd4]
mov dword [eax], edx
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
push 0
lea edx, [ebp - 0x158]
mov dword [eax + 0xc], ecx
push edx
lea eax, [ebp - 0x260]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x4302c2
push 0x26
push str.CopyFile_iNodeCustom.ini_return_false_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x4303d2
xor eax, eax
jmp 0x4302d0
mov cl, byte [ebp + eax - 0x8d8]
mov byte [ebp + eax - 0x260], cl
inc eax
test cl, cl
jne 0x4302d0
lea eax, [ebp - 0x260]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4302f0
mov edx, dword [str.iNodeCustom.vrf]
mov esi, dword [0x469ddc]
mov ebx, dword [0x469de0]
mov ecx, dword [0x469de4]
mov dword [eax], edx
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ecx
xor eax, eax
lea ecx, [ecx]
mov cl, byte [ebp + eax - 0x364]
mov byte [ebp + eax - 0x158], cl
inc eax
test cl, cl
jne 0x430320
lea edi, [ebp - 0x158]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x430340
mov ax, word [0x46875c]
mov word [edi], ax
lea eax, [ebp - 0x158]
dec eax
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x430358
mov ecx, dword [0x469de4]
mov dword [eax], edx
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
push 0
lea edx, [ebp - 0x158]
mov dword [eax + 0xc], ecx
push edx
lea eax, [ebp - 0x260]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x43039f
push 0x26
push str.CopyFile_iNodeCustom.vrf_return_false_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x4303d2
lea ecx, [ebp - 0x364]
push 0
push ecx
call fcn.0042ab40
add esp, 8
test eax, eax
jne 0x4303c8
push 0x2c
push str.verifying_iNodeCustom_ini_info_FAILED_again_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x4303d2
mov dword [ebp - 0x984], 3
cmp dword [ebp - 0x7c0], 0
je 0x430464
mov edx, dword [ebp - 0x7b4]
mov edi, 0x10
cmp dword [ebp - 0x7a0], edi
jae 0x4303f8
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x430400
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0xffffffffffffffff
push 0
lea edx, [ebp - 0x7d0]
push edx
lea ecx, [ebp - 0x798]
call fcn.00412cc0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x430440
lea eax, [ebp - 0x798]
push 0
push eax
mov eax, dword [ebp - 0x988]
push eax
call fcn.004269e0
add esp, 0xc
push 0
push 0x46e670
lea ecx, [ebp - 0x7d0]
call fcn.00407c70
cmp dword [ebp - 0x984], 0
jne 0x4306ba
lea ecx, [ebp - 0x364]
push ecx
call fcn.0042b3c0
add esp, 4
test eax, eax
jne 0x4306b0
push 0x2d
push str.verifying_uninstall_ini_info_FAILED_with_Err
lea ecx, [ebp - 0x7d0]
call fcn.00407c70
push 0x14
push str.__So_copy_bak_files_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
push 0x105
lea edx, [ebp - 0x8d8]
push edx
push str.SystemRoot
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
lea eax, [ebp - 0x8d8]
dec eax
lea ebx, [ebx]
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x4304d0
mov ecx, dword [str._system32_]
mov edx, dword [0x469dec]
mov dword [eax], ecx
mov cx, word [0x469df0]
mov dword [eax + 4], edx
mov dl, byte [0x469df2]
mov word [eax + 8], cx
mov byte [eax + 0xa], dl
xor eax, eax
nop
mov cl, byte [ebp + eax - 0x8d8]
mov byte [ebp + eax - 0x260], cl
inc eax
test cl, cl
jne 0x430500
lea edi, [ebp - 0x260]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x430520
mov ecx, 5
mov esi, str.iNodeUninstallInfo.ini
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x364]
mov byte [ebp + eax - 0x158], cl
inc eax
test cl, cl
jne 0x430540
lea edi, [ebp - 0x158]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x430560
mov ax, word [0x46875c]
mov word [edi], ax
lea edi, [ebp - 0x158]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x430578
mov ebx, dword [sym.imp.KERNEL32.dll_CopyFileA]
mov ecx, 5
mov esi, str.iNodeUninstallInfo.ini
rep movsd dword es:[edi], dword [esi]
push 0
movsw word es:[edi], word [esi]
lea ecx, [ebp - 0x158]
push ecx
lea edx, [ebp - 0x260]
push edx
movsb byte es:[edi], byte [esi]
call ebx
test eax, eax
jne 0x4305c2
push 0x2d
push str.CopyFile_iNodeUninstallInfo.ini_return_false_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x4306ba
xor eax, eax
jmp 0x4305d0
mov cl, byte [ebp + eax - 0x8d8]
mov byte [ebp + eax - 0x260], cl
inc eax
test cl, cl
jne 0x4305d0
lea edi, [ebp - 0x260]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x4305f0
mov ecx, 5
mov esi, str.iNodeUninstallInfo.vrf
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
xor eax, eax
lea esp, [esp]
mov cl, byte [ebp + eax - 0x364]
mov byte [ebp + eax - 0x158], cl
inc eax
test cl, cl
jne 0x430610
lea edi, [ebp - 0x158]
dec edi
lea ebx, [ebx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x430630
mov ax, word [0x46875c]
mov word [edi], ax
lea edi, [ebp - 0x158]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x430648
mov ecx, 5
mov esi, str.iNodeUninstallInfo.vrf
rep movsd dword es:[edi], dword [esi]
push 0
movsw word es:[edi], word [esi]
lea ecx, [ebp - 0x158]
push ecx
lea edx, [ebp - 0x260]
push edx
movsb byte es:[edi], byte [esi]
call ebx
test eax, eax
jne 0x430689
push 0x2d
push str.CopyFile_iNodeUninstallInfo.vrf_return_false_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x4306ba
lea eax, [ebp - 0x364]
push eax
call fcn.0042b3c0
add esp, 4
test eax, eax
jne 0x4306b0
push 0x2a
push str.verifying_Uninstall_ini_info_FAILED_again_
lea ecx, [ebp - 0x7d0]
call fcn.00412db0
jmp 0x4306ba
mov dword [ebp - 0x984], 4
cmp dword [ebp - 0x7c0], 0
mov edi, 0x10
je 0x430735
mov edx, dword [ebp - 0x7b4]
cmp dword [ebp - 0x7a0], edi
jae 0x4306dc
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4306e1
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0xffffffffffffffff
push 0
lea ecx, [ebp - 0x7d0]
push ecx
lea ecx, [ebp - 0x798]
call fcn.00412cc0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x430721
lea eax, [ebp - 0x798]
mov ebx, dword [ebp - 0x988]
push 0
push eax
push ebx
call fcn.004269e0
add esp, 0xc
jmp 0x43073b
mov ebx, dword [ebp - 0x988]
push 0x104
lea edx, [ebp - 0x56f]
push 0
push edx
mov byte [ebp - 0x570], 0
call fcn.0043cdb0
mov eax, dword [ebp - 0x984]
add esp, 0xc
cmp eax, 4
ja case.default.0x430767
jmp dword [eax*4 + 0x431524]
lea eax, [ebp - 0x990]
push eax
push str.Uninstall
push str.SOFTWAREiNode
push 0x80000002
call fcn.00425a50
add esp, 0x10
test eax, eax
mov eax, dword [ebp - 0x7b4]
jne 0x4308b4
cmp dword [ebp - 0x7a0], edi
jae 0x4307a8
lea eax, [ebp - 0x7b4]
push eax
lea ecx, [ebp - 0x798]
call fcn.004077c0
push 0x1d
push str.Get_Uninstall_from_reg_failed
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x4307da
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
lea ecx, [ebp - 0x990]
push ecx
push str.Uninstall
push str.SOFTWAREH3CiNode
push 0x80000002
call fcn.00425a50
add esp, 0x1c
test eax, eax
jne 0x4308da
mov eax, dword [ebp - 0x7b4]
cmp dword [ebp - 0x7a0], edi
jae 0x43081d
lea eax, [ebp - 0x7b4]
push eax
lea ecx, [ebp - 0x798]
call fcn.004077c0
push 0x21
push str.Get_Uninstall_from_old_reg_failed
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x43084f
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
add esp, 0xc
mov eax, str.SOFTWAREiNode
mov edi, dword [ebp - 0x98c]
push 0x80
push edi
push str.UninstallPwd
push eax
push 0x80000002
call fcn.00425b20
add esp, 0x14
test eax, eax
mov eax, dword [ebp - 0x7b4]
mov esi, 0x10
jne 0x4308e4
cmp dword [ebp - 0x7a0], esi
jae 0x43089c
lea eax, [ebp - 0x7b4]
push eax
lea ecx, [ebp - 0x798]
call fcn.004077c0
push 0x2b
push str.Get_UninstallPwd_from_reg_fail_Return_true.
jmp 0x430ce4
cmp dword [ebp - 0x7a0], edi
jae 0x4308c2
lea eax, [ebp - 0x7b4]
push eax
lea ecx, [ebp - 0x798]
call fcn.004077c0
push 0x1b
push str.Get_Uninstall_from_reg_succ
jmp 0x430830
mov eax, str.SOFTWAREH3CiNode
jmp 0x430860
cmp dword [ebp - 0x7a0], esi
jae 0x4308f2
lea eax, [ebp - 0x7b4]
push eax
lea ecx, [ebp - 0x798]
call fcn.004077c0
push 0x1f
push str.Get_UninstallPwd_from_reg_Succ.
jmp 0x430ce4
push str.iNodeCustom.xml
lea edx, [ebp - 0x364]
push edx
lea eax, [ebp - 0x570]
push 0x4685c4
push eax
call fcn.0043ce2a
add esp, 0x10
lea ecx, [ebp - 0x8f4]
call fcn.0042d730
lea ecx, [ebp - 0x3f0]
mov byte [ebp - 4], 5
call fcn.00415910
lea ecx, [ebp - 0x8f4]
push ecx
lea edx, [ebp - 0x570]
push edx
lea ecx, [ebp - 0x3f0]
mov byte [ebp - 4], 6
call fcn.00419c10
mov eax, dword [ebp - 0x8e0]
and eax, 1
mov dword [ebp - 0x990], eax
je 0x430a54
mov esi, dword [ebp - 0x864]
test esi, esi
je 0x430a4a
push 0x80
lea ecx, [ebp - 0x977]
push 0
push ecx
mov byte [ebp - 0x978], 0
call fcn.0043cdb0
mov eax, dword [ebp - 0x874]
add esp, 0xc
cmp dword [ebp - 0x860], edi
jae 0x4309b5
lea eax, [ebp - 0x874]
push esi
push eax
lea edx, [ebp - 0x978]
push 0x80
push edx
call fcn.00432050
mov edi, dword [ebp - 0x98c]
push 0x80
lea eax, [ebp - 0x978]
push eax
push edi
call fcn.0043d120
mov eax, dword [ebp - 0x7b4]
add esp, 0x1c
cmp dword [ebp - 0x7a0], 0x10
jae 0x4309f8
lea eax, [ebp - 0x7b4]
push eax
lea ecx, [ebp - 0x798]
call fcn.004077c0
push 0x2a
push str.Get_UninstallPwd_from_NodeCustom.xml_succ.
lea ecx, [ebp - 0x798]
call fcn.00412db0
cmp dword [ebp - 0x784], 0x10
mov eax, dword [ebp - 0x798]
jae 0x430a2b
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
mov ecx, dword [ebp - 0x8e0]
mov edx, dword [ebp - 0x994]
add esp, 0xc
and ecx, 2
mov dword [edx], ecx
jmp 0x430a5a
mov dword [ebp - 0x990], 0
mov edi, dword [ebp - 0x98c]
lea ecx, [ebp - 0x3f0]
mov byte [ebp - 4], 5
call fcn.00412310
lea ecx, [ebp - 0x8f4]
mov byte [ebp - 4], 2
call fcn.004123f0
jmp 0x430d0f
push str.iNodeUninstallInfo.xml
lea eax, [ebp - 0x364]
push eax
lea ecx, [ebp - 0x570]
push 0x4685c4
push ecx
call fcn.0043ce2a
add esp, 0x10
lea ecx, [ebp - 0x30]
call fcn.0042d900
mov bl, 7
lea ecx, [ebp - 0x3f0]
mov byte [ebp - 4], bl
call fcn.00415910
lea edx, [ebp - 0x30]
push edx
lea eax, [ebp - 0x570]
push eax
lea ecx, [ebp - 0x3f0]
mov byte [ebp - 4], 8
call fcn.0041acd0
mov ecx, dword [ebp - 0x30]
and ecx, 1
mov dword [ebp - 0x990], ecx
je 0x430b82
cmp dword [ebp - 0x1c], 0
je 0x430b78
mov eax, dword [ebp - 0x2c]
mov esi, 0x10
cmp dword [ebp - 0x18], esi
jae 0x430afb
lea eax, [ebp - 0x2c]
mov edi, dword [ebp - 0x98c]
push 0x80
push eax
push edi
call fcn.0043d120
mov eax, dword [ebp - 0x7b4]
add esp, 0xc
cmp dword [ebp - 0x7a0], esi
jae 0x430b24
lea eax, [ebp - 0x7b4]
push eax
lea ecx, [ebp - 0x798]
call fcn.004077c0
push 0x32
push str.Get_UninstallPwd_from_iNodeUninstallInfo.xml_succ.
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], esi
jae 0x430b56
lea eax, [ebp - 0x798]
mov edx, dword [ebp - 0x988]
push 0
push eax
push edx
call fcn.004269e0
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x994]
add esp, 0xc
and eax, 2
mov dword [ecx], eax
jmp 0x430b88
mov dword [ebp - 0x990], 0
mov edi, dword [ebp - 0x98c]
lea ecx, [ebp - 0x3f0]
mov byte [ebp - 4], bl
call fcn.00412310
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 2
call fcn.0042d490
mov ebx, dword [ebp - 0x988]
jmp 0x430d0f
push str.iNodeCustom.ini
lea edx, [ebp - 0x364]
push edx
lea eax, [ebp - 0x570]
push 0x4685c4
push eax
call fcn.0043ce2a
add esp, 0x10
lea ecx, [ebp - 0x570]
push ecx
push 0
push str.Uninstall
push str.Functions
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edi, dword [ebp - 0x98c]
lea edx, [ebp - 0x570]
push edx
push 0x80
push edi
push 0x46e670
push str.Install
push str.Functions
mov dword [ebp - 0x990], eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x430d0f
mov eax, dword [ebp - 0x7b4]
mov esi, 0x10
cmp dword [ebp - 0x7a0], esi
jae 0x430c35
lea eax, [ebp - 0x7b4]
push eax
lea ecx, [ebp - 0x798]
call fcn.004077c0
push 0x2b
push str.Get_UninstallPwd_from_iNodeCustom.ini_succ.
jmp 0x430ce4
push str.iNodeUninstallInfo.ini
lea eax, [ebp - 0x364]
push eax
lea ecx, [ebp - 0x570]
push 0x4685c4
push ecx
call fcn.0043ce2a
add esp, 0x10
lea edx, [ebp - 0x570]
push edx
push 0
push str.Uninstall
push str.Functions
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edi, dword [ebp - 0x98c]
mov dword [ebp - 0x990], eax
lea eax, [ebp - 0x570]
push eax
push 0x80
push edi
push 0x46e670
push str.Install
push str.Functions
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x430d0f
mov eax, dword [ebp - 0x7b4]
mov esi, 0x10
cmp dword [ebp - 0x7a0], esi
jae 0x430cd1
lea eax, [ebp - 0x7b4]
push eax
lea ecx, [ebp - 0x798]
call fcn.004077c0
push 0x32
push str.Get_UninstallPwd_from_iNodeUninstallInfo.ini_succ.
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], esi
jae 0x430d03
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
add esp, 0xc
cmp dword [ebp - 0x990], 0
jne 0x430df4
cmp dword [ebp - 0x7a0], 0x10
mov edx, dword [ebp - 0x7b4]
jae 0x430d31
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x430d36
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0x18
push str._dwResult__return_false.
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
mov edi, 0x10
cmp dword [ebp - 0x784], edi
jae 0x430d77
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
add esp, 0xc
cmp dword [ebp - 0x7bc], edi
jb 0x430d9a
mov ecx, dword [ebp - 0x7d0]
push ecx
call fcn.0043c161
add esp, 4
xor ebx, ebx
mov esi, 0xf
mov dword [ebp - 0x7bc], esi
mov dword [ebp - 0x7c0], ebx
mov byte [ebp - 0x7d0], bl
cmp dword [ebp - 0x7a0], edi
jb 0x430dca
mov edx, dword [ebp - 0x7b4]
push edx
call fcn.0043c161
add esp, 4
mov dword [ebp - 0x7a0], esi
mov dword [ebp - 0x7a4], ebx
mov byte [ebp - 0x7b4], bl
cmp dword [ebp - 0x784], edi
jb 0x431503
mov eax, dword [ebp - 0x798]
push eax
jmp 0x4314fb
mov ecx, dword [ebp - 0x994]
cmp dword [ecx], 0
je 0x430e59
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x430e04
sub eax, edx
push eax
push 0
push edi
call fcn.0043cdb0
push 0
call fcn.0043dc08
push eax
call fcn.0043e32e
add esp, 0x14
xor esi, esi
call fcn.0043e340
cdq
mov ecx, 0xa
idiv ecx
push edx
lea edx, [edi + esi]
push 0x46e6ec
push edx
call fcn.0043ce2a
inc esi
add esp, 0xc
cmp esi, 6
jl 0x430e28
push 0
push edi
push ebx
call fcn.004269e0
add esp, 0xc
push 0x104
lea eax, [ebp - 0x674]
push eax
push str.DisplayVersion
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstall2DBC9F17_9894_4220_9A9C_2CF7AA59E0FD
push 0x80000002
call fcn.00425b20
mov edx, dword [ebp - 0x7b4]
add esp, 0x14
test eax, eax
jne 0x4310c2
cmp dword [ebp - 0x7a0], 0x10
jae 0x430e99
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x430ea0
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0x29
push str.Get_Version_from_new_reg_failed__try_old.
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
mov edi, 0x10
cmp dword [ebp - 0x784], edi
jae 0x430ee1
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
push 0x104
lea ecx, [ebp - 0x674]
push ecx
push str.DisplayVersion
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallCEF10E49_05ED_4427_A434_76F630409441
push 0x80000002
call fcn.00425b20
mov edx, dword [ebp - 0x7b4]
add esp, 0x20
test eax, eax
jne 0x430fe9
cmp dword [ebp - 0x7a0], edi
jae 0x430f29
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x430f30
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0x2e
push str.Get_Version_from_old_reg_failed__return_false.
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x430f6c
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
add esp, 0xc
cmp dword [ebp - 0x7bc], edi
jb 0x430f8f
mov edx, dword [ebp - 0x7d0]
push edx
call fcn.0043c161
add esp, 4
xor ebx, ebx
mov esi, 0xf
mov dword [ebp - 0x7bc], esi
mov dword [ebp - 0x7c0], ebx
mov byte [ebp - 0x7d0], bl
cmp dword [ebp - 0x7a0], edi
jb 0x430fbf
mov eax, dword [ebp - 0x7b4]
push eax
call fcn.0043c161
add esp, 4
mov dword [ebp - 0x7a0], esi
mov dword [ebp - 0x7a4], ebx
mov byte [ebp - 0x7b4], bl
cmp dword [ebp - 0x784], edi
jb 0x431503
mov ecx, dword [ebp - 0x798]
push ecx
jmp 0x4314fb
cmp dword [ebp - 0x7a0], edi
jae 0x430ff7
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x431000
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0x2b
push str.Get_Version_from_old_reg_succ__return_true.
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x43103c
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
add esp, 0xc
cmp dword [ebp - 0x7bc], edi
jb 0x43105f
mov edx, dword [ebp - 0x7d0]
push edx
call fcn.0043c161
add esp, 4
xor ebx, ebx
mov esi, 0xf
mov dword [ebp - 0x7bc], esi
mov dword [ebp - 0x7c0], ebx
mov byte [ebp - 0x7d0], bl
cmp dword [ebp - 0x7a0], edi
jb 0x43108f
mov eax, dword [ebp - 0x7b4]
push eax
call fcn.0043c161
add esp, 4
mov dword [ebp - 0x7a0], esi
mov dword [ebp - 0x7a4], ebx
mov byte [ebp - 0x7b4], bl
cmp dword [ebp - 0x784], edi
jb 0x4310b8
mov ecx, dword [ebp - 0x798]
push ecx
call fcn.0043c161
add esp, 4
mov eax, 1
jmp 0x431505
cmp dword [ebp - 0x7a0], 0x10
jae 0x4310d1
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4310d6
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0x1b
push str.Get_Version_from_reg_succ.
lea ecx, [ebp - 0x798]
call fcn.00412db0
lea eax, [ebp - 0x674]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x431107
sub eax, edx
push eax
lea edx, [ebp - 0x674]
push edx
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
mov edi, 0x10
cmp dword [ebp - 0x784], edi
jae 0x43113c
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
add esp, 0xc
cmp dword [ebp + 0x14], 0
je 0x4313b2
push 0
push str.setup_package_need_to_comapre_version.
push ebx
call fcn.004269e0
push 0x103
lea eax, [ebp - 0x467]
push 0
push eax
mov byte [ebp - 0x468], 0
call fcn.0043cdb0
add esp, 0x18
push 0x104
lea ecx, [ebp - 0x468]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0x3f
lea edx, [ebp - 0x4f]
push 0
push edx
mov byte [ebp - 0x50], 0
call fcn.0043cdb0
lea eax, [ebp - 0x998]
push eax
lea ecx, [ebp - 0x468]
push ecx
call fcn.0042cc10
add esp, 0x14
test eax, eax
je 0x431370
movzx edx, word [ebp - 0x994]
movzx eax, word [ebp - 0x996]
movzx ecx, word [ebp - 0x998]
push edx
push eax
push ecx
lea edx, [ebp - 0x50]
push str._u._u0._04u
push edx
call fcn.0043ce2a
mov edx, dword [ebp - 0x7b4]
add esp, 0x14
cmp dword [ebp - 0x7a0], edi
jae 0x4311fc
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x431201
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0x19
push str.utl_GetFileVersion_succ.
lea ecx, [ebp - 0x798]
call fcn.00412db0
lea eax, [ebp - 0x50]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x431230
sub eax, edx
push eax
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x43125d
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
lea ecx, [ebp - 0x50]
push ecx
lea edx, [ebp - 0x674]
push edx
call fcn.0045de44
add esp, 0x14
test eax, eax
mov eax, dword [ebp - 0x7b4]
jns 0x4312fe
cmp dword [ebp - 0x7a0], edi
jae 0x431295
lea eax, [ebp - 0x7b4]
push eax
lea ecx, [ebp - 0x798]
call fcn.004077c0
push 0x1e
push str.It_is_update_..._return_ture.
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x4312c7
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
add esp, 0xc
lea ecx, [ebp - 0x7d0]
call fcn.00407790
lea ecx, [ebp - 0x7b4]
call fcn.00407790
lea ecx, [ebp - 0x798]
call fcn.00407790
mov eax, 1
jmp 0x431505
cmp dword [ebp - 0x7a0], edi
jae 0x43130c
lea eax, [ebp - 0x7b4]
push eax
lea ecx, [ebp - 0x798]
call fcn.004077c0
push 0x23
push str.It_is_not_update_..._return_false.
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x43133e
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
add esp, 0xc
lea ecx, [ebp - 0x7d0]
call fcn.00407790
lea ecx, [ebp - 0x7b4]
call fcn.00407790
lea ecx, [ebp - 0x798]
call fcn.00407790
jmp 0x431503
mov edx, dword [ebp - 0x7b4]
cmp dword [ebp - 0x7a0], edi
jae 0x431384
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x431390
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0x1c
push str.can_not_judge_the_ver_of_upd
jmp 0x43131f
mov edx, dword [ebp - 0x7b4]
cmp dword [ebp - 0x7a0], edi
jae 0x4313c6
lea edx, [ebp - 0x7b4]
mov eax, edx
lea esi, [eax + 1]
jmp 0x4313d0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4313d0
sub eax, esi
push eax
push edx
lea ecx, [ebp - 0x798]
call fcn.00407c70
push 0x22
push str.Need_prompt_uninstall_password_Dlg
lea ecx, [ebp - 0x798]
call fcn.00412db0
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x784], edi
jae 0x43140c
lea eax, [ebp - 0x798]
push 0
push eax
push ebx
call fcn.004269e0
add esp, 0xc
cmp dword [ebp - 0x7bc], edi
jb 0x43142f
mov eax, dword [ebp - 0x7d0]
push eax
call fcn.0043c161
add esp, 4
xor ebx, ebx
mov esi, 0xf
mov dword [ebp - 0x7bc], esi
mov dword [ebp - 0x7c0], ebx
mov byte [ebp - 0x7d0], bl
cmp dword [ebp - 0x7a0], edi
jb 0x43145f
mov ecx, dword [ebp - 0x7b4]
push ecx
call fcn.0043c161
add esp, 4
mov dword [ebp - 0x7a0], esi
mov dword [ebp - 0x7a4], ebx
mov byte [ebp - 0x7b4], bl
cmp dword [ebp - 0x784], edi
jb 0x4310b8
mov edx, dword [ebp - 0x798]
push edx
call fcn.0043c161
add esp, 4
mov eax, 1
jmp 0x431505
cmp dword [ebp - 0x7bc], edi
jb 0x4314aa
mov eax, dword [ebp - 0x7d0]
push eax
call fcn.0043c161
add esp, 4
xor ebx, ebx
mov esi, 0xf
mov dword [ebp - 0x7bc], esi
mov dword [ebp - 0x7c0], ebx
mov byte [ebp - 0x7d0], bl
cmp dword [ebp - 0x7a0], edi
jb 0x4314da
mov ecx, dword [ebp - 0x7b4]
push ecx
call fcn.0043c161
add esp, 4
mov dword [ebp - 0x7a0], esi
mov dword [ebp - 0x7a4], ebx
mov byte [ebp - 0x7b4], bl
cmp dword [ebp - 0x784], edi
jb 0x431503
mov edx, dword [ebp - 0x798]
push edx
call fcn.0043c161
add esp, 4
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0043bde4
mov esp, ebp
pop ebp
ret