Function at 0x1000d610
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008498c
mov eax, dword fs:[0]
push eax
sub esp, 0x15c
mov eax, dword [0x100ad708]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x70], edi
xor esi, esi
mov dword [ebp - 0x94], esi
call fcn.1002d0c0
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x1000d7ef
push 0x85
push str.d:jenkins.jenkinsworkspacelib_commonindependent_product_commonindependent_product_commonproduct_install_srcproduct_install.cc
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x7c], esi
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], al
call fcn.1000f590
push 3
push 0x1008cdb8
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], esi
mov dword [ebp - 0xa8], esi
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
call fcn.1000f590
mov byte [ebp - 4], 1
call fcn.1002d0c0
push str.write_path_regitery
mov edi, eax
lea eax, [ebp - 0x74]
push esi
push eax
call fcn.1002cf80
mov eax, 2
add esp, 0xc
mov dword [ebp - 0x94], eax
mov byte [ebp - 4], al
lea ecx, [ebp - 0x168]
push 0xb4
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp - 0xb8]
push eax
call fcn.10006090
mov esi, eax
mov ecx, dword [ebp - 0x74]
mov edx, 0x1008ce68
test ecx, ecx
mov byte [ebp - 4], 3
cmovne edx, ecx
push edx
push esi
call fcn.10004420
mov eax, dword [edi]
add esp, 8
mov ecx, edi
push esi
call dword [eax + 0x1c]
lea ecx, [ebp - 0x168]
call fcn.100071f0
mov edx, dword [ebp - 0x74]
or eax, 0xffffffff
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1000d74f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xa4]
mov byte [ebp - 4], 0
cmp edx, 0x10
jb 0x1000d78d
mov ecx, dword [ebp - 0xb8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d783
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df1d
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov edx, dword [ebp - 0x78]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0xf
mov byte [ebp - 0xb8], 0
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x1000d7e6
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d7dc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df22
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov esi, dword [ebp - 0x94]
mov edi, dword [ebp - 0x70]
mov eax, dword [edi + 0x24]
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x70], eax
lea eax, [edi + 0x28]
push eax
mov dword [ebp - 0xa0], 0
call fcn.10005d30
or esi, 4
mov dword [ebp - 0x94], esi
mov dword [ebp - 0x90], esi
cmp dword [ebp - 0x58], 0
mov dword [ebp - 4], 4
je 0x1000d903
cmp dword [ebp - 0x54], 8
lea esi, [ebp - 0x68]
mov dword [ebp - 0x30], 0
cmovae esi, dword [ebp - 0x68]
xor eax, eax
mov dword [ebp - 0x74], esi
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov ecx, 0x1008c99c
mov byte [ebp - 4], 6
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], al
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000d877
sub ecx, edx
push ecx
push 0x1008c99c
lea ecx, [ebp - 0x8c]
call fcn.1000f590
push 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x8c]
mov ecx, edi
push eax
call fcn.10011fc0
mov edx, dword [ebp - 0x78]
test al, al
mov byte [ebp - 4], 6
sete al
mov byte [ebp - 0x69], al
cmp edx, 0x10
jb 0x1000d8ef
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d8e2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df27
push edx
push ecx
call fcn.1002eba8
mov al, byte [ebp - 0x69]
add esp, 8
test al, al
je 0x1000d910
lea ecx, [ebp - 0x28]
call fcn.10003900
lea ecx, [ebp - 0x40]
call fcn.10003900
lea ecx, [ebp - 0x68]
call fcn.10003900
jmp 0x1000defc
mov ecx, 0x1008c9ac
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000d930
sub ecx, edx
push ecx
push 0x1008c9ac
lea ecx, [ebp - 0x8c]
call fcn.1000f590
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x8c]
mov ecx, edi
push eax
call fcn.10011fc0
mov edx, dword [ebp - 0x78]
test al, al
mov byte [ebp - 4], 6
sete al
mov byte [ebp - 0x69], al
cmp edx, 0x10
jb 0x1000d9a8
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000d99b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df2c
push edx
push ecx
call fcn.1002eba8
mov al, byte [ebp - 0x69]
add esp, 8
lea ecx, [ebp - 0x28]
test al, al
jne 0x1000d8f6
cmp dword [ebp - 0x2c], 8
lea edx, [ebp - 0x40]
mov eax, dword [ebp - 0x30]
cmovae edx, dword [ebp - 0x40]
cmp dword [ebp - 0x14], 8
cmovae ecx, dword [ebp - 0x28]
add eax, eax
push eax
push edx
push 1
push ecx
push esi
push dword [ebp - 0x70]
call dword [sym.imp.SHLWAPI.dll_SHSetValueW]
neg eax
mov dword [ebp - 0x7c], 0
mov ecx, 0x1008c9c0
mov dword [ebp - 0x78], 0xf
sbb eax, eax
mov byte [ebp - 0x8c], 0
inc eax
mov dword [ebp - 0xa0], eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000da02
sub ecx, edx
push ecx
push 0x1008c9c0
lea ecx, [ebp - 0x8c]
call fcn.1000f590
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x8c]
mov ecx, edi
push eax
call fcn.10011fc0
mov edx, dword [ebp - 0x78]
mov byte [ebp - 4], 6
cmp edx, 0x10
jb 0x1000da6f
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000da65
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df31
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov ecx, edi
call fcn.1000b0a0
mov byte [ebp - 0x69], al
xorps xmm0, xmm0
lea eax, [ebp - 0x50]
push eax
movups xmmword [ebp - 0x50], xmm0
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
call fcn.1000a7c0
mov ecx, eax
test ecx, ecx
je 0x1000df36
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x9c], eax
movzx eax, word [ebp - 0x44]
push eax
movzx eax, word [ebp - 0x46]
push eax
movzx eax, word [ebp - 0x48]
push eax
movzx eax, word [ebp - 0x4a]
push eax
movzx eax, word [ebp - 0x4e]
push eax
movzx eax, word [ebp - 0x50]
push eax
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 0xa
push str._04d__02d__02d__02d:_02d:_02d
push eax
call fcn.1000a260
mov esi, dword [ebp - 0x9c]
lea ecx, [ebp - 0x28]
add esp, 0x20
cmp dword [ebp - 0x14], 8
cmovae ecx, dword [ebp - 0x28]
mov eax, dword [esi - 0xc]
add eax, eax
push eax
push esi
push 1
push ecx
push dword [ebp - 0x74]
push dword [ebp - 0x70]
call dword [sym.imp.SHLWAPI.dll_SHSetValueW]
cmp byte [ebp - 0x69], 0
je 0x1000db26
mov eax, dword [esi - 0xc]
add eax, eax
push eax
push esi
push 1
push str.FirstInstallDate
push dword [ebp - 0x74]
push dword [ebp - 0x70]
call dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov ecx, 0x1008c9fc
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000db43
sub ecx, edx
push ecx
push 0x1008c9fc
lea ecx, [ebp - 0x8c]
call fcn.1000f590
push 0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x8c]
mov ecx, edi
push eax
call fcn.10011fc0
mov edx, dword [ebp - 0x78]
mov byte [ebp - 4], 0xa
cmp edx, 0x10
jb 0x1000dbb0
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000dba6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df40
push edx
push ecx
call fcn.1002eba8
add esp, 8
or dword [ebp - 0x94], 8
lea ecx, [ebp - 0x8c]
xor eax, eax
mov byte [ebp - 4], 0xc
mov word [ebp - 0x8c], ax
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x7c], 0
push eax
mov dword [ebp - 0x78], 7
call fcn.10010230
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
push dword [ebp - 0x30]
cmovae eax, dword [ebp - 0x40]
lea ecx, [ebp - 0x8c]
push eax
call fcn.1000f400
push 1
push 0x1008ccb4
lea ecx, [ebp - 0x8c]
call fcn.1000f400
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x8c]
push eax
call fcn.1000f400
xor ecx, ecx
movups xmm0, xmmword [eax]
movq xmm1, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x14]
or eax, 0x18
movq qword [ebp - 0x98], xmm1
mov dword [ebp - 0x90], eax
movups xmmword [ebp - 0xb0], xmm0
cmp edx, 8
jb 0x1000dcb0
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000dc91
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df45
push edx
push ecx
call fcn.1002eba8
movups xmm0, xmmword [ebp - 0xb0]
add esp, 8
mov eax, dword [ebp - 0x90]
movq xmm1, qword [ebp - 0x98]
mov edx, dword [ebp - 0x78]
and eax, 0xfffffff7
movq qword [ebp - 0x18], xmm1
mov dword [ebp - 0x90], eax
mov byte [ebp - 4], 0xa
movups xmmword [ebp - 0x28], xmm0
cmp edx, 8
jb 0x1000dd03
mov ecx, dword [ebp - 0x8c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000dcf9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df4a
push edx
push ecx
call fcn.1002eba8
add esp, 8
cmp dword [ebp - 0x14], 8
lea ecx, [ebp - 0x28]
mov eax, dword [ebp - 0x18]
cmovae ecx, dword [ebp - 0x28]
add eax, eax
push eax
push ecx
push 1
push 0
push dword [ebp - 0x74]
push dword [ebp - 0x70]
call dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov ecx, 0x1008c9d8
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0xf
mov byte [ebp - 0xd0], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000dd48
sub ecx, edx
push ecx
push 0x1008c9d8
lea ecx, [ebp - 0xd0]
call fcn.1000f590
mov eax, dword [ebp - 0x90]
mov ecx, edi
or eax, 1
mov byte [ebp - 4], 0xd
mov dword [ebp - 0x94], eax
lea eax, [ebp - 0x28]
push 0
push eax
lea eax, [ebp - 0xd0]
push eax
call fcn.10011fc0
test al, al
je 0x1000dd97
cmp dword [edi + 0x6c], 0
mov byte [ebp - 0x69], 1
jne 0x1000dd9b
mov byte [ebp - 0x69], 0
mov edx, dword [ebp - 0xbc]
mov dword [ebp - 4], 0xa
cmp edx, 0x10
jb 0x1000dddc
mov ecx, dword [ebp - 0xd0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1000ddd2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df4f
push edx
push ecx
call fcn.1002eba8
add esp, 8
cmp byte [ebp - 0x69], 0
je 0x1000de0e
mov eax, dword [edi + 0x6c]
add edi, 0x5c
cmp dword [edi + 0x14], 8
jb 0x1000ddf0
mov edi, dword [edi]
cmp dword [ebp - 0x14], 8
lea ecx, [ebp - 0x28]
cmovae ecx, dword [ebp - 0x28]
add eax, eax
push eax
push edi
push 1
push ecx
push dword [ebp - 0x74]
push dword [ebp - 0x70]
call dword [sym.imp.SHLWAPI.dll_SHSetValueW]
mov byte [ebp - 4], 6
add esi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x1000de2a
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
cmp edx, 8
jb 0x1000de64
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000de5a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df54
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
cmp edx, 8
jb 0x1000deb2
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000dea8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df59
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov edx, dword [ebp - 0x54]
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
cmp edx, 8
jb 0x1000defc
mov ecx, dword [ebp - 0x68]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000def2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000df5e
push edx
push ecx
call fcn.1002eba8
add esp, 8
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1002ef19
mov esp, ebp
pop ebp
ret
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
push 0x80004005
call fcn.10007f60
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
call fcn.1005e18e
int3