Function at 0x420f10
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6023a1
mov eax, dword fs:[0]
push eax
mov eax, 0x1a08
call fcn.005373d0
mov eax, dword [0x67e4d0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x19cc], ecx
push str.write_path_regitery
call fcn.0043d410
add esp, 4
call fcn.00428b80
mov ecx, eax
call fcn.00429d10
mov dword [ebp - 0x19b4], eax
mov dword [ebp - 0x19d4], 1
mov eax, dword [ebp - 0x19b4]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x19b4]
mov eax, dword [edx + 0x14]
call eax
mov dword [ebp - 0x19d0], eax
push 1
lea ecx, [ebp - 0x9b0]
call fcn.004164b0
lea ecx, [ebp - 0x9b0]
call fcn.00416460
push eax
lea ecx, [ebp - 0x9b0]
call fcn.00416470
push eax
mov ecx, dword [ebp - 0x19b4]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x19b4]
mov eax, dword [edx + 0x18]
call eax
push 0
lea ecx, [ebp - 0x9b0]
call fcn.00424350
movzx ecx, word [eax]
test ecx, ecx
jne 0x420fda
xor eax, eax
jmp 0x42139d
push 1
lea ecx, [ebp - 0x19b0]
call fcn.004164b0
lea ecx, [ebp - 0x19b0]
call fcn.00416460
push eax
lea ecx, [ebp - 0x19b0]
call fcn.00416470
push eax
mov edx, dword [ebp - 0x19b4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x19b4]
mov edx, dword [eax + 0x1c]
call edx
mov ecx, dword [ebp - 0x19cc]
add ecx, 4
call fcn.0040ade0
shl eax, 1
push eax
mov ecx, dword [ebp - 0x19cc]
add ecx, 4
call fcn.0040f210
push eax
push 1
lea ecx, [ebp - 0x19b0]
call fcn.00416490
push eax
lea ecx, [ebp - 0x9b0]
call fcn.00416490
push eax
mov eax, dword [ebp - 0x19d0]
push eax
call dword [sym.imp.SHLWAPI.dll_SHSetValueW]
test eax, eax
jne 0x421069
mov dword [ebp - 0x19d8], 1
jmp 0x421073
mov dword [ebp - 0x19d8], 0
mov ecx, dword [ebp - 0x19d4]
and ecx, dword [ebp - 0x19d8]
mov dword [ebp - 0x19d4], ecx
lea edx, [ebp - 0x19f0]
push edx
call fcn.0040a960
mov ecx, eax
call fcn.00420340
mov dword [ebp - 0x19e8], eax
mov eax, dword [ebp - 0x19e8]
mov dword [ebp - 0x19ec], eax
mov dword [ebp - 4], 0
push 0x650f6c
mov ecx, dword [ebp - 0x19ec]
call fcn.004248a0
test eax, eax
jne 0x4210d1
mov dword [ebp - 0x19dc], 1
jmp 0x4210db
mov dword [ebp - 0x19dc], 0
mov cl, byte [ebp - 0x19dc]
mov byte [ebp - 0x19b5], cl
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x19f0]
call fcn.0040ac80
movzx edx, byte [ebp - 0x19b5]
test edx, edx
je 0x4211b0
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x20]
push ecx
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
lea ecx, [ebp - 0x19c0]
call fcn.0040f160
mov dword [ebp - 4], 1
movzx edx, word [ebp - 0x14]
push edx
movzx eax, word [ebp - 0x16]
push eax
movzx ecx, word [ebp - 0x18]
push ecx
movzx edx, word [ebp - 0x1a]
push edx
movzx eax, word [ebp - 0x1e]
push eax
movzx ecx, word [ebp - 0x20]
push ecx
push str._04d__02d__02d__02d:_02d:_02d
lea edx, [ebp - 0x19c0]
push edx
call fcn.00410cb0
add esp, 0x20
lea ecx, [ebp - 0x19c0]
call fcn.0040ade0
shl eax, 1
push eax
lea ecx, [ebp - 0x19c0]
call fcn.0040f210
push eax
push 1
push str.InstallDate
lea ecx, [ebp - 0x9b0]
call fcn.00416490
push eax
mov eax, dword [ebp - 0x19d0]
push eax
call dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x19c0]
call fcn.0040ac80
push 1
lea ecx, [ebp - 0x1b0]
call fcn.00423f30
lea ecx, [ebp - 0x1b0]
call fcn.00423ee0
push eax
lea ecx, [ebp - 0x1b0]
call fcn.00423ef0
push eax
mov ecx, dword [ebp - 0x19b4]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x19b4]
mov eax, dword [edx + 0x10]
call eax
push 1
lea ecx, [ebp - 0x11b0]
call fcn.004164b0
lea ecx, [ebp - 0x1b0]
call fcn.00423f10
push eax
mov ecx, dword [ebp - 0x19cc]
add ecx, 4
call fcn.0040f210
push eax
lea ecx, [ebp - 0x11b0]
call fcn.00416470
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea ecx, [ebp - 0x11b0]
call fcn.00416490
mov dword [ebp - 0x19bc], eax
mov ecx, dword [ebp - 0x19bc]
add ecx, 2
mov dword [ebp - 0x19f4], ecx
mov edx, dword [ebp - 0x19bc]
mov ax, word [edx]
mov word [ebp - 0x19c6], ax
add dword [ebp - 0x19bc], 2
cmp word [ebp - 0x19c6], 0
jne 0x421242
mov ecx, dword [ebp - 0x19bc]
sub ecx, dword [ebp - 0x19f4]
sar ecx, 1
mov dword [ebp - 0x19f8], ecx
lea ecx, [ebp - 0x11b0]
call fcn.00424340
imul eax, dword [ebp - 0x19f8]
push eax
lea ecx, [ebp - 0x11b0]
call fcn.00416490
push eax
push 1
push 0
lea ecx, [ebp - 0x9b0]
call fcn.00416490
push eax
mov edx, dword [ebp - 0x19d0]
push edx
call dword [sym.imp.SHLWAPI.dll_SHSetValueW]
call fcn.0040a960
mov ecx, eax
call fcn.0040db80
push eax
lea ecx, [ebp - 0x19e4]
call fcn.0040f140
mov dword [ebp - 4], 2
mov dword [ebp - 0x1a14], reloc.OLEAUT32.dll_SysReAllocString
xor eax, eax
mov byte [ebp - 0x19b6], al
lea ecx, [ebp - 0x19b6]
call fcn.004213c0
mov dword [ebp - 0x1a10], eax
mov dword [ebp - 0x1a0c], 0x65100c
lea ecx, [ebp - 0x19e4]
call fcn.0040f210
mov dword [ebp - 0x1a08], eax
mov dword [ebp - 0x1a04], 1
mov dword [ebp - 0x19c4], 0
jmp 0x421335
mov ecx, dword [ebp - 0x19c4]
add ecx, 1
mov dword [ebp - 0x19c4], ecx
cmp dword [ebp - 0x19c4], 1
jae 0x421379
imul edx, dword [ebp - 0x19c4], 0x14
lea eax, [ebp + edx - 0x1a14]
mov dword [ebp - 0x19fc], eax
call fcn.00428c10
mov dword [ebp - 0x19e0], eax
mov ecx, dword [ebp - 0x19fc]
push ecx
mov edx, dword [ebp - 0x19e0]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x19e0]
mov edx, dword [eax + 0x38]
call edx
jmp 0x421326
mov eax, dword [ebp - 0x19d4]
mov dword [ebp - 0x1a00], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x19e4]
call fcn.0040ac80
mov eax, dword [ebp - 0x1a00]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00536569
mov esp, ebp
pop ebp
ret