Function at 0x42dd50
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x45d2d3
mov eax, dword fs:[0]
push eax
sub esp, 0xec
mov eax, dword [0x47d6c0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, 7
xor edi, edi
xor eax, eax
xor ecx, ecx
mov esi, 1
mov dword [ebp - 0x8c], vtable.LogItem.0
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x78], edi
mov word [ebp - 0x88], ax
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x5c], edi
mov word [ebp - 0x6c], cx
mov dword [ebp - 0x50], esi
push str.SetLaunchPermissions_called.
push str._INF___N_A_
lea ecx, [ebp - 0x8c]
mov dword [ebp - 4], edi
mov dword [ebp - 0x4c], 2
call fcn.004074a0
mov ecx, eax
call fcn.004074a0
lea ecx, [ebp - 0x8c]
mov dword [ebp - 4], 0xffffffff
call fcn.00407130
push 0x26
xor edx, edx
push str.O:BAG:BAD:_A__0xb___WD_S:_ML__NX___LW_
lea ecx, [ebp - 0x48]
mov dword [ebp - 0xf4], edi
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], edi
mov word [ebp - 0x48], dx
call fcn.00403840
mov eax, dword [ebp - 0x48]
mov dword [ebp - 4], esi
mov esi, 8
cmp dword [ebp - 0x34], esi
jae 0x42de1e
lea eax, [ebp - 0x48]
push edi
lea ecx, [ebp - 0xf4]
push ecx
push 1
push eax
call sub.ADVAPI32.dll_ConvertStringSecurityDescriptorToSecurityDescriptorW
test eax, eax
jne 0x42df0e
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea edx, [ebp - 0xa8]
push edx
mov dword [ebp - 0xf0], eax
call fcn.00402190
add esp, 8
mov ebx, eax
push str.CHeciServerModule::SetLaunchPermissions
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 2
call fcn.00416bc0
push str.__ErrorMessage
lea ecx, [ebp - 0xf0]
push ecx
push str.Failed_to_convert_string_representation_of_SecurityDescriptor._ErrorCode
push str._ERR___N_A_
mov ecx, eax
mov byte [ebp - 4], 3
mov dword [eax + 0x40], 3
call fcn.004074a0
mov ecx, eax
call fcn.004074a0
mov ecx, eax
call fcn.00416ce0
mov ecx, eax
call fcn.004074a0
push 0xffffffffffffffff
mov esi, eax
push edi
push ebx
lea ecx, [esi + 4]
call fcn.0040e270
push 0xffffffffffffffff
push edi
push ebx
lea ecx, [esi + 0x20]
call fcn.0040e270
push 0x46f5a4
mov ecx, esi
call fcn.004074a0
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 2
call fcn.00407130
mov esi, 8
cmp dword [ebp - 0x94], esi
jb 0x42def6
mov edx, dword [ebp - 0xa8]
push edx
call fcn.004434f1
add esp, 4
cmp dword [ebp - 0x34], esi
jb 0x42df07
mov eax, dword [ebp - 0x48]
push eax
call fcn.004434f1
add esp, 4
xor al, al
jmp 0x42e230
push str.CHeciServerModule::SetLaunchPermissions
lea ecx, [ebp - 0x8c]
call fcn.00416bc0
push str.F6189E3E_8B57_4CC9_B6F6_2F1FF1D1D9D4
push str.HeciServers_AppID:
push str._INF___N_A_
mov ecx, eax
mov byte [ebp - 4], 4
mov dword [eax + 0x40], 2
call fcn.004074a0
mov ecx, eax
call fcn.004074a0
mov ecx, eax
call fcn.0042d990
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 1
call fcn.00407130
xor ecx, ecx
push 6
mov word [ebp - 0x2c], cx
push str.AppID_
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x1c], edi
call fcn.00403840
push 0x26
push str.F6189E3E_8B57_4CC9_B6F6_2F1FF1D1D9D4
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
call fcn.0041b680
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0xf8], edi
cmp dword [ebp - 0x18], esi
jae 0x42df9b
lea eax, [ebp - 0x2c]
lea edx, [ebp - 0xf8]
push edx
push eax
push SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyW]
mov dword [ebp - 0xf0], eax
cmp eax, edi
je 0x42e045
push str.CHeciServerModule::SetLaunchPermissions
lea ecx, [ebp - 0x8c]
call fcn.00416bc0
lea ecx, [ebp - 0xf0]
push ecx
push str.Failed_to_open_registry_key._ErrorCode
push str._ERR___N_A_
mov ecx, eax
mov byte [ebp - 4], 6
mov dword [eax + 0x40], 3
call fcn.004074a0
mov ecx, eax
call fcn.004074a0
mov ecx, eax
call fcn.00423b70
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 5
call fcn.00407130
cmp dword [ebp - 0x18], esi
jb 0x42e01d
mov edx, dword [ebp - 0x2c]
push edx
call fcn.004434f1
add esp, 4
xor eax, eax
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], ax
cmp dword [ebp - 0x34], esi
jb 0x42df07
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.004434f1
add esp, 4
xor al, al
jmp 0x42e230
mov edx, dword [ebp - 0xf4]
push edx
call dword [sym.imp.ADVAPI32.dll_GetSecurityDescriptorLength]
mov ecx, dword [ebp - 0xf8]
push eax
mov eax, dword [ebp - 0xf4]
push eax
push 3
push edi
push str.LaunchPermission
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov dword [ebp - 0xf0], eax
cmp eax, edi
je 0x42e0f7
push str.CHeciServerModule::SetLaunchPermissions
lea ecx, [ebp - 0x8c]
call fcn.00416bc0
lea edx, [ebp - 0xf0]
push edx
push str.Failed_to_set_registry_value._ErrorCode
push str._ERR___N_A_
mov ecx, eax
mov byte [ebp - 4], bl
mov dword [eax + 0x40], 3
call fcn.004074a0
mov ecx, eax
call fcn.004074a0
mov ecx, eax
call fcn.00423b70
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 5
call fcn.00407130
mov eax, dword [ebp - 0xf8]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebp - 0x18], esi
jb 0x42e0e6
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.004434f1
add esp, 4
xor edx, edx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], dx
jmp 0x42def6
mov ecx, dword [ebp - 0xf8]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edx, dword [ebp - 0xf4]
push edx
call dword [sym.imp.KERNEL32.dll_LocalFree]
test eax, eax
je 0x42e1dc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov dword [ebp - 0xf0], eax
lea eax, [ebp - 0xa8]
push eax
call fcn.00402190
add esp, 8
mov ebx, eax
push str.CHeciServerModule::SetLaunchPermissions
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 8
call fcn.00416bc0
push str.__ErrorMessage
lea ecx, [ebp - 0xf0]
push ecx
push str.Failed_to_free_memory_allocated_for_security_descriptor._ErrorCode
push str._ERR___N_A_
mov ecx, eax
mov byte [ebp - 4], 9
mov dword [eax + 0x40], 3
call fcn.004074a0
mov ecx, eax
call fcn.004074a0
mov ecx, eax
call fcn.00416ce0
mov ecx, eax
call fcn.004074a0
push 0xffffffffffffffff
mov esi, eax
push edi
push ebx
lea ecx, [esi + 4]
call fcn.0040e270
push 0xffffffffffffffff
push edi
push ebx
lea ecx, [esi + 0x20]
call fcn.0040e270
push 0x46f5a4
mov ecx, esi
call fcn.004074a0
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 8
call fcn.00407130
lea ecx, [ebp - 0xa8]
call fcn.004029e0
lea ecx, [ebp - 0x2c]
call fcn.004029e0
lea ecx, [ebp - 0x48]
call fcn.004029e0
xor al, al
jmp 0x42e230
push str.CHeciServerModule::SetLaunchPermissions
lea ecx, [ebp - 0xec]
call fcn.00416bc0
push str.Permissions_set_successfully.
push str._INF___N_A_
mov ecx, eax
mov byte [ebp - 4], 0xa
mov dword [eax + 0x40], 2
call fcn.004074a0
mov ecx, eax
call fcn.004074a0
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 5
call fcn.00407130
lea ecx, [ebp - 0x2c]
call fcn.004029e0
lea ecx, [ebp - 0x48]
call fcn.004029e0
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00444268
mov esp, ebp
pop ebp
ret