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

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0xab0
mov qword [rsp + 0x998], 0xfffffffffffffffe
mov rax, qword [0x1402a15c0]
xor rax, rsp
mov qword [rsp + 0xaa8], rax
mov dword [rsp + 0x990], 0
mov rax, qword [rsp + 0xac0]
mov dword [rax + 0x1608], 1
xor eax, eax
mov word [rsp + 0x40], ax
lea rdi, [rsp + 0x42]
xor eax, eax
mov ecx, 0x7fe
rep stosb byte [rdi], al
lea rcx, [rsp + 0x900]
call fcn.140001000
mov qword [rsp + 0x9a0], rax
mov rax, qword [rsp + 0x9a0]
mov qword [rsp + 0x9a8], rax
lea r8, [0x140247f30]
mov rdx, qword [rsp + 0x9a8]
lea rcx, [rsp + 0x908]
call fcn.1400010b0
mov qword [rsp + 0x9b0], rax
mov rcx, qword [rsp + 0x9b0]
call fcn.140023510
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x400
lea r9, [rsp + 0x40]
lea r8, str.100_0_100_100__50__50__50__50__80__80_120_120__50_0_120__80_80_80_80__80_80_80_80_80_80_80_80_80
lea rdx, str.UserList
lea rcx, [0x140248028]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x908]
call fcn.140001490
nop
lea rcx, [rsp + 0x900]
call fcn.140001490
mov dword [rsp + 0x840], 0
mov dword [rsp + 0x840], 0
mov dword [rsp + 0x844], 0
jmp 0x14018dbc3
mov eax, dword [rsp + 0x844]
add eax, 1
mov dword [rsp + 0x844], eax
cmp dword [rsp + 0x844], 0x1c
jge 0x14018deb6
cmp dword [rsp + 0x840], 0
jl 0x14018dc79
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x918]
call fcn.1400020d0
mov qword [rsp + 0x9b8], rax
mov rax, qword [rsp + 0x9b8]
mov qword [rsp + 0x9c0], rax
mov eax, dword [rsp + 0x990]
or eax, 1
mov dword [rsp + 0x990], eax
lea r9, [rsp + 0x840]
lea r8, [0x140247074]
lea rdx, [rsp + 0x920]
mov rcx, qword [rsp + 0x9c0]
call fcn.1400065a0
mov qword [rsp + 0x9c8], rax
mov rax, qword [rsp + 0x9c8]
mov qword [rsp + 0x9d0], rax
mov eax, dword [rsp + 0x990]
or eax, 2
mov dword [rsp + 0x990], eax
mov rax, qword [rsp + 0x9d0]
mov qword [rsp + 0x9d8], rax
jmp 0x14018dcc6
lea rdx, [0x14024803c]
lea rcx, [rsp + 0x928]
call fcn.1400020d0
mov qword [rsp + 0x9e0], rax
mov rax, qword [rsp + 0x9e0]
mov qword [rsp + 0x9e8], rax
mov eax, dword [rsp + 0x990]
or eax, 4
mov dword [rsp + 0x990], eax
mov rax, qword [rsp + 0x9e8]
mov qword [rsp + 0x9d8], rax
mov rax, qword [rsp + 0x9d8]
mov qword [rsp + 0x910], rax
mov rdx, qword [rsp + 0x910]
lea rcx, [rsp + 0x848]
call fcn.140001430
nop
mov eax, dword [rsp + 0x990]
and eax, 4
test eax, eax
je 0x14018dd10
and dword [rsp + 0x990], 0xfffffffb
lea rcx, [rsp + 0x928]
call fcn.140001490
nop
mov eax, dword [rsp + 0x990]
and eax, 2
test eax, eax
je 0x14018dd34
and dword [rsp + 0x990], 0xfffffffd
lea rcx, [rsp + 0x920]
call fcn.140001490
nop
mov eax, dword [rsp + 0x990]
and eax, 1
test eax, eax
je 0x14018dd57
and dword [rsp + 0x990], 0xfffffffe
lea rcx, [rsp + 0x918]
call fcn.140001490
lea rcx, [rsp + 0x848]
call fcn.140001a40
test eax, eax
jg 0x14018dd7a
lea rcx, [rsp + 0x848]
call fcn.140001490
jmp 0x14018deb6
lea rcx, [rsp + 0x848]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov dword [rsp + 0x850], eax
cmp dword [rsp + 0xac8], 0
je 0x14018ddb5
cmp dword [rsp + 0x850], 0
jne 0x14018ddb5
mov dword [rsp + 0x850], 0x50
mov ecx, dword [rsp + 0x850]
call fcn.1400aaaf8
mov rcx, qword [rsp + 0xac0]
add rcx, 0xdc8
mov r8d, eax
mov edx, dword [rsp + 0x844]
call fcn.14000e0b0
cmp dword [rsp + 0x850], 0
jge 0x14018de22
mov dword [rsp + 0x858], 1
mov dword [rsp + 0x85c], 1
mov rcx, qword [rsp + 0xac0]
add rcx, 0xdc8
lea r8, [rsp + 0x858]
mov edx, dword [rsp + 0x844]
call fcn.14000c860
cmp dword [rsp + 0x844], 0
jne 0x14018de3e
lea rcx, [rsp + 0x848]
call fcn.140001490
jmp 0x14018dbb2
cmp dword [rsp + 0x850], 0
jne 0x14018de55
mov dword [rsp + 0x9f0], 0x400
jmp 0x14018de60
mov dword [rsp + 0x9f0], 0x408
mov eax, dword [rsp + 0x9f0]
mov dword [rsp + 0x854], eax
mov edi, dword [rsp + 0x844]
sub edi, 1
mov rcx, qword [rsp + 0xac0]
add rcx, 0x15f8
mov edx, 3
call fcn.14000f5c0
mov r8d, dword [rsp + 0x854]
mov edx, edi
mov rcx, rax
call fcn.14000e080
nop
lea rcx, [rsp + 0x848]
call fcn.140001490
jmp 0x14018dbb2
lea rcx, [rsp + 0x930]
call fcn.140001000
mov qword [rsp + 0x9f8], rax
mov rax, qword [rsp + 0x9f8]
mov qword [rsp + 0xa00], rax
lea r8, [0x140248048]
mov rdx, qword [rsp + 0xa00]
lea rcx, [rsp + 0x938]
call fcn.1400010b0
mov qword [rsp + 0xa08], rax
mov rcx, qword [rsp + 0xa08]
call fcn.140023510
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x400
lea r9, [rsp + 0x40]
lea r8, str.80_80_80_80_80_80_80_80_80
lea rdx, str.DiskList
lea rcx, [0x1402480b0]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x938]
call fcn.140001490
nop
lea rcx, [rsp + 0x930]
call fcn.140001490
mov dword [rsp + 0x840], 0
mov dword [rsp + 0x880], 0
jmp 0x14018df7d
mov eax, dword [rsp + 0x880]
add eax, 1
mov dword [rsp + 0x880], eax
cmp dword [rsp + 0x880], 9
jge 0x14018e270
cmp dword [rsp + 0x840], 0
jl 0x14018e033
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x948]
call fcn.1400020d0
mov qword [rsp + 0xa10], rax
mov rax, qword [rsp + 0xa10]
mov qword [rsp + 0xa18], rax
mov eax, dword [rsp + 0x990]
or eax, 8
mov dword [rsp + 0x990], eax
lea r9, [rsp + 0x840]
lea r8, [0x140247094]
lea rdx, [rsp + 0x950]
mov rcx, qword [rsp + 0xa18]
call fcn.1400065a0
mov qword [rsp + 0xa20], rax
mov rax, qword [rsp + 0xa20]
mov qword [rsp + 0xa28], rax
mov eax, dword [rsp + 0x990]
or eax, 0x10
mov dword [rsp + 0x990], eax
mov rax, qword [rsp + 0xa28]
mov qword [rsp + 0xa30], rax
jmp 0x14018e080
lea rdx, [0x1402480c4]
lea rcx, [rsp + 0x958]
call fcn.1400020d0
mov qword [rsp + 0xa38], rax
mov rax, qword [rsp + 0xa38]
mov qword [rsp + 0xa40], rax
mov eax, dword [rsp + 0x990]
or eax, 0x20
mov dword [rsp + 0x990], eax
mov rax, qword [rsp + 0xa40]
mov qword [rsp + 0xa30], rax
mov rax, qword [rsp + 0xa30]
mov qword [rsp + 0x940], rax
mov rdx, qword [rsp + 0x940]
lea rcx, [rsp + 0x888]
call fcn.140001430
nop
mov eax, dword [rsp + 0x990]
and eax, 0x20
test eax, eax
je 0x14018e0ca
and dword [rsp + 0x990], 0xffffffdf
lea rcx, [rsp + 0x958]
call fcn.140001490
nop
mov eax, dword [rsp + 0x990]
and eax, 0x10
test eax, eax
je 0x14018e0ee
and dword [rsp + 0x990], 0xffffffef
lea rcx, [rsp + 0x950]
call fcn.140001490
nop
mov eax, dword [rsp + 0x990]
and eax, 8
test eax, eax
je 0x14018e111
and dword [rsp + 0x990], 0xfffffff7
lea rcx, [rsp + 0x948]
call fcn.140001490
lea rcx, [rsp + 0x888]
call fcn.140001a40
test eax, eax
jg 0x14018e134
lea rcx, [rsp + 0x888]
call fcn.140001490
jmp 0x14018e270
lea rcx, [rsp + 0x888]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov dword [rsp + 0x890], eax
cmp dword [rsp + 0xac8], 0
je 0x14018e16f
cmp dword [rsp + 0x890], 0
jne 0x14018e16f
mov dword [rsp + 0x890], 0x50
mov ecx, dword [rsp + 0x890]
call fcn.1400aaaf8
mov rcx, qword [rsp + 0xac0]
add rcx, 0xe70
mov r8d, eax
mov edx, dword [rsp + 0x880]
call fcn.14000e0b0
cmp dword [rsp + 0x890], 0
jge 0x14018e1dc
mov dword [rsp + 0x898], 1
mov dword [rsp + 0x89c], 1
mov rcx, qword [rsp + 0xac0]
add rcx, 0xe70
lea r8, [rsp + 0x898]
mov edx, dword [rsp + 0x880]
call fcn.14000c860
cmp dword [rsp + 0x880], 0
jne 0x14018e1f8
lea rcx, [rsp + 0x888]
call fcn.140001490
jmp 0x14018df6c
cmp dword [rsp + 0x890], 0
jne 0x14018e20f
mov dword [rsp + 0xa48], 0x400
jmp 0x14018e21a
mov dword [rsp + 0xa48], 0x408
mov eax, dword [rsp + 0xa48]
mov dword [rsp + 0x894], eax
mov edi, dword [rsp + 0x880]
sub edi, 1
mov rcx, qword [rsp + 0xac0]
add rcx, 0x15f8
mov edx, 1
call fcn.14000f5c0
mov r8d, dword [rsp + 0x894]
mov edx, edi
mov rcx, rax
call fcn.14000e080
nop
lea rcx, [rsp + 0x888]
call fcn.140001490
jmp 0x14018df6c
lea rcx, [rsp + 0x960]
call fcn.140001000
mov qword [rsp + 0xa50], rax
mov rax, qword [rsp + 0xa50]
mov qword [rsp + 0xa58], rax
lea r8, [0x1402480d0]
mov rdx, qword [rsp + 0xa58]
lea rcx, [rsp + 0x968]
call fcn.1400010b0
mov qword [rsp + 0xa60], rax
mov rcx, qword [rsp + 0xa60]
call fcn.140023510
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x400
lea r9, [rsp + 0x40]
lea r8, str.120_200_80_150
lea rdx, str.ImageList
lea rcx, str.ListWidth
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x968]
call fcn.140001490
nop
lea rcx, [rsp + 0x960]
call fcn.140001490
mov dword [rsp + 0x840], 0
mov dword [rsp + 0x8c0], 0
jmp 0x14018e337
mov eax, dword [rsp + 0x8c0]
add eax, 1
mov dword [rsp + 0x8c0], eax
cmp dword [rsp + 0x8c0], 4
jge 0x14018e638
cmp dword [rsp + 0x840], 0
jl 0x14018e3ef
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x978]
call fcn.1400020d0
mov qword [rsp + 0xa68], rax
mov rax, qword [rsp + 0xa68]
mov qword [rsp + 0xa70], rax
mov eax, dword [rsp + 0x990]
or eax, 0x40
mov dword [rsp + 0x990], eax
lea r9, [rsp + 0x840]
lea r8, [0x1402470fc]
lea rdx, [rsp + 0x980]
mov rcx, qword [rsp + 0xa70]
call fcn.1400065a0
mov qword [rsp + 0xa78], rax
mov rax, qword [rsp + 0xa78]
mov qword [rsp + 0xa80], rax
mov eax, dword [rsp + 0x990]
or eax, 0x80
mov dword [rsp + 0x990], eax
mov rax, qword [rsp + 0xa80]
mov qword [rsp + 0xa88], rax
jmp 0x14018e43e
lea rdx, [0x140248134]
lea rcx, [rsp + 0x988]
call fcn.1400020d0
mov qword [rsp + 0xa90], rax
mov rax, qword [rsp + 0xa90]
mov qword [rsp + 0xa98], rax
mov eax, dword [rsp + 0x990]
or eax, 0x100
mov dword [rsp + 0x990], eax
mov rax, qword [rsp + 0xa98]
mov qword [rsp + 0xa88], rax
mov rax, qword [rsp + 0xa88]
mov qword [rsp + 0x970], rax
mov rdx, qword [rsp + 0x970]
lea rcx, [rsp + 0x8c8]
call fcn.140001430
nop
mov eax, dword [rsp + 0x990]
and eax, 0x100
test eax, eax
je 0x14018e48d
and dword [rsp + 0x990], 0xfffffeff
lea rcx, [rsp + 0x988]
call fcn.140001490
nop
mov eax, dword [rsp + 0x990]
and eax, 0x80
test eax, eax
je 0x14018e4b6
and dword [rsp + 0x990], 0xffffff7f
lea rcx, [rsp + 0x980]
call fcn.140001490
nop
mov eax, dword [rsp + 0x990]
and eax, 0x40
test eax, eax
je 0x14018e4d9
and dword [rsp + 0x990], 0xffffffbf
lea rcx, [rsp + 0x978]
call fcn.140001490
lea rcx, [rsp + 0x8c8]
call fcn.140001a40
test eax, eax
jg 0x14018e4fc
lea rcx, [rsp + 0x8c8]
call fcn.140001490
jmp 0x14018e638
lea rcx, [rsp + 0x8c8]
call fcn.140023510
mov rcx, rax
call fcn.1400a948c
mov dword [rsp + 0x8d0], eax
cmp dword [rsp + 0xac8], 0
je 0x14018e537
cmp dword [rsp + 0x8d0], 0
jne 0x14018e537
mov dword [rsp + 0x8d0], 0x50
mov ecx, dword [rsp + 0x8d0]
call fcn.1400aaaf8
mov rcx, qword [rsp + 0xac0]
add rcx, 0xf18
mov r8d, eax
mov edx, dword [rsp + 0x8c0]
call fcn.14000e0b0
cmp dword [rsp + 0x8d0], 0
jge 0x14018e5a4
mov dword [rsp + 0x8d8], 1
mov dword [rsp + 0x8dc], 1
mov rcx, qword [rsp + 0xac0]
add rcx, 0xf18
lea r8, [rsp + 0x8d8]
mov edx, dword [rsp + 0x8c0]
call fcn.14000c860
cmp dword [rsp + 0x8c0], 0
jne 0x14018e5c0
lea rcx, [rsp + 0x8c8]
call fcn.140001490
jmp 0x14018e326
cmp dword [rsp + 0x8d0], 0
jne 0x14018e5d7
mov dword [rsp + 0xaa0], 0x400
jmp 0x14018e5e2
mov dword [rsp + 0xaa0], 0x408
mov eax, dword [rsp + 0xaa0]
mov dword [rsp + 0x8d4], eax
mov edi, dword [rsp + 0x8c0]
sub edi, 1
mov rcx, qword [rsp + 0xac0]
add rcx, 0x15f8
mov edx, 2
call fcn.14000f5c0
mov r8d, dword [rsp + 0x8d4]
mov edx, edi
mov rcx, rax
call fcn.14000e080
nop
lea rcx, [rsp + 0x8c8]
call fcn.140001490
jmp 0x14018e326
mov rax, qword [rsp + 0xac0]
mov dword [rax + 0x1608], 0
mov rcx, qword [rsp + 0xaa8]
xor rcx, rsp
call fcn.1400a8050
add rsp, 0xab0
pop rdi
ret