Function at 0x14018da00
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 [0x1402a25c0]
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, [0x140248cf0]
mov rdx, qword [rsp + 0x9a8]
lea rcx, [rsp + 0x908]
call fcn.1400010b0
mov qword [rsp + 0x9b0], rax
mov rcx, qword [rsp + 0x9b0]
call fcn.1400012c0
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, [0x140248de8]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x908]
call fcn.140001470
nop
lea rcx, [rsp + 0x900]
call fcn.140001470
mov dword [rsp + 0x840], 0
mov dword [rsp + 0x840], 0
mov dword [rsp + 0x844], 0
jmp 0x14018db33
mov eax, dword [rsp + 0x844]
add eax, 1
mov dword [rsp + 0x844], eax
cmp dword [rsp + 0x844], 0x1c
jge 0x14018de26
cmp dword [rsp + 0x840], 0
jl 0x14018dbe9
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x918]
call fcn.140002090
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, [0x140247dc4]
lea rdx, [rsp + 0x920]
mov rcx, qword [rsp + 0x9c0]
call fcn.140006540
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 0x14018dc36
lea rdx, [0x140248dfc]
lea rcx, [rsp + 0x928]
call fcn.140002090
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.140001440
nop
mov eax, dword [rsp + 0x990]
and eax, 4
test eax, eax
je 0x14018dc80
and dword [rsp + 0x990], 0xfffffffb
lea rcx, [rsp + 0x928]
call fcn.140001470
nop
mov eax, dword [rsp + 0x990]
and eax, 2
test eax, eax
je 0x14018dca4
and dword [rsp + 0x990], 0xfffffffd
lea rcx, [rsp + 0x920]
call fcn.140001470
nop
mov eax, dword [rsp + 0x990]
and eax, 1
test eax, eax
je 0x14018dcc7
and dword [rsp + 0x990], 0xfffffffe
lea rcx, [rsp + 0x918]
call fcn.140001470
lea rcx, [rsp + 0x848]
call fcn.1400019f0
test eax, eax
jg 0x14018dcea
lea rcx, [rsp + 0x848]
call fcn.140001470
jmp 0x14018de26
lea rcx, [rsp + 0x848]
call fcn.1400012c0
mov rcx, rax
call fcn.1400a947c
mov dword [rsp + 0x850], eax
cmp dword [rsp + 0xac8], 0
je 0x14018dd25
cmp dword [rsp + 0x850], 0
jne 0x14018dd25
mov dword [rsp + 0x850], 0x50
mov ecx, dword [rsp + 0x850]
call fcn.1400b10b4
mov rcx, qword [rsp + 0xac0]
add rcx, 0xdc8
mov r8d, eax
mov edx, dword [rsp + 0x844]
call fcn.14000e9c0
cmp dword [rsp + 0x850], 0
jge 0x14018dd92
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.14000d4c0
cmp dword [rsp + 0x844], 0
jne 0x14018ddae
lea rcx, [rsp + 0x848]
call fcn.140001470
jmp 0x14018db22
cmp dword [rsp + 0x850], 0
jne 0x14018ddc5
mov dword [rsp + 0x9f0], 0x400
jmp 0x14018ddd0
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.14000fec0
mov r8d, dword [rsp + 0x854]
mov edx, edi
mov rcx, rax
call fcn.14000e990
nop
lea rcx, [rsp + 0x848]
call fcn.140001470
jmp 0x14018db22
lea rcx, [rsp + 0x930]
call fcn.140001000
mov qword [rsp + 0x9f8], rax
mov rax, qword [rsp + 0x9f8]
mov qword [rsp + 0xa00], rax
lea r8, [0x140248e08]
mov rdx, qword [rsp + 0xa00]
lea rcx, [rsp + 0x938]
call fcn.1400010b0
mov qword [rsp + 0xa08], rax
mov rcx, qword [rsp + 0xa08]
call fcn.1400012c0
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, [0x140248e70]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x938]
call fcn.140001470
nop
lea rcx, [rsp + 0x930]
call fcn.140001470
mov dword [rsp + 0x840], 0
mov dword [rsp + 0x880], 0
jmp 0x14018deed
mov eax, dword [rsp + 0x880]
add eax, 1
mov dword [rsp + 0x880], eax
cmp dword [rsp + 0x880], 9
jge 0x14018e1e0
cmp dword [rsp + 0x840], 0
jl 0x14018dfa3
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x948]
call fcn.140002090
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, [0x140247e34]
lea rdx, [rsp + 0x950]
mov rcx, qword [rsp + 0xa18]
call fcn.140006540
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 0x14018dff0
lea rdx, [0x140248e84]
lea rcx, [rsp + 0x958]
call fcn.140002090
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.140001440
nop
mov eax, dword [rsp + 0x990]
and eax, 0x20
test eax, eax
je 0x14018e03a
and dword [rsp + 0x990], 0xffffffdf
lea rcx, [rsp + 0x958]
call fcn.140001470
nop
mov eax, dword [rsp + 0x990]
and eax, 0x10
test eax, eax
je 0x14018e05e
and dword [rsp + 0x990], 0xffffffef
lea rcx, [rsp + 0x950]
call fcn.140001470
nop
mov eax, dword [rsp + 0x990]
and eax, 8
test eax, eax
je 0x14018e081
and dword [rsp + 0x990], 0xfffffff7
lea rcx, [rsp + 0x948]
call fcn.140001470
lea rcx, [rsp + 0x888]
call fcn.1400019f0
test eax, eax
jg 0x14018e0a4
lea rcx, [rsp + 0x888]
call fcn.140001470
jmp 0x14018e1e0
lea rcx, [rsp + 0x888]
call fcn.1400012c0
mov rcx, rax
call fcn.1400a947c
mov dword [rsp + 0x890], eax
cmp dword [rsp + 0xac8], 0
je 0x14018e0df
cmp dword [rsp + 0x890], 0
jne 0x14018e0df
mov dword [rsp + 0x890], 0x50
mov ecx, dword [rsp + 0x890]
call fcn.1400b10b4
mov rcx, qword [rsp + 0xac0]
add rcx, 0xe70
mov r8d, eax
mov edx, dword [rsp + 0x880]
call fcn.14000e9c0
cmp dword [rsp + 0x890], 0
jge 0x14018e14c
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.14000d4c0
cmp dword [rsp + 0x880], 0
jne 0x14018e168
lea rcx, [rsp + 0x888]
call fcn.140001470
jmp 0x14018dedc
cmp dword [rsp + 0x890], 0
jne 0x14018e17f
mov dword [rsp + 0xa48], 0x400
jmp 0x14018e18a
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.14000fec0
mov r8d, dword [rsp + 0x894]
mov edx, edi
mov rcx, rax
call fcn.14000e990
nop
lea rcx, [rsp + 0x888]
call fcn.140001470
jmp 0x14018dedc
lea rcx, [rsp + 0x960]
call fcn.140001000
mov qword [rsp + 0xa50], rax
mov rax, qword [rsp + 0xa50]
mov qword [rsp + 0xa58], rax
lea r8, [0x140248e90]
mov rdx, qword [rsp + 0xa58]
lea rcx, [rsp + 0x968]
call fcn.1400010b0
mov qword [rsp + 0xa60], rax
mov rcx, qword [rsp + 0xa60]
call fcn.1400012c0
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.140001470
nop
lea rcx, [rsp + 0x960]
call fcn.140001470
mov dword [rsp + 0x840], 0
mov dword [rsp + 0x8c0], 0
jmp 0x14018e2a7
mov eax, dword [rsp + 0x8c0]
add eax, 1
mov dword [rsp + 0x8c0], eax
cmp dword [rsp + 0x8c0], 4
jge 0x14018e5a8
cmp dword [rsp + 0x840], 0
jl 0x14018e35f
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x978]
call fcn.140002090
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, [0x140247e54]
lea rdx, [rsp + 0x980]
mov rcx, qword [rsp + 0xa70]
call fcn.140006540
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 0x14018e3ae
lea rdx, [0x140248ef4]
lea rcx, [rsp + 0x988]
call fcn.140002090
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.140001440
nop
mov eax, dword [rsp + 0x990]
and eax, 0x100
test eax, eax
je 0x14018e3fd
and dword [rsp + 0x990], 0xfffffeff
lea rcx, [rsp + 0x988]
call fcn.140001470
nop
mov eax, dword [rsp + 0x990]
and eax, 0x80
test eax, eax
je 0x14018e426
and dword [rsp + 0x990], 0xffffff7f
lea rcx, [rsp + 0x980]
call fcn.140001470
nop
mov eax, dword [rsp + 0x990]
and eax, 0x40
test eax, eax
je 0x14018e449
and dword [rsp + 0x990], 0xffffffbf
lea rcx, [rsp + 0x978]
call fcn.140001470
lea rcx, [rsp + 0x8c8]
call fcn.1400019f0
test eax, eax
jg 0x14018e46c
lea rcx, [rsp + 0x8c8]
call fcn.140001470
jmp 0x14018e5a8
lea rcx, [rsp + 0x8c8]
call fcn.1400012c0
mov rcx, rax
call fcn.1400a947c
mov dword [rsp + 0x8d0], eax
cmp dword [rsp + 0xac8], 0
je 0x14018e4a7
cmp dword [rsp + 0x8d0], 0
jne 0x14018e4a7
mov dword [rsp + 0x8d0], 0x50
mov ecx, dword [rsp + 0x8d0]
call fcn.1400b10b4
mov rcx, qword [rsp + 0xac0]
add rcx, 0xf18
mov r8d, eax
mov edx, dword [rsp + 0x8c0]
call fcn.14000e9c0
cmp dword [rsp + 0x8d0], 0
jge 0x14018e514
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.14000d4c0
cmp dword [rsp + 0x8c0], 0
jne 0x14018e530
lea rcx, [rsp + 0x8c8]
call fcn.140001470
jmp 0x14018e296
cmp dword [rsp + 0x8d0], 0
jne 0x14018e547
mov dword [rsp + 0xaa0], 0x400
jmp 0x14018e552
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.14000fec0
mov r8d, dword [rsp + 0x8d4]
mov edx, edi
mov rcx, rax
call fcn.14000e990
nop
lea rcx, [rsp + 0x8c8]
call fcn.140001470
jmp 0x14018e296
mov rax, qword [rsp + 0xac0]
mov dword [rax + 0x1608], 0
mov rcx, qword [rsp + 0xaa8]
xor rcx, rsp
call fcn.1400a8040
add rsp, 0xab0
pop rdi
ret