Function at 0x401bcb
Capabilities:
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
push 8
call fcn.00405938
add esp, 4
mov dword [ebp - 4], eax
mov edi, eax
mov esi, 0x4a41d5
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.AppData
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x401c34
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x401c77
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Cache
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x401cbf
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x401d02
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.CD_Burning
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x401d4a
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x401d8d
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Cookies
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x401dd5
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x401e18
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Desktop
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x401e60
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x401ea3
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Favorites
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x401eeb
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x401f2e
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Fonts
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x401f76
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x401fb9
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.History
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402001
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402044
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Local_AppData
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40208c
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x4020cf
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Local_Settings
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402117
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x40215a
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.My_Music
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4021a2
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x4021e5
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.My_Pictures
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40222d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402270
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.My_Video
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4022b8
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x4022fb
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.NetHood
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402343
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402386
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Personal
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4023ce
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402411
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.PrintHood
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402459
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x40249c
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Programs
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4024e4
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402527
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Recent
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40256f
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x4025b2
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.SendTo
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4025fa
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x40263d
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Start_Menu
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402685
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x4026c8
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Startup
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402710
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402753
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Templates
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40279b
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x4027de
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Common_Administrative_Tools
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402826
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402869
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Common_AppData
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4028b1
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x4028f4
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Common_Desktop
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40293c
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x40297f
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Common_Documents
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4029c7
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402a0a
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Common_Favorites
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402a52
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402a95
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Common_Programs
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402add
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402b20
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Common_Start_Menu
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402b68
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402bab
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Common_Startup
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402bf3
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402c36
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Common_Templates
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402c7e
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402cc1
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.CommonMusic
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402d09
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402d4c
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.CommonPictures
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402d94
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402dd7
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.CommonVideo
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402e1f
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402e62
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.Temp
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402eaa
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402eed
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.WinDir
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402f35
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x402f78
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.System32
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x402fc0
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x403003
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.USERPROFILE
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40304b
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x40308e
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.ALLUSERSPROFILE
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4030d6
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x403119
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.ProgramFiles
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x403161
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x4031a4
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.CommonProgramFiles
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4031ec
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x40322f
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, str.SystemDrive
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x403277
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x4032ba
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.0040591a
add esp, 8
mov eax, 0x4a4564
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0xc], ebx
call fcn.00401ace
mov dword [ebp - 0x10], ecx
mov edi, dword [ebp - 0xc]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x403302
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x10]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0xc]
call fcn.00405944
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x10]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 8]
push edi
test eax, eax
je 0x403345
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.00405938
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
cmp dword [ebp + 8], 1
jl 0x403367
mov ebx, dword [ebp - 4]
call fcn.00401aee
cmp dword [ebp + 8], eax
jg 0x403367
xor eax, eax
jmp 0x40336c
mov eax, 1
test eax, eax
je 0x40337b
mov dword [ebp + 8], 1
mov ebx, dword [ebp - 4]
call fcn.00401ace
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x4033a2
push 0x7f5
push 0x401efea
push 4
call fcn.00405926
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4033bf
push 0x7f5
push 0x401efea
push 1
call fcn.00405926
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 8], ebx
push VariantClear
push 0
mov ebx, dword [ebp - 8]
mov eax, dword [ebx]
test eax, eax
jne 0x4033dc
mov eax, 0x4a41d4
push eax
push 1
mov ebx, 0x406170
call fcn.00405932
add esp, 0x10
mov dword [ebp - 0xc], eax
push 0x4a4564
push dword [ebp - 0xc]
call fcn.00401b07
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x403420
push ebx
call fcn.00405920
add esp, 4
cmp dword [ebp - 0x10], 0
je 0x403447
push 0
mov ebx, 0x405d70
call fcn.00405932
add esp, 4
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
jmp 0x4039f1
mov ebx, dword [ebp - 4]
call fcn.00401ace
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40346e
push 0x888
push 0x401efea
push 4
call fcn.00405926
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40348b
push 0x888
push 0x401efea
push 1
call fcn.00405926
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 8], ebx
push VariantClear
push 0
mov ebx, dword [ebp - 8]
mov eax, dword [ebx]
test eax, eax
jne 0x4034a8
mov eax, 0x4a41d4
push eax
push 1
mov ebx, 0x406170
call fcn.00405932
add esp, 0x10
mov dword [ebp - 0xc], eax
push VariantClear
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x4034d1
mov eax, 0x4a41d4
push eax
push 1
mov ebx, 0x405db0
call fcn.00405932
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4034f7
push ebx
call fcn.00405920
add esp, 4
push 0x4a41d4
push dword [ebp - 0x10]
call fcn.00401b07
add esp, 8
cmp eax, 0
mov eax, 0
setne al
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x403525
push ebx
call fcn.00405920
add esp, 4
cmp dword [ebp - 0x14], 0
je 0x4035e7
mov ebx, dword [ebp - 4]
call fcn.00401ace
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x403556
push 0x8d6
push 0x401efea
push 4
call fcn.00405926
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403573
push 0x8d6
push 0x401efea
push 1
call fcn.00405926
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 8], ebx
push VariantClear
push 0
mov ebx, dword [ebp - 8]
mov eax, dword [ebx]
test eax, eax
jne 0x403590
mov eax, 0x4a41d4
push eax
push 1
mov ebx, 0x406170
call fcn.00405932
add esp, 0x10
mov dword [ebp - 0xc], eax
push VariantClear
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x4035b9
mov eax, 0x4a41d4
push eax
push 1
mov ebx, 0x405db0
call fcn.00405932
add esp, 0x10
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4035df
push ebx
call fcn.00405920
add esp, 4
mov eax, dword [ebp - 0x10]
jmp 0x4039f1
mov ebx, dword [ebp - 4]
call fcn.00401ace
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x40360e
push 0x91f
push 0x401efea
push 4
call fcn.00405926
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x40362b
push 0x91f
push 0x401efea
push 1
call fcn.00405926
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 8], ebx
push VariantClear
push 0
mov ebx, dword [ebp - 8]
mov eax, dword [ebx]
test eax, eax
jne 0x403648
mov eax, 0x4a41d4
push eax
push 1
mov ebx, 0x406170
call fcn.00405932
add esp, 0x10
mov dword [ebp - 0xc], eax
push VariantClear
push 0
push str.System32
push 1
mov ebx, 0x406170
call fcn.00405932
add esp, 0x10
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
push eax
push dword [ebp - 0xc]
call fcn.00401b07
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4036ac
push ebx
call fcn.00405920
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4036bc
push ebx
call fcn.00405920
add esp, 4
cmp dword [ebp - 0x14], 0
je 0x4037c2
push VariantClear
push 0
push str.ComSpec
push 1
mov ebx, 0x405db0
call fcn.00405932
add esp, 0x10
mov dword [ebp - 8], eax
push VariantClear
push 0
push str.ComSpec
push 1
mov ebx, 0x405db0
call fcn.00405932
add esp, 0x10
mov dword [ebp - 0xc], eax
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push VariantClear
push 0
push 0x4a4579
push VariantClear
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x403739
mov eax, 0x4a41d4
push eax
push 4
mov ebx, 0x405fe0
call fcn.00405932
add esp, 0x34
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40375f
push ebx
call fcn.00405920
add esp, 4
fild dword [ebp - 0x10]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
fsub qword [0x4a457b]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
call fcn.00401ba4
push 0x80000301
push 0
push eax
push VariantClear
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x403794
mov eax, 0x4a41d4
push eax
push 2
mov ebx, 0x405dd0
call fcn.00405932
add esp, 0x1c
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4037ba
push ebx
call fcn.00405920
add esp, 4
mov eax, dword [ebp - 0x24]
jmp 0x4039f1
mov ebx, dword [ebp - 4]
call fcn.00401ace
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x4037e9
push 0xa71
push 0x401efea
push 4
call fcn.00405926
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403806
push 0xa71
push 0x401efea
push 1
call fcn.00405926
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 8], ebx
push VariantClear
push 0
mov ebx, dword [ebp - 8]
mov eax, dword [ebx]
test eax, eax
jne 0x403823
mov eax, 0x4a41d4
push eax
push 1
mov ebx, 0x406170
call fcn.00405932
add esp, 0x10
mov dword [ebp - 0xc], eax
push 0x80000301
push 0
push 6
push VariantClear
push 0
mov eax, dword [ebp - 0xc]
test eax, eax
jne 0x403858
mov eax, 0x4a41d4
push eax
push 2
mov ebx, 0x405dd0
call fcn.00405932
add esp, 0x1c
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40387e
push ebx
call fcn.00405920
add esp, 4
push VariantClear
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x403891
mov eax, 0x4a41d4
push eax
push 1
mov ebx, 0x406170
call fcn.00405932
add esp, 0x10
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4038b7
push ebx
call fcn.00405920
add esp, 4
push 0x4a4583
push dword [ebp - 0x14]
call fcn.00401b07
add esp, 8
cmp eax, 0
mov eax, 0
sete al
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4038e5
push ebx
call fcn.00405920
add esp, 4
cmp dword [ebp - 0x18], 0
je 0x4038f9
mov eax, 4
jmp 0x4038fe
mov eax, 3
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 4]
call fcn.00401ace
push ebx
push ecx
mov eax, dword [ebp + 8]
dec eax
jns 0x403928
push 0xb0e
push 0x401efea
push 4
call fcn.00405926
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x403945
push 0xb0e
push 0x401efea
push 1
call fcn.00405926
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x20], ebx
push VariantClear
push 0
mov ebx, dword [ebp - 0x20]
mov eax, dword [ebx]
test eax, eax
jne 0x403962
mov eax, 0x4a41d4
push eax
push 1
mov ebx, 0x406170
call fcn.00405932
add esp, 0x10
mov dword [ebp - 0x24], eax
push dword [ebp - 0x24]
push str.SoftwareMicrosoftWindowsCurrentVersionExplorerShell_Folders_
mov ecx, 2
call fcn.0040106f
add esp, 8
mov dword [ebp - 0x28], eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x4039a0
push ebx
call fcn.00405920
add esp, 4
push 0
push 0
push 0
push VariantClear
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x4039b9
mov eax, 0x4a41d4
push eax
push 0x80000301
push 0
push dword [ebp - 0x1c]
push 3
mov ebx, 0x406cc0
call fcn.00405932
add esp, 0x28
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x4039e9
push ebx
call fcn.00405920
add esp, 4
mov eax, dword [ebp - 0x2c]
jmp 0x4039f1
push eax
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x403a10
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x403a0c
imul eax, dword [ebx]
jmp 0x403a01
mov ecx, eax
test ecx, ecx
je 0x403a2f
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x403a28
push ebx
push eax
call fcn.00405920
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x403a16
call fcn.00405920
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 8