Function at 0x401fd0
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x13a0
call fcn.0041d4e0
mov eax, dword [0x427004]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
call fcn.0040e856
cmp dword [eax], 1
jle 0x40227f
mov esi, 1
call fcn.0040e856
cmp dword [eax], esi
jle 0x402056
call fcn.0040e85c
push 4
push str._url
mov eax, dword [eax]
push dword [eax + esi*4]
call fcn.0040e534
add esp, 0xc
test eax, eax
jne 0x40204c
call fcn.0040e85c
mov eax, dword [eax]
mov eax, dword [eax + esi*4]
add eax, 4
push eax
push 0x400
push 0x42b258
call fcn.00406e4e
add esp, 0xc
mov dword [0x428324], 1
inc esi
call fcn.0040e856
cmp esi, dword [eax]
jl 0x402005
mov esi, 1
call fcn.0040e856
cmp dword [eax], esi
jle 0x40227f
call fcn.0040e85c
push 4
push str._log
mov eax, dword [eax]
push dword [eax + esi*4]
call fcn.0040e534
add esp, 0xc
test eax, eax
jne 0x402271
push 0x1388
push eax
lea eax, [ebp - 0x138c]
push eax
call fcn.00405fb0
add esp, 0xc
cmp dword [0x428324], 0
jne 0x4020dc
push 0x400
push 0x42ae40
mov edx, str.ARGUMENTS
mov ecx, 0x6c
call fcn.00401e00
push 0x400
push 0x42b258
mov edx, str.LAUNCHURL
mov ecx, 0x65
call fcn.00401e00
add esp, 0x10
push str.The_Launch_URL_is:
lea eax, [ebp - 0x138c]
push 0x1388
push eax
call fcn.00406ec3
push 0x42b258
lea eax, [ebp - 0x138c]
push 0x1388
push eax
call fcn.00406ec3
push 0x3e8
push 0x42c850
mov edx, str.MESSAGE
mov ecx, 0x66
call fcn.00401e00
push 0x4250ec
mov edx, 0x4250f0
mov ecx, 0x42c850
call fcn.00403dd0
push eax
push 0x3e8
push 0x42ba58
call fcn.00406e4e
push 0x4250f4
mov edx, 0x4250f8
mov ecx, 0x42ba58
call fcn.00403dd0
push eax
push 0x3e8
push 0x42cc38
call fcn.00406e4e
add esp, 0x40
lea eax, [ebp - 0x138c]
push str._n_nThe_Message_is:
push 0x1388
push eax
call fcn.00406ec3
push 0x42ba58
lea eax, [ebp - 0x138c]
push 0x1388
push eax
call fcn.00406ec3
push 0x3e8
push 0x42c548
mov edx, str.MESSAGETITLE
mov ecx, 0x67
call fcn.00401e00
push str._n_nThe_Message_Title_is:
lea eax, [ebp - 0x138c]
push 0x1388
push eax
call fcn.00406ec3
push 0x42c548
lea eax, [ebp - 0x138c]
push 0x1388
push eax
call fcn.00406ec3
push 6
push 0x42b240
mov edx, str.VERIFYVERSION
mov ecx, 0x6b
call fcn.00401e00
add esp, 0x40
lea eax, [ebp - 0x138c]
push str._n_nThe_Version_to_Verify_is:_.NET_FrameWork
push 0x1388
push eax
call fcn.00406ec3
push 0x42b240
lea eax, [ebp - 0x138c]
push 0x1388
push eax
call fcn.00406ec3
push 0xa
push 0x42b24c
mov edx, str.RELEASENUMBER
mov ecx, 0x70
call fcn.00401e00
push str._n_nThe_Relase_Number_to_Verify_is:
push 0x1388
lea eax, [ebp - 0x138c]
push eax
call fcn.00406ec3
push 0x42b24c
lea eax, [ebp - 0x138c]
push 0x1388
push eax
call fcn.00406ec3
add esp, 0x38
mov dword [0x42c15c], 1
inc esi
call fcn.0040e856
cmp esi, dword [eax]
jl 0x402068
cmp dword [0x42c15c], 0
jne 0x402327
push 0xa
push 0x42b24c
mov edx, str.RELEASENUMBER
mov ecx, 0x70
call fcn.00401e00
mov al, byte [0x42b24c]
xorps xmm0, xmm0
add esp, 8
movlpd qword [ebp - 0x13a0], xmm0
mov edi, dword [ebp - 0x13a0]
mov dword [ebp - 0x1390], 0x42b24c
test al, al
je 0x402306
push ebx
mov ebx, dword [ebp - 0x139c]
movsx eax, al
mov ecx, edi
sub eax, 0x30
cdq
mov esi, edx
mov edx, ebx
shld edx, ecx, 2
shl ecx, 2
add edi, ecx
adc ebx, edx
shld ebx, edi, 1
add edi, edi
add edi, eax
mov eax, dword [ebp - 0x1390]
adc ebx, esi
inc eax
mov dword [ebp - 0x1390], eax
mov al, byte [eax]
test al, al
jne 0x4022d0
pop ebx
mov dword [0x42ae3c], edi
test edi, edi
jne 0x402335
push 6
push 0x42b240
mov edx, str.VERIFYVERSION
lea ecx, [edi + 0x6b]
call fcn.00401e00
add esp, 8
mov edi, dword [0x42ae3c]
test edi, edi
je 0x4023b4
lea eax, [ebp - 0x1390]
mov dword [ebp - 0x1390], 0
push eax
push 0x20119
push 0
push str.SOFTWAREMicrosoftNET_Framework_SetupNDP_v4Full
push SysStringLen
mov dword [ebp - 0x139c], 4
mov dword [ebp - 0x1398], 4
mov dword [ebp - 0x1394], 0
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x4023a7
lea eax, [ebp - 0x1398]
push eax
lea eax, [ebp - 0x1394]
push eax
lea eax, [ebp - 0x139c]
push eax
push 0
push str.Release
push dword [ebp - 0x1390]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov eax, dword [ebp - 0x1394]
cmp eax, edi
jmp 0x4025e4
mov ecx, 0x4251ac
mov eax, 0x42b240
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4023e0
test dl, dl
je 0x4023dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4023e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4023c0
xor eax, eax
jmp 0x4023e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4024b6
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov dword [ebp - 0x1394], eax
mov dword [ebp - 0x1390], eax
lea eax, [ebp - 0x1394]
push eax
push 0x20119
push 0
push str.SOFTWAREMicrosoftNET_Framework_SetupNDP_v3.5
push SysStringLen
mov dword [ebp - 0x1398], 4
mov dword [ebp - 0x139c], 4
call esi
mov edi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40245b
lea eax, [ebp - 0x139c]
push eax
lea eax, [ebp - 0x1390]
push eax
lea eax, [ebp - 0x1398]
push eax
push 0
push str.Install
push dword [ebp - 0x1394]
call edi
mov eax, dword [ebp - 0x1390]
mov dword [0x42831c], eax
cmp eax, 1
je 0x402639
test eax, eax
jne 0x402640
mov dword [ebp - 0x1394], eax
mov dword [ebp - 0x1390], eax
lea eax, [ebp - 0x1394]
push eax
push 0x20119
push 0
push str.SOFTWAREMicrosoftNET_Framework_SetupNDP_v4.0Client
push SysStringLen
mov dword [ebp - 0x1398], 4
mov dword [ebp - 0x139c], 4
call esi
jmp 0x402533
mov ecx, 0x4251b0
mov eax, 0x42b240
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4024e0
test dl, dl
je 0x4024dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4024e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4024c0
xor eax, eax
jmp 0x4024e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402604
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov dword [ebp - 0x1394], eax
mov dword [ebp - 0x1390], eax
lea eax, [ebp - 0x1394]
push eax
push 0x20119
push 0
push str.SOFTWAREMicrosoftNET_Framework_SetupNDP_v4.0Client
push SysStringLen
mov dword [ebp - 0x1398], 4
mov dword [ebp - 0x139c], 4
call esi
mov edi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x40255b
lea eax, [ebp - 0x139c]
push eax
lea eax, [ebp - 0x1390]
push eax
lea eax, [ebp - 0x1398]
push eax
push 0
push str.Install
push dword [ebp - 0x1394]
call edi
mov eax, dword [ebp - 0x1390]
mov dword [0x42831c], eax
cmp eax, 1
je 0x402639
lea eax, [ebp - 0x1394]
mov dword [ebp - 0x1394], 0
push eax
push 0x20119
push 0
push str.SOFTWAREMicrosoftNET_Framework_SetupNDP_v4Full
push SysStringLen
mov dword [ebp - 0x1398], 4
mov dword [ebp - 0x139c], 4
mov dword [ebp - 0x1390], 0
call esi
test eax, eax
jne 0x4025d9
lea eax, [ebp - 0x139c]
push eax
lea eax, [ebp - 0x1390]
push eax
lea eax, [ebp - 0x1398]
push eax
push 0
push str.Release
push dword [ebp - 0x1394]
call edi
mov eax, dword [ebp - 0x1390]
cmp eax, 0x5c615
mov dword [0x42831c], eax
jae 0x402639
call fcn.00403c30
pop edi
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00404bab
mov esp, ebp
pop ebp
ret 0x10
mov ecx, 0x423fc0
mov eax, 0x42b240
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x402630
test dl, dl
je 0x40262c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x402630
add eax, 2
add ecx, 2
test dl, dl
jne 0x402610
xor eax, eax
jmp 0x402635
sbb eax, eax
or eax, 1
test eax, eax
jne 0x402640
call fcn.00402660
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.00404bab
mov esp, ebp
pop ebp
ret 0x10