Function at 0x420df0
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x60f371
mov eax, dword fs:[0]
push eax
mov eax, 0x1a08
call fcn.00537800
mov eax, dword [0x68e4d8]
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.005198c0
add esp, 4
call fcn.0042a530
mov ecx, eax
call fcn.0042b710
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.00416310
lea ecx, [ebp - 0x9b0]
call fcn.004162c0
push eax
lea ecx, [ebp - 0x9b0]
call fcn.004162d0
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.00424bd0
movzx ecx, word [eax]
test ecx, ecx
jne 0x420eba
xor eax, eax
jmp 0x42127d
push 1
lea ecx, [ebp - 0x19b0]
call fcn.00416310
lea ecx, [ebp - 0x19b0]
call fcn.004162c0
push eax
lea ecx, [ebp - 0x19b0]
call fcn.004162d0
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.0040ac40
shl eax, 1
push eax
mov ecx, dword [ebp - 0x19cc]
add ecx, 4
call fcn.0040f070
push eax
push 1
lea ecx, [ebp - 0x19b0]
call fcn.004162f0
push eax
lea ecx, [ebp - 0x9b0]
call fcn.004162f0
push eax
mov eax, dword [ebp - 0x19d0]
push eax
call dword [sym.imp.SHLWAPI.dll_SHSetValueW]
test eax, eax
jne 0x420f49
mov dword [ebp - 0x19d8], 1
jmp 0x420f53
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.0040a7c0
mov ecx, eax
call fcn.00420220
mov dword [ebp - 0x19e8], eax
mov eax, dword [ebp - 0x19e8]
mov dword [ebp - 0x19ec], eax
mov dword [ebp - 4], 0
push 0x66074c
mov ecx, dword [ebp - 0x19ec]
call fcn.00425120
test eax, eax
jne 0x420fb1
mov dword [ebp - 0x19dc], 1
jmp 0x420fbb
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.0040aae0
movzx edx, byte [ebp - 0x19b5]
test edx, edx
je 0x421090
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.0040efc0
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.00410b10
add esp, 0x20
lea ecx, [ebp - 0x19c0]
call fcn.0040ac40
shl eax, 1
push eax
lea ecx, [ebp - 0x19c0]
call fcn.0040f070
push eax
push 1
push str.InstallDate
lea ecx, [ebp - 0x9b0]
call fcn.004162f0
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.0040aae0
push 1
lea ecx, [ebp - 0x1b0]
call fcn.004247b0
lea ecx, [ebp - 0x1b0]
call fcn.00424760
push eax
lea ecx, [ebp - 0x1b0]
call fcn.00424770
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.00416310
lea ecx, [ebp - 0x1b0]
call fcn.00424790
push eax
mov ecx, dword [ebp - 0x19cc]
add ecx, 4
call fcn.0040f070
push eax
lea ecx, [ebp - 0x11b0]
call fcn.004162d0
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea ecx, [ebp - 0x11b0]
call fcn.004162f0
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 0x421122
mov ecx, dword [ebp - 0x19bc]
sub ecx, dword [ebp - 0x19f4]
sar ecx, 1
mov dword [ebp - 0x19f8], ecx
lea ecx, [ebp - 0x11b0]
call fcn.00424bc0
imul eax, dword [ebp - 0x19f8]
push eax
lea ecx, [ebp - 0x11b0]
call fcn.004162f0
push eax
push 1
push 0
lea ecx, [ebp - 0x9b0]
call fcn.004162f0
push eax
mov edx, dword [ebp - 0x19d0]
push edx
call dword [sym.imp.SHLWAPI.dll_SHSetValueW]
call fcn.0040a7c0
mov ecx, eax
call fcn.0040d9e0
push eax
lea ecx, [ebp - 0x19e4]
call fcn.0040efa0
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.004212a0
mov dword [ebp - 0x1a10], eax
mov dword [ebp - 0x1a0c], str.Channel
lea ecx, [ebp - 0x19e4]
call fcn.0040f070
mov dword [ebp - 0x1a08], eax
mov dword [ebp - 0x1a04], 1
mov dword [ebp - 0x19c4], 0
jmp 0x421215
mov ecx, dword [ebp - 0x19c4]
add ecx, 1
mov dword [ebp - 0x19c4], ecx
cmp dword [ebp - 0x19c4], 1
jae 0x421259
imul edx, dword [ebp - 0x19c4], 0x14
lea eax, [ebp + edx - 0x1a14]
mov dword [ebp - 0x19fc], eax
call fcn.0042a5c0
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 + 0x40]
call edx
jmp 0x421206
mov eax, dword [ebp - 0x19d4]
mov dword [ebp - 0x1a00], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x19e4]
call fcn.0040aae0
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.005367cc
mov esp, ebp
pop ebp
ret