Function at 0x401210
Capabilities:
Contain obfuscated stackstrings
Delete registry key
Parse pe header
Query or enumerate registry key

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x41307d
mov eax, dword fs:[0]
push eax
sub esp, 0x1a4
mov eax, dword [0x41c004]
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 esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
lea eax, [ebp - 0x1a8]
push eax
push 0x20019
push 0
push str.SoftwareClientsStartMenuInternet
push 0x80000001
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1ac], 0
call esi
mov edi, eax
lea eax, [ebp - 0x1ac]
push eax
push 0x20019
push 0
push str.SoftwareClientsStartMenuInternet
push 0x80000002
mov dword [ebp - 0x1b0], edi
call esi
mov dword [ebp - 0x19c], eax
test eax, eax
je 0x4012a6
test edi, edi
jne 0x404377
mov ecx, dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
xor esi, esi
mov ebx, dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
mov dword [ebp - 0x1a0], 0x64
test edi, edi
jne 0x4035e0
mov edi, dword [ebp - 0x19c]
nop dword [eax]
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x1a0]
push eax
lea eax, [ebp - 0xd8]
push eax
push esi
push dword [ebp - 0x1a8]
call ecx
test eax, eax
jne 0x4035d4
lea eax, [ebp - 0xd8]
push 0x418e00
push eax
call fcn.004076d7
add esp, 8
test eax, eax
jne 0x40132b
lea eax, [ebp - 0xd8]
push str.Supemium
push eax
call fcn.004076d7
add esp, 8
test eax, eax
je 0x4035be
push 0x1e
xor eax, eax
mov dword [ebp - 0x120], 0
push str.CapabilitiesFileAssociations
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
mov dword [ebp - 4], 0
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4013a0
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x138]
push 0x23
xor eax, eax
mov dword [ebp - 0x138], 0
push str.SOFTWAREClientsStartMenuInternet_
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x138]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x120]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov ecx, dword [ebp - 0xdc]
cmp ecx, 8
jb 0x4014a1
mov edx, dword [ebp - 0xf0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401497
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
xor eax, eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 7
mov word [ebp - 0xf0], ax
cmp ecx, 8
jb 0x401502
mov edx, dword [ebp - 0x150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4014f8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x124]
cmp ecx, 8
jb 0x401546
mov edx, dword [ebp - 0x138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40153c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0xf4]
cmp ecx, 8
jb 0x40158a
mov edx, dword [ebp - 0x108]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401580
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x10c]
cmp ecx, 8
jb 0x4015d1
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4015c7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
push 0x17
xor eax, eax
mov dword [ebp - 0x138], 0
push str.CapabilitiesStartmenu
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 4
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x401641
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x120]
push 0x23
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SOFTWAREClientsStartMenuInternet_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov ecx, dword [ebp - 0xdc]
cmp ecx, 8
jb 0x401742
mov edx, dword [ebp - 0xf0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401738
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
xor eax, eax
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 7
mov word [ebp - 0xf0], ax
cmp ecx, 8
jb 0x4017a3
mov edx, dword [ebp - 0x150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401799
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x10c]
cmp ecx, 8
jb 0x4017e7
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4017dd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0xf4]
cmp ecx, 8
jb 0x40182b
mov edx, dword [ebp - 0x108]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401821
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x124]
cmp ecx, 8
jb 0x401872
mov edx, dword [ebp - 0x138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401868
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
push 0x1d
xor eax, eax
mov dword [ebp - 0x138], 0
push str.CapabilitiesURLAssociations
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 8
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4018e2
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x120]
push 0x23
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SOFTWAREClientsStartMenuInternet_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov ecx, dword [ebp - 0xdc]
cmp ecx, 8
jb 0x4019e3
mov edx, dword [ebp - 0xf0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4019d9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 7
mov word [ebp - 0xf0], ax
cmp ecx, 8
jb 0x401a44
mov edx, dword [ebp - 0x150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401a3a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x10c]
cmp ecx, 8
jb 0x401a88
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401a7e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0xf4]
cmp ecx, 8
jb 0x401acc
mov edx, dword [ebp - 0x108]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401ac2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x124]
cmp ecx, 8
jb 0x401b13
mov edx, dword [ebp - 0x138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401b09
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
push 0xd
xor eax, eax
mov dword [ebp - 0x138], 0
push str.Capabilities
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x401b83
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x120]
push 0x23
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SOFTWAREClientsStartMenuInternet_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0xf
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov ecx, dword [ebp - 0xdc]
cmp ecx, 8
jb 0x401c84
mov edx, dword [ebp - 0xf0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401c7a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 7
mov word [ebp - 0xf0], ax
cmp ecx, 8
jb 0x401ce5
mov edx, dword [ebp - 0x150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401cdb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x10c]
cmp ecx, 8
jb 0x401d29
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401d1f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0xf4]
cmp ecx, 8
jb 0x401d6d
mov edx, dword [ebp - 0x108]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401d63
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x124]
cmp ecx, 8
jb 0x401db4
mov edx, dword [ebp - 0x138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401daa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
push 0xc
xor eax, eax
mov dword [ebp - 0x138], 0
push 0x418f38
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x401e24
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x120]
push 0x23
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SOFTWAREClientsStartMenuInternet_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x13
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov ecx, dword [ebp - 0xdc]
cmp ecx, 8
jb 0x401f25
mov edx, dword [ebp - 0xf0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401f1b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 7
mov word [ebp - 0xf0], ax
cmp ecx, 8
jb 0x401f86
mov edx, dword [ebp - 0x150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401f7c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x10c]
cmp ecx, 8
jb 0x401fca
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x401fc0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0xf4]
cmp ecx, 8
jb 0x40200e
mov edx, dword [ebp - 0x108]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402004
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x124]
cmp ecx, 8
jb 0x402055
mov edx, dword [ebp - 0x138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40204b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
push 0xc
xor eax, eax
mov dword [ebp - 0x138], 0
push str.InstallInfo
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 0x14
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4020c5
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x120]
push 0x23
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SOFTWAREClientsStartMenuInternet_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x17
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov ecx, dword [ebp - 0xdc]
cmp ecx, 8
jb 0x4021c6
mov edx, dword [ebp - 0xf0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4021bc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 7
mov word [ebp - 0xf0], ax
cmp ecx, 8
jb 0x402227
mov edx, dword [ebp - 0x150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40221d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x10c]
cmp ecx, 8
jb 0x40226b
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402261
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0xf4]
cmp ecx, 8
jb 0x4022af
mov edx, dword [ebp - 0x108]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4022a5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x124]
cmp ecx, 8
jb 0x4022f6
mov edx, dword [ebp - 0x138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4022ec
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
push 0x13
xor eax, eax
mov dword [ebp - 0x138], 0
push str._shellopencommand
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 0x18
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x402366
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x120]
push 0x23
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SOFTWAREClientsStartMenuInternet_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x1a
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x1b
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov ecx, dword [ebp - 0xdc]
cmp ecx, 8
jb 0x402467
mov edx, dword [ebp - 0xf0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40245d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 7
mov word [ebp - 0xf0], ax
cmp ecx, 8
jb 0x4024c8
mov edx, dword [ebp - 0x150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4024be
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x10c]
cmp ecx, 8
jb 0x40250c
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402502
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0xf4]
cmp ecx, 8
jb 0x402550
mov edx, dword [ebp - 0x108]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402546
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x124]
cmp ecx, 8
jb 0x402597
mov edx, dword [ebp - 0x138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40258d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
push 0xb
xor eax, eax
mov dword [ebp - 0x138], 0
push str._shellopen
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 0x1c
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x402607
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x120]
push 0x23
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SOFTWAREClientsStartMenuInternet_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x1f
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov ecx, dword [ebp - 0xdc]
cmp ecx, 8
jb 0x402708
mov edx, dword [ebp - 0xf0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4026fe
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 7
mov word [ebp - 0xf0], ax
cmp ecx, 8
jb 0x402769
mov edx, dword [ebp - 0x150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40275f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x10c]
cmp ecx, 8
jb 0x4027ad
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4027a3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0xf4]
cmp ecx, 8
jb 0x4027f1
mov edx, dword [ebp - 0x108]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4027e7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x124]
cmp ecx, 8
jb 0x402838
mov edx, dword [ebp - 0x138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40282e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
push 6
xor eax, eax
mov dword [ebp - 0x138], 0
push str._shell
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 0x20
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4028b0
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x120]
push 0x23
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SOFTWAREClientsStartMenuInternet_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x22
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x23
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov ecx, dword [ebp - 0xdc]
cmp ecx, 8
jb 0x4029b1
mov edx, dword [ebp - 0xf0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4029a7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 7
mov word [ebp - 0xf0], ax
cmp ecx, 8
jb 0x402a12
mov edx, dword [ebp - 0x150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402a08
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x10c]
cmp ecx, 8
jb 0x402a56
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402a4c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0xf4]
cmp ecx, 8
jb 0x402a9a
mov edx, dword [ebp - 0x108]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402a90
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x124]
cmp ecx, 8
jb 0x402ae1
mov edx, dword [ebp - 0x138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402ad7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
xor eax, eax
mov dword [ebp - 0x108], 0
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 7
lea edx, [ecx + 2]
mov word [ebp - 0x108], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x402b11
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov dword [ebp - 4], 0x24
lea ecx, [ebp - 0x120]
push 0x23
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SOFTWAREClientsStartMenuInternet_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x25
push eax
lea eax, [ebp - 0x120]
push eax
push edi
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov ecx, dword [ebp - 0xdc]
cmp ecx, 8
jb 0x402bed
mov edx, dword [ebp - 0xf0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402be3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x10c]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 7
mov word [ebp - 0xf0], ax
cmp ecx, 8
jb 0x402c4e
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402c44
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xf4]
cmp ecx, 8
jb 0x402c95
mov edx, dword [ebp - 0x108]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402c8b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
push 0xc
xor eax, eax
mov dword [ebp - 0x138], 0
push 0x418f38
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 0x26
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x402d05
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x120]
push 0x11
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SoftwareClasses_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x28
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x29
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov eax, dword [ebp - 0xdc]
cmp eax, 8
jb 0x402dde
inc eax
push eax
push dword [ebp - 0xf0]
call fcn.004061d0
xor eax, eax
mov dword [ebp - 0xe0], 0
mov word [ebp - 0xf0], ax
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xdc], 7
cmp eax, 8
jb 0x402e13
inc eax
push eax
push dword [ebp - 0x150]
call fcn.004061d0
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x10c]
cmp ecx, 8
jb 0x402e57
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402e4d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0xf4]
cmp ecx, 8
jb 0x402e9b
mov edx, dword [ebp - 0x108]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402e91
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x124]
cmp ecx, 8
jb 0x402ee2
mov edx, dword [ebp - 0x138]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402ed8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
push 0x13
xor eax, eax
mov dword [ebp - 0x138], 0
push str._shellopencommand
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 0x2a
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x402f52
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x120]
push 0x11
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SoftwareClasses_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x2c
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x2d
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov eax, dword [ebp - 0xdc]
cmp eax, 8
jb 0x40302b
inc eax
push eax
push dword [ebp - 0xf0]
call fcn.004061d0
xor eax, eax
mov dword [ebp - 0xe0], 0
mov word [ebp - 0xf0], ax
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xdc], 7
cmp eax, 8
jb 0x403060
inc eax
push eax
push dword [ebp - 0x150]
call fcn.004061d0
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x10c]
cmp ecx, 8
jb 0x4030a4
mov edx, dword [ebp - 0x120]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40309a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x404393
push ecx
push edx
call fcn.004065e3
add esp, 8
mov eax, dword [ebp - 0xf4]
cmp eax, 8
jb 0x4030bc
inc eax
push eax
push dword [ebp - 0x108]
call fcn.004061d0
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x124]
cmp eax, 8
jb 0x4030db
inc eax
push eax
push dword [ebp - 0x138]
call fcn.004061d0
push 0xb
xor eax, eax
mov dword [ebp - 0x138], 0
push str._shellopen
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 0x2e
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x403150
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x120]
push 0x11
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SoftwareClasses_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x30
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x31
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov eax, dword [ebp - 0xdc]
cmp eax, 8
jb 0x403229
inc eax
push eax
push dword [ebp - 0xf0]
call fcn.004061d0
xor eax, eax
mov dword [ebp - 0xe0], 0
mov word [ebp - 0xf0], ax
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xdc], 7
cmp eax, 8
jb 0x40325e
inc eax
push eax
push dword [ebp - 0x150]
call fcn.004061d0
mov eax, dword [ebp - 0x10c]
cmp eax, 8
jb 0x403276
inc eax
push eax
push dword [ebp - 0x120]
call fcn.004061d0
mov eax, dword [ebp - 0xf4]
cmp eax, 8
jb 0x40328e
inc eax
push eax
push dword [ebp - 0x108]
call fcn.004061d0
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x124]
cmp eax, 8
jb 0x4032ad
inc eax
push eax
push dword [ebp - 0x138]
call fcn.004061d0
push 6
xor eax, eax
mov dword [ebp - 0x138], 0
push str._shell
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 0x32
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x403320
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x120]
push 0x11
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SoftwareClasses_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x34
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x35
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov eax, dword [ebp - 0xdc]
cmp eax, 8
jb 0x4033f9
inc eax
push eax
push dword [ebp - 0xf0]
call fcn.004061d0
xor eax, eax
mov dword [ebp - 0xe0], 0
mov word [ebp - 0xf0], ax
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xdc], 7
cmp eax, 8
jb 0x40342e
inc eax
push eax
push dword [ebp - 0x150]
call fcn.004061d0
mov eax, dword [ebp - 0x10c]
cmp eax, 8
jb 0x403446
inc eax
push eax
push dword [ebp - 0x120]
call fcn.004061d0
mov eax, dword [ebp - 0xf4]
cmp eax, 8
jb 0x40345e
inc eax
push eax
push dword [ebp - 0x108]
call fcn.004061d0
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x124]
cmp eax, 8
jb 0x40347d
inc eax
push eax
push dword [ebp - 0x138]
call fcn.004061d0
xor eax, eax
mov dword [ebp - 0x108], 0
mov word [ebp - 0x108], ax
lea eax, [ebp - 0xd8]
mov dword [ebp - 0xf8], 0
lea edx, [eax + 2]
mov dword [ebp - 0xf4], 7
nop dword [eax]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4034b0
sub eax, edx
lea ecx, [ebp - 0x108]
sar eax, 1
push eax
lea eax, [ebp - 0xd8]
push eax
call fcn.00406070
mov dword [ebp - 4], 0x36
lea ecx, [ebp - 0x120]
push 0x11
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SoftwareClasses_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x37
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000001
call ebx
mov eax, dword [ebp - 0xdc]
cmp eax, 8
jb 0x403569
inc eax
push eax
push dword [ebp - 0xf0]
call fcn.004061d0
xor eax, eax
mov dword [ebp - 0xe0], 0
mov word [ebp - 0xf0], ax
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0xdc], 7
cmp eax, 8
jb 0x40359e
inc eax
push eax
push dword [ebp - 0x120]
call fcn.004061d0
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0xf4]
cmp eax, 8
jb 0x4035bd
inc eax
push eax
push dword [ebp - 0x108]
call fcn.004061d0
dec esi
mov ecx, dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
inc esi
mov dword [ebp - 0x1a0], 0x64
jmp 0x4012d0
mov ecx, dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov edi, dword [ebp - 0x1b0]
xor eax, eax
mov dword [ebp - 0x1a0], 0x64
mov dword [ebp - 0x1a4], eax
cmp dword [ebp - 0x19c], eax
jne 0x404354
nop
push 0
push 0
push 0
push 0
lea edx, [ebp - 0x1a0]
push edx
lea edx, [ebp - 0xd8]
push edx
push eax
push dword [ebp - 0x1ac]
call ecx
test eax, eax
jne 0x40434e
lea eax, [ebp - 0xd8]
push 0x418e00
push eax
call fcn.004076d7
add esp, 8
test eax, eax
jne 0x40365b
lea eax, [ebp - 0xd8]
push str.Supemium
push eax
call fcn.004076d7
add esp, 8
test eax, eax
je 0x40432c
push 0x1e
xor eax, eax
mov dword [ebp - 0x138], 0
push str.CapabilitiesFileAssociations
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 7
mov word [ebp - 0x138], ax
call fcn.00406070
mov dword [ebp - 4], 0x38
lea ecx, [ebp - 0xd8]
xor eax, eax
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
lea edx, [ecx + 2]
mov dword [ebp - 0xf4], 7
mov word [ebp - 0x108], ax
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4036d0
sub ecx, edx
lea eax, [ebp - 0xd8]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.00406070
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x120]
push 0x23
xor eax, eax
mov dword [ebp - 0x120], 0
push str.SOFTWAREClientsStartMenuInternet_
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 7
mov word [ebp - 0x120], ax
call fcn.00406070
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x3a
push eax
lea eax, [ebp - 0x120]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0x150]
call fcn.00406230
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x3b
push eax
lea eax, [ebp - 0x150]
push eax
push dword [ebp - 0x19c]
lea ecx, [ebp - 0xf0]
call fcn.00406230
cmp dword [ebp - 0xdc], 8
lea eax, [ebp - 0xf0]
cmovae eax, dword [ebp - 0xf0]
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0xf0]
call fcn.00405fd0
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str.CapabilitiesStartmenu
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x3c
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SOFTWAREClientsStartMenuInternet_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x3d
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str.CapabilitiesURLAssociations
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x40
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SOFTWAREClientsStartMenuInternet_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x41
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str.Capabilities
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x44
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SOFTWAREClientsStartMenuInternet_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x45
call fcn.00406030
mov byte [ebp - 4], 0x46
push esi
mov edx, eax
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push 0x418f38
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x48
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SOFTWAREClientsStartMenuInternet_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x49
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x4b
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str.InstallInfo
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x4c
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SOFTWAREClientsStartMenuInternet_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x4d
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str._shellopencommand
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x50
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SOFTWAREClientsStartMenuInternet_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x51
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x52
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str._shellopen
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x54
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SOFTWAREClientsStartMenuInternet_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x55
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str._shell
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x58
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SOFTWAREClientsStartMenuInternet_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x59
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x5b
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
lea eax, [ebp - 0xd8]
push eax
lea ecx, [ebp - 0x108]
call fcn.00406030
mov esi, eax
push str.SOFTWAREClientsStartMenuInternet_
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0x5c
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x5d
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 4
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push 0x418f38
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x5e
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SoftwareClasses_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x5f
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x61
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xf0]
call fcn.00405fd0
push str._shellopencommand
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x62
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SoftwareClasses_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x63
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x64
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str._shellopen
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x66
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SoftwareClasses_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x67
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x68
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str._shell
lea ecx, [ebp - 0xf0]
call fcn.00406030
mov edi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x6a
push eax
lea ecx, [ebp - 0x138]
call fcn.00406030
mov esi, eax
push str.SoftwareClasses_
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x6b
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x120]
call fcn.00406210
push edi
mov edx, eax
mov byte [ebp - 4], 0x6d
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 8
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
call fcn.00405fd0
lea ecx, [ebp - 0x138]
call fcn.00405fd0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
lea eax, [ebp - 0xd8]
push eax
lea ecx, [ebp - 0x108]
call fcn.00406030
mov esi, eax
push str.SoftwareClasses_
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0x6e
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x6f
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 4
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000002
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push 0x418f38
lea ecx, [ebp - 0x108]
call fcn.00406030
mov esi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x70
push eax
lea ecx, [ebp - 0x120]
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 4
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000000
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str._shellopencommand
lea ecx, [ebp - 0x108]
call fcn.00406030
mov esi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x72
push eax
lea ecx, [ebp - 0x120]
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x73
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 4
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000000
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str._shellopen
lea ecx, [ebp - 0x108]
call fcn.00406030
mov esi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x74
push eax
lea ecx, [ebp - 0x120]
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x75
lea ecx, [ebp - 0x150]
call fcn.00406210
add esp, 4
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000000
call ebx
lea ecx, [ebp - 0x150]
call fcn.00405fd0
lea ecx, [ebp - 0x120]
call fcn.00405fd0
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
push str._shell
lea ecx, [ebp - 0x198]
call fcn.00406030
mov esi, eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x76
push eax
lea ecx, [ebp - 0x180]
call fcn.00406030
push esi
mov edx, eax
mov byte [ebp - 4], 0x77
lea ecx, [ebp - 0x168]
call fcn.00406210
add esp, 4
mov ecx, eax
call fcn.00405fc0
push eax
push 0x80000000
call ebx
lea ecx, [ebp - 0x168]
call fcn.00405fd0
lea ecx, [ebp - 0x180]
call fcn.00405fd0
lea ecx, [ebp - 0x198]
mov dword [ebp - 4], 0xffffffff
call fcn.00405fd0
lea eax, [ebp - 0xd8]
push eax
push 0x80000000
call ebx
mov eax, dword [ebp - 0x1a4]
dec eax
jmp 0x404332
mov eax, dword [ebp - 0x1a4]
mov ecx, dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
inc eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], 0x64
jmp 0x403600
mov edi, dword [ebp - 0x1b0]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test edi, edi
jne 0x404366
push dword [ebp - 0x1a8]
call esi
cmp dword [ebp - 0x19c], 0
jne 0x404377
push dword [ebp - 0x1ac]
call esi
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.004065a5
mov esp, ebp
pop ebp
ret
call fcn.00409acc
int3