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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b0cd0
mov eax, dword fs:[0]
push eax
sub esp, 0x38
mov eax, dword [0x4e506c]
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 0x42fa93
lea ecx, [ebp - 0x2c]
call fcn.0045dd60
mov dword [ebp - 4], 0
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x42f9f3
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4e94d8
call fcn.00410550
add esp, 4
mov edx, str.c:jenkinsworkspacembam_windows_a_mb5_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.0040f730
mov edx, 0x4c8104
mov ecx, eax
call fcn.0040f730
push 0xb33
mov ecx, eax
call fcn.0040dd30
mov edx, 0x4c832c
mov ecx, eax
call fcn.0040f730
mov edx, str.Failed_to_create_Minimal_Safe_Boot_key:
mov ecx, eax
call fcn.0040f730
push esi
mov ecx, eax
call fcn.004187d0
push eax
call fcn.0040faa0
mov edx, dword [ebp - 0x18]
add esp, 4
cmp edx, 8
jb 0x42fce6
mov ecx, dword [ebp - 0x2c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42fa84
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42fd01
push edx
push ecx
call fcn.0046da67
add esp, 8
jmp 0x42fce6
push 0x10
push str.Service
push 1
push 0
push 0x4c784c
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov esi, eax
test esi, esi
je 0x42fb75
lea ecx, [ebp - 0x2c]
call fcn.0045dd60
mov dword [ebp - 4], 1
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x42fad0
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4e94d8
call fcn.00410550
add esp, 4
mov edx, str.c:jenkinsworkspacembam_windows_a_mb5_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.0040f730
mov edx, 0x4c8104
mov ecx, eax
call fcn.0040f730
push 0xb39
mov ecx, eax
call fcn.0040dd30
mov edx, 0x4c832c
mov ecx, eax
call fcn.0040f730
mov edx, str.Failed_to_set_Minimal_Safe_Boot_value:
mov ecx, eax
call fcn.0040f730
push esi
mov ecx, eax
call fcn.004187d0
push eax
call fcn.0040faa0
mov edx, dword [ebp - 0x18]
add esp, 4
cmp edx, 8
jb 0x42fb67
mov ecx, dword [ebp - 0x2c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42fb5d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42fd06
push edx
push ecx
call fcn.0046da67
add esp, 8
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x42fce6
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 0x42fc11
lea ecx, [ebp - 0x2c]
call fcn.0045dd60
mov dword [ebp - 4], 2
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x42fbbf
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4e94d8
call fcn.00410550
add esp, 4
mov edx, str.c:jenkinsworkspacembam_windows_a_mb5_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.0040f730
mov edx, 0x4c8104
mov ecx, eax
call fcn.0040f730
push 0xb42
mov ecx, eax
call fcn.0040dd30
mov edx, 0x4c832c
mov ecx, eax
call fcn.0040f730
mov edx, str.Failed_to_create_Network_Safe_Boot_key:
mov ecx, eax
call fcn.0040f730
push edi
jmp 0x42fa40
push 0x10
push str.Service
push 1
push 0
push 0x4c784c
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov edi, eax
test edi, edi
je 0x42fce1
lea ecx, [ebp - 0x44]
call fcn.0045dd60
mov dword [ebp - 4], 3
cmp dword [eax + 0x14], 8
mov ecx, dword [eax + 0x10]
jb 0x42fc4e
mov eax, dword [eax]
push ecx
mov edx, eax
mov ecx, 0x4e94d8
call fcn.00410550
add esp, 4
mov edx, str.c:jenkinsworkspacembam_windows_a_mb5_mbsetup_srcmbsetupmbsetup.cpp
mov ecx, eax
call fcn.0040f730
mov edx, 0x4c8104
mov ecx, eax
call fcn.0040f730
push 0xb48
mov ecx, eax
call fcn.0040dd30
mov edx, 0x4c832c
mov ecx, eax
call fcn.0040f730
mov edx, str.Failed_to_set_Network_Safe_Boot_value:
mov ecx, eax
call fcn.0040f730
push edi
mov ecx, eax
call fcn.004187d0
push eax
call fcn.0040faa0
mov edx, dword [ebp - 0x30]
add esp, 4
cmp edx, 8
jb 0x42fce1
mov ecx, dword [ebp - 0x44]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x42fcd7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x42fd01
push edx
push ecx
call fcn.0046da67
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.0046d546
mov esp, ebp
pop ebp
ret
call fcn.004889bc
call fcn.004889bc
int3