Function at 0x42fe40
Capabilities:
Manipulate safe mode programs
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b2390
mov eax, dword fs:[0]
push eax
sub esp, 0x38
mov eax, dword [0x4e706c]
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, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
lea eax, [ebp - 0x14]
push 0
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push str.SYSTEMCurrentControlSetControlSafeBootMinimalMBAMInstallerService
push 0x80000002
call edi
mov esi, eax
test esi, esi
je 0x42ff53
lea ecx, [ebp - 0x2c]
call fcn.0045f3e0
mov dword [ebp - 4], 0
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x42feb3
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4eb558
call fcn.004105c0
add esp, 4
mov edx, str.c:jenkinsworkspacembam_windows_a_mb5_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.0040f7a0
mov edx, 0x4c9104
mov ecx, eax
call fcn.0040f7a0
push 0xb50
mov ecx, eax
call fcn.0040dda0
mov edx, 0x4c932c
mov ecx, eax
call fcn.0040f7a0
mov edx, str.Failed_to_create_Minimal_Safe_Boot_key:
mov ecx, eax
call fcn.0040f7a0
push esi
mov ecx, eax
call fcn.004188b0
push eax
call fcn.0040fb10
mov edx, dword [ebp - 0x18]
add esp, 4
cmp edx, 8
jb 0x4301a6
mov ecx, dword [ebp - 0x2c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42ff44
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4301c1
push edx
push ecx
call fcn.0046f0d0
add esp, 8
jmp 0x4301a6
push 0x10
push str.Service
push 1
push 0
push 0x4c884c
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov esi, eax
test esi, esi
je 0x430035
lea ecx, [ebp - 0x2c]
call fcn.0045f3e0
mov dword [ebp - 4], 1
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x42ff90
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4eb558
call fcn.004105c0
add esp, 4
mov edx, str.c:jenkinsworkspacembam_windows_a_mb5_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.0040f7a0
mov edx, 0x4c9104
mov ecx, eax
call fcn.0040f7a0
push 0xb56
mov ecx, eax
call fcn.0040dda0
mov edx, 0x4c932c
mov ecx, eax
call fcn.0040f7a0
mov edx, str.Failed_to_set_Minimal_Safe_Boot_value:
mov ecx, eax
call fcn.0040f7a0
push esi
mov ecx, eax
call fcn.004188b0
push eax
call fcn.0040fb10
mov edx, dword [ebp - 0x18]
add esp, 4
cmp edx, 8
jb 0x430027
mov ecx, dword [ebp - 0x2c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43001d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4301c6
push edx
push ecx
call fcn.0046f0d0
add esp, 8
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x4301a6
push dword [ebp - 0x14]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call esi
push 0
lea eax, [ebp - 0x14]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push str.SYSTEMCurrentControlSetControlSafeBootNetworkMBAMInstallerService
push 0x80000002
call edi
mov edi, eax
test edi, edi
je 0x4300d1
lea ecx, [ebp - 0x2c]
call fcn.0045f3e0
mov dword [ebp - 4], 2
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x43007f
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4eb558
call fcn.004105c0
add esp, 4
mov edx, str.c:jenkinsworkspacembam_windows_a_mb5_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.0040f7a0
mov edx, 0x4c9104
mov ecx, eax
call fcn.0040f7a0
push 0xb5f
mov ecx, eax
call fcn.0040dda0
mov edx, 0x4c932c
mov ecx, eax
call fcn.0040f7a0
mov edx, str.Failed_to_create_Network_Safe_Boot_key:
mov ecx, eax
call fcn.0040f7a0
push edi
jmp 0x42ff00
push 0x10
push str.Service
push 1
push 0
push 0x4c884c
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov edi, eax
test edi, edi
je 0x4301a1
lea ecx, [ebp - 0x44]
call fcn.0045f3e0
mov dword [ebp - 4], 3
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x43010e
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4eb558
call fcn.004105c0
add esp, 4
mov edx, str.c:jenkinsworkspacembam_windows_a_mb5_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.0040f7a0
mov edx, 0x4c9104
mov ecx, eax
call fcn.0040f7a0
push 0xb65
mov ecx, eax
call fcn.0040dda0
mov edx, 0x4c932c
mov ecx, eax
call fcn.0040f7a0
mov edx, str.Failed_to_set_Network_Safe_Boot_value:
mov ecx, eax
call fcn.0040f7a0
push edi
mov ecx, eax
call fcn.004188b0
push eax
call fcn.0040fb10
mov edx, dword [ebp - 0x30]
add esp, 4
cmp edx, 8
jb 0x4301a1
mov ecx, dword [ebp - 0x44]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x430197
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4301c1
push edx
push ecx
call fcn.0046f0d0
add esp, 8
push dword [ebp - 0x14]
call esi
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.0046ebaf
mov esp, ebp
pop ebp
ret
call fcn.0048a05c
call fcn.0048a05c
int3