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

Disassembly:
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x9d0
mov qword [rsp + 0x8f8], 0xfffffffffffffffe
mov rax, qword [0x1402aa5c0]
xor rax, rsp
mov qword [rsp + 0x9c0], rax
mov rcx, qword [rsp + 0x9e0]
call fcn.1400f4fe0
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x34], 0
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x850], 0
xor eax, eax
mov word [rsp + 0x50], ax
lea rdi, [rsp + 0x52]
xor eax, eax
mov ecx, 0x7fe
rep stosb byte [rdi], al
lea rcx, [rsp + 0x858]
call fcn.140001000
mov qword [rsp + 0x900], rax
mov rax, qword [rsp + 0x900]
mov qword [rsp + 0x908], rax
lea r8, [0x14023fed8]
mov rdx, qword [rsp + 0x908]
lea rcx, [rsp + 0x860]
call fcn.1400010b0
mov qword [rsp + 0x910], rax
mov rcx, qword [rsp + 0x910]
call fcn.14000f8f0
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x400
lea r9, [rsp + 0x50]
lea r8, [0x14023fef0]
lea rdx, [0x14023ff00]
lea rcx, [0x14023ff18]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x860]
call fcn.140001490
nop
lea rcx, [rsp + 0x858]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x210
lea rdx, [rsp + 0x50]
call fcn.1400020d0
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x210
lea r9, [rsp + 0x850]
lea r8, [0x14023fbdc]
lea rdx, [rsp + 0x868]
call fcn.1400065a0
mov qword [rsp + 0x918], rax
mov rcx, qword [rsp + 0x918]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x38], eax
lea rcx, [rsp + 0x868]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x210
lea r9, [rsp + 0x850]
lea r8, [0x14023fc34]
lea rdx, [rsp + 0x870]
call fcn.1400065a0
mov qword [rsp + 0x920], rax
mov rcx, qword [rsp + 0x920]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x34], eax
lea rcx, [rsp + 0x870]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x210
lea r9, [rsp + 0x850]
lea r8, [0x14023fdd4]
lea rdx, [rsp + 0x878]
call fcn.1400065a0
mov qword [rsp + 0x928], rax
mov rcx, qword [rsp + 0x928]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x30], eax
lea rcx, [rsp + 0x878]
call fcn.140001490
movzx ecx, byte [rsp + 0x38]
movzx eax, byte [rsp + 0x34]
shl eax, 8
or ecx, eax
movzx eax, byte [rsp + 0x30]
shl eax, 0x10
or ecx, eax
mov rax, qword [rsp + 0x9e0]
mov dword [rax + 0x230], ecx
mov dword [rsp + 0x850], 0
lea rcx, [rsp + 0x880]
call fcn.140001000
mov qword [rsp + 0x930], rax
mov rax, qword [rsp + 0x930]
mov qword [rsp + 0x938], rax
lea r8, [0x14023ff38]
mov rdx, qword [rsp + 0x938]
lea rcx, [rsp + 0x888]
call fcn.1400010b0
mov qword [rsp + 0x940], rax
mov rcx, qword [rsp + 0x940]
call fcn.14000f8f0
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x400
lea r9, [rsp + 0x50]
lea r8, [0x14023ff50]
lea rdx, [0x14023ff68]
lea rcx, [0x14023ff80]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x888]
call fcn.140001490
nop
lea rcx, [rsp + 0x880]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x218
lea rdx, [rsp + 0x50]
call fcn.1400020d0
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x218
lea r9, [rsp + 0x850]
lea r8, [0x14023fe0c]
lea rdx, [rsp + 0x890]
call fcn.1400065a0
mov qword [rsp + 0x948], rax
mov rcx, qword [rsp + 0x948]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x38], eax
lea rcx, [rsp + 0x890]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x218
lea r9, [rsp + 0x850]
lea r8, [0x14023fe64]
lea rdx, [rsp + 0x898]
call fcn.1400065a0
mov qword [rsp + 0x950], rax
mov rcx, qword [rsp + 0x950]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x34], eax
lea rcx, [rsp + 0x898]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x218
lea r9, [rsp + 0x850]
lea r8, [0x14023ff64]
lea rdx, [rsp + 0x8a0]
call fcn.1400065a0
mov qword [rsp + 0x958], rax
mov rcx, qword [rsp + 0x958]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x30], eax
lea rcx, [rsp + 0x8a0]
call fcn.140001490
movzx ecx, byte [rsp + 0x38]
movzx eax, byte [rsp + 0x34]
shl eax, 8
or ecx, eax
movzx eax, byte [rsp + 0x30]
shl eax, 0x10
or ecx, eax
mov rax, qword [rsp + 0x9e0]
mov dword [rax + 0x234], ecx
mov dword [rsp + 0x850], 0
lea rcx, [rsp + 0x8a8]
call fcn.140001000
mov qword [rsp + 0x960], rax
mov rax, qword [rsp + 0x960]
mov qword [rsp + 0x968], rax
lea r8, [0x14023ffa0]
mov rdx, qword [rsp + 0x968]
lea rcx, [rsp + 0x8b0]
call fcn.1400010b0
mov qword [rsp + 0x970], rax
mov rcx, qword [rsp + 0x970]
call fcn.14000f8f0
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x400
lea r9, [rsp + 0x50]
lea r8, [0x14023ffb8]
lea rdx, [0x14023ffc8]
lea rcx, [0x14023ffe0]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x8b0]
call fcn.140001490
nop
lea rcx, [rsp + 0x8a8]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x220
lea rdx, [rsp + 0x50]
call fcn.1400020d0
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x220
lea r9, [rsp + 0x850]
lea r8, [0x14023ffdc]
lea rdx, [rsp + 0x8b8]
call fcn.1400065a0
mov qword [rsp + 0x978], rax
mov rcx, qword [rsp + 0x978]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x38], eax
lea rcx, [rsp + 0x8b8]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x220
lea r9, [rsp + 0x850]
lea r8, [0x14023fffc]
lea rdx, [rsp + 0x8c0]
call fcn.1400065a0
mov qword [rsp + 0x980], rax
mov rcx, qword [rsp + 0x980]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x34], eax
lea rcx, [rsp + 0x8c0]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x220
lea r9, [rsp + 0x850]
lea r8, [0x140240000]
lea rdx, [rsp + 0x8c8]
call fcn.1400065a0
mov qword [rsp + 0x988], rax
mov rcx, qword [rsp + 0x988]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x30], eax
lea rcx, [rsp + 0x8c8]
call fcn.140001490
movzx ecx, byte [rsp + 0x38]
movzx eax, byte [rsp + 0x34]
shl eax, 8
or ecx, eax
movzx eax, byte [rsp + 0x30]
shl eax, 0x10
or ecx, eax
mov rax, qword [rsp + 0x9e0]
mov dword [rax + 0x238], ecx
mov dword [rsp + 0x850], 0
lea rcx, [rsp + 0x8d0]
call fcn.140001000
mov qword [rsp + 0x990], rax
mov rax, qword [rsp + 0x990]
mov qword [rsp + 0x998], rax
lea r8, [0x140240008]
mov rdx, qword [rsp + 0x998]
lea rcx, [rsp + 0x8d8]
call fcn.1400010b0
mov qword [rsp + 0x9a0], rax
mov rcx, qword [rsp + 0x9a0]
call fcn.14000f8f0
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x400
lea r9, [rsp + 0x50]
lea r8, [0x140240020]
lea rdx, [0x140240038]
lea rcx, [0x140240050]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x8d8]
call fcn.140001490
nop
lea rcx, [rsp + 0x8d0]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x228
lea rdx, [rsp + 0x50]
call fcn.1400020d0
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x228
lea r9, [rsp + 0x850]
lea r8, [0x140240004]
lea rdx, [rsp + 0x8e0]
call fcn.1400065a0
mov qword [rsp + 0x9a8], rax
mov rcx, qword [rsp + 0x9a8]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x38], eax
lea rcx, [rsp + 0x8e0]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x228
lea r9, [rsp + 0x850]
lea r8, [0x140240034]
lea rdx, [rsp + 0x8e8]
call fcn.1400065a0
mov qword [rsp + 0x9b0], rax
mov rcx, qword [rsp + 0x9b0]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x34], eax
lea rcx, [rsp + 0x8e8]
call fcn.140001490
mov rcx, qword [rsp + 0x9e0]
add rcx, 0x228
lea r9, [rsp + 0x850]
lea r8, [0x14024004c]
lea rdx, [rsp + 0x8f0]
call fcn.1400065a0
mov qword [rsp + 0x9b8], rax
mov rcx, qword [rsp + 0x9b8]
call fcn.14000f8f0
mov rcx, rax
call fcn.1400a99f8
mov dword [rsp + 0x30], eax
lea rcx, [rsp + 0x8f0]
call fcn.140001490
movzx ecx, byte [rsp + 0x38]
movzx eax, byte [rsp + 0x34]
shl eax, 8
or ecx, eax
movzx eax, byte [rsp + 0x30]
shl eax, 0x10
or ecx, eax
mov rax, qword [rsp + 0x9e0]
mov dword [rax + 0x23c], ecx
xor edx, edx
mov rcx, qword [rsp + 0x9e0]
call fcn.14007c754
mov eax, 1
mov rcx, qword [rsp + 0x9c0]
xor rcx, rsp
call fcn.1400a8790
add rsp, 0x9d0
pop rdi
ret