Function at 0x14018c4b0
Capabilities:
Manipulate boot configuration
Read .ini file

Disassembly:
push rbx
push rsi
push rdi
mov eax, 0x1830
call fcn.1401da720
sub rsp, rax
mov qword [rsp + 0x17e8], 0xfffffffffffffffe
mov rax, qword [0x1402aa5c0]
xor rax, rsp
mov qword [rsp + 0x1828], rax
lea rax, [rsp + 0x1780]
mov qword [rsp + 0x1788], rax
lea rdx, [0x1403b58d0]
add rdx, 0x228
lea r8, [0x1402459f8]
mov rcx, qword [rsp + 0x1788]
call fcn.1400010b0
mov qword [rsp + 0x17f0], rax
mov rcx, qword [rsp + 0x17f0]
call fcn.1401bedc0
mov r8d, 0x3e8
lea rdx, [rsp + 0x810]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov dx, 0x2e
lea rcx, [rsp + 0x810]
call fcn.140001460
mov r11, rax
xor eax, eax
mov word [r11], ax
lea rdx, [0x140245a08]
lea rcx, [rsp + 0x810]
call fcn.1400a99b0
lea r11, [rsp + 0x810]
mov qword [rsp + 0x28], r11
mov dword [rsp + 0x20], 0x3e8
lea r9, [rsp + 0x40]
lea r8, [0x140245a18]
lea rdx, [0x140245a28]
lea rcx, [0x140245a48]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rdx, [0x1403b58d0]
add rdx, 0x228
lea r8, [0x140245a58]
lea rcx, [rsp + 0x1798]
call fcn.1400010b0
mov qword [rsp + 0x17f8], rax
mov rcx, qword [rsp + 0x17f8]
call fcn.14000f8f0
mov r9, rax
mov r8d, 1
lea rdx, [0x140245a70]
lea rcx, [0x140245a88]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rsp + 0x1790], eax
lea rcx, [rsp + 0x1798]
call fcn.140001490
cmp dword [rsp + 0x1790], 0
je 0x14018c71d
lea rdx, [0x1403b58d0]
add rdx, 0x228
lea r8, [0x140245a98]
lea rcx, [rsp + 0x17a0]
call fcn.1400010b0
mov qword [rsp + 0x1800], rax
mov rcx, qword [rsp + 0x1800]
call fcn.14000f8f0
mov r9, rax
xor r8d, r8d
lea rdx, [0x140245ab0]
lea rcx, [0x140245ac8]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rsp + 0x1770], eax
lea rcx, [rsp + 0x17a0]
call fcn.140001490
cmp dword [rsp + 0x1770], 0
jne 0x14018c6c8
mov dword [rsp + 0x1770], 0xcbc
jmp 0x14018c6a2
mov eax, dword [rsp + 0x1770]
add eax, 1
mov dword [rsp + 0x1770], eax
cmp dword [rsp + 0x1770], 0xcc1
jae 0x14018c6c8
mov edx, 1
mov ecx, dword [rsp + 0x1770]
call fcn.1400d80c0
test eax, eax
jne 0x14018c6c6
jmp 0x14018c6c8
jmp 0x14018c691
lea rdx, str.Start_iSCSI_Target_Service
xor ecx, ecx
call fcn.1400dcf70
lea rcx, [0x1403b36c0]
call fcn.14000e7e0
test eax, eax
jne 0x14018c71d
lea r8, [rsp + 0x40]
mov edx, dword [rsp + 0x1770]
lea rcx, [0x1403b36c0]
call fcn.14013f650
test eax, eax
jne 0x14018c71d
mov r8d, dword [rsp + 0x1770]
lea rdx, str.iSCSI_Target_Service_Startup_Error
lea rcx, [0x1403b58d0]
call fcn.1401c3600
lea rdx, [0x1403b58d0]
add rdx, 0x228
lea r8, [0x140245b58]
lea rcx, [rsp + 0x17b0]
call fcn.1400010b0
mov qword [rsp + 0x1808], rax
mov rcx, qword [rsp + 0x1808]
call fcn.14000f8f0
mov r9, rax
mov r8d, 1
lea rdx, [0x140245b70]
lea rcx, [0x140245b88]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rsp + 0x17a8], eax
lea rcx, [rsp + 0x17b0]
call fcn.140001490
cmp dword [rsp + 0x17a8], 0
je 0x14018c7c6
lea rdx, str.Start_TFTP_Service
xor ecx, ecx
call fcn.1400dcf70
lea rcx, [0x1403b4b60]
call fcn.14000e7e0
test eax, eax
jne 0x14018c7c6
mov r9d, 1
lea r8, [rsp + 0x40]
xor edx, edx
lea rcx, [0x1403b4b60]
call fcn.1400e29c0
lea rdx, [0x1403b58d0]
add rdx, 0x228
lea r8, [0x140245bc0]
lea rcx, [rsp + 0x17c0]
call fcn.1400010b0
mov qword [rsp + 0x1810], rax
mov rcx, qword [rsp + 0x1810]
call fcn.14000f8f0
mov r9, rax
mov r8d, 1
lea rdx, [0x140245bd8]
lea rcx, [0x140245bf0]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rsp + 0x17b8], eax
lea rcx, [rsp + 0x17c0]
call fcn.140001490
cmp dword [rsp + 0x17b8], 0
je 0x14018c86c
lea rdx, str.Start_DHCP_Service
xor ecx, ecx
call fcn.1400dcf70
lea rcx, [0x1403b3ce0]
call fcn.14000e7e0
test eax, eax
jne 0x14018c86c
lea r8, [rsp + 0x40]
mov edx, 0x43
lea rcx, [0x1403b3ce0]
call fcn.140115b00
lea rdx, [0x1403b58d0]
add rdx, 0x228
lea r8, [0x140245c28]
lea rcx, [rsp + 0x17d0]
call fcn.1400010b0
mov qword [rsp + 0x1818], rax
mov rcx, qword [rsp + 0x1818]
call fcn.14000f8f0
mov r9, rax
mov r8d, 1
lea rdx, [0x140245c40]
lea rcx, [0x140245c60]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rsp + 0x17c8], eax
lea rcx, [rsp + 0x17d0]
call fcn.140001490
cmp dword [rsp + 0x17c8], 0
je 0x14018c9a4
lea rdx, str.Start_Proxy_DHCP_Service
xor ecx, ecx
call fcn.1400dcf70
lea rcx, [0x1403b4060]
call fcn.14000e7e0
test eax, eax
jne 0x14018c9a4
lea rdx, [0x1403b58d0]
add rdx, 0x228
lea r8, [0x140245ca8]
lea rcx, [rsp + 0x17d8]
call fcn.1400010b0
mov qword [rsp + 0x1820], rax
mov rcx, qword [rsp + 0x1820]
call fcn.14000f8f0
mov r9, rax
mov r8d, 0xfab
lea rdx, [0x140245cc0]
lea rcx, [0x140245ce0]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rsp + 0x1774], eax
lea rcx, [rsp + 0x17d8]
call fcn.140001490
cmp dword [rsp + 0x1774], 0x43
jne 0x14018c98e
lea r8, [rsp + 0x40]
mov edx, 0x43
lea rcx, [0x1403b3ce0]
call fcn.140115b00
jmp 0x14018c9a4
lea r8, [rsp + 0x40]
mov edx, 0xfab
lea rcx, [0x1403b4060]
call fcn.140115b00
lea rdx, str.Start_Client_Communication_Service
xor ecx, ecx
call fcn.1400dcf70
lea rcx, [0x1403b4650]
call fcn.14000e7e0
test eax, eax
jne 0x14018c9f8
xor r9d, r9d
lea r8, [rsp + 0x40]
mov edx, 0x3e8
lea rcx, [0x1403b4650]
call fcn.1401c8cf0
test eax, eax
jne 0x14018c9f8
mov r8d, 0x3e8
lea rdx, str.Client_Communication_Service_Startup_Error
lea rcx, [0x1403b58d0]
call fcn.1401c3600
xor ecx, ecx
call fcn.1401d9d70
lea rcx, [rsp + 0x1430]
call fcn.14000d210
nop
mov dword [rsp + 0x15c8], 1
lea rcx, [rsp + 0x1430]
call fcn.1401d56b0
lea rcx, [rsp + 0x1040]
call fcn.14000d040
nop
lea rcx, [rsp + 0x13d0]
call fcn.140006ef0
nop
lea rdx, [rsp + 0x13d0]
lea rcx, [rsp + 0x1040]
call fcn.1401bee60
mov dword [rsp + 0x1778], 0
jmp 0x14018ca74
mov eax, dword [rsp + 0x1778]
add eax, 1
mov dword [rsp + 0x1778], eax
mov ebx, dword [rsp + 0x1778]
lea rcx, [rsp + 0x13d0]
call fcn.140006f70
cmp rbx, rax
jae 0x14018cc42
mov edx, dword [rsp + 0x1778]
lea rcx, [rsp + 0x13d0]
call fcn.140006fa0
mov rcx, rax
add rcx, 0x1a8
lea rdx, [0x140245d98]
call fcn.140006180
test eax, eax
je 0x14018caf1
mov edx, dword [rsp + 0x1778]
lea rcx, [rsp + 0x13d0]
call fcn.140006fa0
mov rcx, rax
add rcx, 0x1a8
lea rdx, [0x140245da8]
call fcn.140006180
test eax, eax
jne 0x14018cb93
mov edx, dword [rsp + 0x1778]
lea rcx, [rsp + 0x13d0]
call fcn.140006fa0
mov rcx, rax
add rcx, 0x1b8
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov esi, eax
lea rcx, [rsp + 0x1658]
xor edx, edx
call fcn.140006dd0
movzx edi, ax
mov edx, dword [rsp + 0x1778]
lea rcx, [rsp + 0x13d0]
call fcn.140006fa0
mov rcx, rax
add rcx, 0x1b0
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov ebx, eax
mov edx, dword [rsp + 0x1778]
lea rcx, [rsp + 0x13d0]
call fcn.140006fa0
mov rcx, rax
add rcx, 0x1a0
xor edx, edx
call fcn.140006dd0
mov r9d, esi
movzx r8d, di
mov edx, ebx
movzx ecx, ax
call fcn.1401da200
mov edx, dword [rsp + 0x1778]
lea rcx, [rsp + 0x13d0]
call fcn.140006fa0
mov rcx, rax
add rcx, 0x1a8
lea rdx, [0x140245db8]
call fcn.140006180
test eax, eax
jne 0x14018cc3d
lea rcx, [rsp + 0x1660]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov edi, eax
mov edx, dword [rsp + 0x1778]
lea rcx, [rsp + 0x13d0]
call fcn.140006fa0
mov rcx, rax
add rcx, 0x1b0
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov ebx, eax
mov edx, dword [rsp + 0x1778]
lea rcx, [rsp + 0x13d0]
call fcn.140006fa0
mov rcx, rax
add rcx, 0x1a0
xor edx, edx
call fcn.140006dd0
mov r9d, edi
mov r8d, 1
mov edx, ebx
movzx ecx, ax
call fcn.1401d9ee0
jmp 0x14018ca63
lea rcx, [rsp + 0x1380]
call fcn.140077c20
nop
lea rcx, [rsp + 0x1400]
call fcn.14008257c
nop
lea rcx, [rsp + 0x13a8]
call fcn.14008257c
nop
lea rcx, [rsp + 0x1010]
call fcn.14008257c
nop
lea r9, [rsp + 0x1010]
lea r8, [rsp + 0x13a8]
lea rdx, [rsp + 0x1400]
lea rcx, [rsp + 0x1380]
call fcn.14018b270
mov dword [rsp + 0x17e0], 1
lea rcx, [rsp + 0x1010]
call fcn.14008259c
nop
lea rcx, [rsp + 0x13a8]
call fcn.14008259c
nop
lea rcx, [rsp + 0x1400]
call fcn.14008259c
nop
lea rcx, [rsp + 0x1380]
call fcn.140077ee4
nop
lea rcx, [rsp + 0x13d0]
call fcn.140006f40
nop
lea rcx, [rsp + 0x1040]
call fcn.140014ec0
nop
lea rcx, [rsp + 0x1430]
call fcn.140014ec0
mov eax, dword [rsp + 0x17e0]
mov rcx, qword [rsp + 0x1828]
xor rcx, rsp
call fcn.1400a8790
add rsp, 0x1830
pop rdi
pop rsi
pop rbx
ret