Function at 0x42c5a0
Capabilities:
Set registry value

Disassembly:
push 0xffffffffffffffff
push 0x459917
mov eax, dword fs:[0]
push eax
mov eax, 0x5b78
call fcn.00437730
mov eax, dword [0x471660]
xor eax, esp
mov dword [esp + 0x5b74], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x471660]
xor eax, esp
push eax
lea eax, [esp + 0x5b8c]
mov dword fs:[0], eax
cmp byte [0x474100], 0
mov esi, ecx
je 0x42c634
push 0xcd
push esi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
test eax, eax
mov dword [esp + 0x24], eax
fild dword [esp + 0x24]
jge 0x42c616
fadd qword [0x45f9c8]
fdiv qword [0x45f9c0]
sub esp, 8
fstp qword [esp]
push str._.3f___d___d___p__CActiveCollectorService::CalculateUserIdL_d____r_n
push 0x474104
call fcn.00401190
add esp, 0x20
lea eax, [esi + 4]
push eax
mov dword [esp + 0x28], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [esp + 0x28], 1
xor ebx, ebx
push ebx
lea edi, [esi + 0x38]
push 0x45c8b8
mov ecx, edi
mov dword [esp + 0x5b9c], ebx
call fcn.00401680
mov ecx, esi
call fcn.004216b0
mov ebp, eax
cmp ebp, ebx
jl 0x42c687
mov eax, dword [edi + 0x14]
push ebx
push 0x45c8b8
push eax
push ebx
mov ecx, edi
call fcn.0040be60
test eax, eax
jne 0x42c9d6
cmp byte [0x474100], bl
mov ebp, 8
je 0x42c6ec
cmp dword [esi + 0x6c], ebp
jb 0x42c69e
mov eax, dword [esi + 0x58]
jmp 0x42c6a1
lea eax, [esi + 0x58]
push eax
push 0xd6
push esi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
test eax, eax
mov dword [esp + 0x30], eax
fild dword [esp + 0x30]
jge 0x42c6ce
fadd qword [0x45f9c8]
fdiv qword [0x45f9c0]
sub esp, 8
fstp qword [esp]
push str._.3f___d___d___p__CActiveCollectorService::CalculateUserIdL_d___Need_to_call_service__ls_r_n
push 0x474104
call fcn.00401190
add esp, 0x24
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
push ebx
lea ecx, [esp + 0x4c]
mov byte [esp + 0x5b98], 2
call fcn.00429b30
push 0xffffffffffffffff
push ebx
lea edi, [esi + 0x54]
push edi
lea ecx, [esp + 0x38]
mov byte [esp + 0x5ba0], 3
mov dword [esp + 0x50], 7
mov dword [esp + 0x4c], ebx
mov word [esp + 0x3c], bx
call fcn.00401590
mov ecx, dword [esp + 0x40]
push ebx
push 0x45c8b8
push ecx
push ebx
lea ecx, [esp + 0x3c]
mov byte [esp + 0x5ba4], 4
call fcn.0040be60
test eax, eax
setne bl
cmp dword [esp + 0x44], ebp
mov byte [esp + 0x5b94], 3
jb 0x42c76c
mov edx, dword [esp + 0x30]
push edx
call fcn.00434823
add esp, 4
test bl, bl
je 0x42c787
cmp dword [edi + 0x18], ebp
jb 0x42c77a
mov edi, dword [edi + 4]
jmp 0x42c77d
add edi, 4
push edi
lea ecx, [esp + 0x4c]
call fcn.00420930
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x4c]
call fcn.0042c3b0
mov ebp, eax
test ebp, ebp
je 0x42c7e2
cmp byte [0x474100], 0
je 0x42c7c1
push ebp
push str.server.GenerateNewUserId_newUserId_
push 0xe6
push str.L_d__FAILED:__s_with_HRESULT___x_r_n
push 0x474104
call fcn.00401190
add esp, 0x14
lea ecx, [esp + 0x48]
mov byte [esp + 0x5b94], 2
call fcn.00429220
mov ecx, dword [esp + 0x18]
push ecx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
jmp 0x42c9d6
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x20]
push eax
push 0
push 0x2001f
push 0
push 0
push 0
push str.SoftwareNetNucleousActiveCollector
push closesocket
mov dword [esp + 0x40], 0
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x42c834
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
test ebx, ebx
setne al
mov dword [esp + 0x14], edi
test eax, eax
jne 0x42c85f
push 0x80004005
call fcn.00401200
jle 0x42c840
and eax, 0xffff
or eax, 0x80070000
cmp byte [0x474100], 0
mov ebp, eax
je 0x42c7c1
push ebp
push str.key.Create_hKeyParent__L_SoftwareNetNucleousActiveCollector__
push 0xe9
jmp 0x42c7af
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea edx, [eax + eax + 2]
push edx
push ebx
push 1
push 0
push str.UserId
push edi
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
je 0x42c8da
jle 0x42c88c
and eax, 0xffff
or eax, 0x80070000
cmp byte [0x474100], 0
mov ebp, eax
je 0x42c8b4
push ebp
push str.key.SetStringValue_L_UserId___newUserId.m_str_
push 0xea
push str.L_d__FAILED:__s_with_HRESULT___x_r_n
push 0x474104
call fcn.00401190
add esp, 0x14
lea ecx, [esp + 0x48]
mov byte [esp + 0x5b94], 2
call fcn.00429220
push ebx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test edi, edi
je 0x42c9d6
push edi
jmp 0x42c9d0
test edi, edi
je 0x42c942
push edi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
mov dword [esp + 0x14], 0
je 0x42c942
jle 0x42c8fd
and eax, 0xffff
or eax, 0x80070000
cmp byte [0x474100], 0
mov ebp, eax
je 0x42c925
push ebp
push str.key.Close__
push 0xeb
push str.L_d__FAILED:__s_with_HRESULT___x_r_n
push 0x474104
call fcn.00401190
add esp, 0x14
lea ecx, [esp + 0x48]
mov byte [esp + 0x5b94], 2
call fcn.00429220
push ebx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
jmp 0x42c9d6
lea edi, [esi + 0x38]
push ebx
mov ecx, edi
call fcn.00403160
cmp byte [0x474100], 0
je 0x42c9af
cmp dword [edi + 0x18], 8
jb 0x42c961
mov eax, dword [edi + 4]
jmp 0x42c964
lea eax, [edi + 4]
push eax
push 0xef
push esi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
test eax, eax
mov dword [esp + 0x34], eax
fild dword [esp + 0x34]
jge 0x42c991
fadd qword [0x45f9c8]
fdiv qword [0x45f9c0]
sub esp, 8
fstp qword [esp]
push str._.3f___d___d___p__CActiveCollectorService::CalculateUserIdL_d___New_user_id_is__ls_r_n
push 0x474104
call fcn.00401190
add esp, 0x24
lea ecx, [esp + 0x48]
mov byte [esp + 0x5b94], 2
call fcn.00429220
push ebx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esp + 0x14]
test eax, eax
je 0x42c9d6
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, dword [esp + 0x24]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, ebp
mov ecx, dword [esp + 0x5b8c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x5b74]
xor ecx, esp
call fcn.00434fe0
add esp, 0x5b84
ret