Function at 0x14000c010
Capabilities:
Read .ini file

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x10230]
mov eax, 0x10330
call fcn.1400222d0
sub rsp, rax
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov qword [rsp + 0x10388], rbx
mov rax, qword [0x140040468]
xor rax, rsp
mov qword [rbp + 0x10220], rax
mov rbx, r8
mov rdi, rdx
mov rsi, rcx
mov qword [rsp + 0x40], rcx
call fcn.14000c940
xor r12d, r12d
mov qword [rsp + 0x30], r12
lea ecx, [r12 + 0x48]
call fcn.14001b224
test rax, rax
je 0x14000c601
mov qword [rsp + 0x28], rax
mov qword [rax], rax
mov rax, qword [rsp + 0x28]
mov qword [rax + 8], rax
mov rax, qword [rsp + 0x28]
mov qword [rax + 0x10], rax
mov rax, qword [rsp + 0x28]
mov byte [rax + 0x40], 1
mov rax, qword [rsp + 0x28]
mov byte [rax + 0x41], 1
mov word [rbp + 0x220], r12w
xor edx, edx
mov r8d, 0xfffc
lea rcx, [rbp + 0x222]
call fcn.14001cc90
mov word [rbp + 0x10], r12w
xor edx, edx
mov r8d, 0x206
lea rcx, [rbp + 0x12]
call fcn.14001cc90
lea r14, [rbp + 0x220]
cmp qword [rbx + 0x18], 8
jb 0x14000c0f0
mov rbx, qword [rbx]
cmp qword [rdi + 0x18], 8
jb 0x14000c0fa
mov rdi, qword [rdi]
mov r9, rbx
mov r8d, 0x7fff
lea rdx, [rbp + 0x220]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionW]
mov rdi, r12
test eax, eax
je 0x14000c4ba
lea r13, [rbp + 0x220]
mov r15d, eax
or rbx, 0xffffffffffffffff
nop dword [rax]
movzx eax, word [r13]
mov word [rbp + rdi*2 + 0x10], ax
cmp word [r14], 0
jne 0x14000c4a6
mov qword [rbp - 8], 7
mov qword [rbp - 0x10], r12
mov word [rbp - 0x20], r12w
xor eax, eax
mov rcx, rbx
lea rdi, [rbp + 0x10]
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rdx, [rbp + 0x10]
lea rcx, [rbp - 0x20]
call fcn.14000ce60
nop
mov qword [rbp - 0x58], 7
mov qword [rbp - 0x60], r12
mov word [rbp - 0x70], r12w
lea rsi, [rbp - 0x20]
mov rdx, qword [rbp - 0x20]
mov r8, qword [rbp - 8]
cmp r8, 8
cmovae rsi, rdx
lea rcx, [rbp - 0x20]
cmovae rcx, rdx
mov rax, qword [rbp - 0x10]
lea rdi, [rcx + rax*2]
lea rbx, [rbp - 0x20]
cmovae rbx, rdx
cmp rbx, rdi
je 0x14000c1dd
sub rsi, rbx
nop dword [rax]
movzx ecx, word [rbx]
call fcn.14001b18c
mov word [rsi + rbx], ax
add rbx, 2
cmp rbx, rdi
jne 0x14000c1c0
mov r8, qword [rbp - 8]
mov rdx, qword [rbp - 0x20]
lea rcx, [rbp - 0x20]
cmp r8, 8
cmovae rcx, rdx
lea rdx, [0x140034a80]
call fcn.14000c6a0
mov rdx, rax
xor eax, eax
or rbx, 0xffffffffffffffff
mov rcx, rbx
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rbp - 0x70]
call fcn.14000ce60
lea rcx, [rbp - 0x70]
cmp qword [rbp - 0x58], 8
cmovae rcx, qword [rbp - 0x70]
lea rdx, [0x140034a88]
call fcn.14000c6a0
mov rdx, rax
xor eax, eax
mov rcx, rbx
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rbp - 0x70]
call fcn.14000ce60
mov qword [rbp - 0x30], 7
mov qword [rbp - 0x38], r12
mov word [rbp - 0x48], r12w
lea r8d, [rbx + 2]
lea rdx, [0x14002fef8]
lea rcx, [rbp - 0x48]
call fcn.14000ce60
nop
mov r9, rbx
xor r8d, r8d
lea rdx, [rbp - 0x70]
lea rcx, [rbp - 0x48]
call fcn.14000cbd0
lea r8d, [rbx + 2]
lea rdx, [0x14002fef8]
lea rcx, [rbp - 0x48]
call fcn.14000cd00
mov r12, qword [rsp + 0x28]
mov r9, qword [r12 + 8]
mov r11, r12
mov rbx, qword [rbp - 0x30]
mov r10, qword [rbp - 0x38]
mov rsi, qword [rbp - 0x48]
cmp byte [r9 + 0x41], 0
jne 0x14000c365
or r12, 0xffffffffffffffff
nop word [rax + rax]
lea rcx, [r9 + 0x18]
lea rdx, [rbp - 0x48]
cmp rbx, 8
cmovae rdx, rsi
mov r8, qword [rcx + 0x10]
cmp r8, r8
cmp qword [rcx + 0x18], 8
jb 0x14000c2f1
mov rcx, qword [rcx]
mov rdi, r10
cmp r8, r10
cmovb rdi, r8
test rdi, rdi
je 0x14000c325
movzx eax, word [rdx]
cmp word [rcx], ax
jne 0x14000c317
add rcx, 2
add rdx, 2
dec rdi
jne 0x14000c300
jmp 0x14000c325
mov edi, 1
cmp word [rcx], ax
cmovb edi, r12d
jmp 0x14000c327
xor edi, edi
movsxd rax, edi
test edi, edi
jne 0x14000c340
cmp r8, r10
jae 0x14000c338
mov eax, r12d
jmp 0x14000c340
xor eax, eax
cmp r8, r10
setne al
test eax, eax
sets al
test al, al
je 0x14000c34f
mov r9, qword [r9 + 0x10]
jmp 0x14000c355
mov r11, r9
mov r9, qword [r9]
cmp byte [r9 + 0x41], 0
je 0x14000c2d0
mov r12, qword [rsp + 0x28]
mov qword [rsp + 0x58], r11
cmp r11, r12
je 0x14000c3f9
lea rcx, [r11 + 0x18]
mov r8, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 8
jb 0x14000c385
mov rcx, qword [rcx]
lea rdx, [rbp - 0x48]
cmp rbx, 8
cmovae rdx, rsi
mov rdi, r8
cmp r10, r8
cmovb rdi, r10
test rdi, rdi
je 0x14000c3cb
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x14000c3b7
add rdx, 2
add rcx, 2
dec rdi
jne 0x14000c3a0
jmp 0x14000c3cb
mov edi, 1
cmp word [rdx], ax
mov rbx, 0xffffffffffffffff
cmovb edi, ebx
jmp 0x14000c3d1
xor edi, edi
or rbx, 0xffffffffffffffff
movsxd rax, edi
test edi, edi
jne 0x14000c3e9
cmp r10, r8
jae 0x14000c3e1
mov eax, ebx
jmp 0x14000c3e9
xor eax, eax
cmp r10, r8
setne al
test eax, eax
sets al
test al, al
jne 0x14000c3fd
lea rax, [rsp + 0x58]
jmp 0x14000c407
or rbx, 0xffffffffffffffff
mov qword [rsp + 0x50], r12
lea rax, [rsp + 0x50]
mov rsi, qword [rsp + 0x40]
cmp qword [rax], r12
jne 0x14000c41d
lea rdx, [rbp - 0x48]
mov rcx, rsi
call fcn.14000c850
lea rdx, [rbp - 0x48]
lea rcx, [rsp + 0x20]
call fcn.14000e150
mov r8, rax
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x20]
call fcn.14000dbd0
mov rdi, rbx
xor edx, edx
mov r8d, 0x104
lea rcx, [rbp + 0x10]
call fcn.14001cc90
nop
cmp qword [rbp - 0x30], 8
jb 0x14000c461
mov rcx, qword [rbp - 0x48]
call fcn.14001a248
mov qword [rbp - 0x30], 7
xor r12d, r12d
mov qword [rbp - 0x38], r12
mov word [rbp - 0x48], r12w
cmp qword [rbp - 0x58], 8
jb 0x14000c485
mov rcx, qword [rbp - 0x70]
call fcn.14001a248
mov qword [rbp - 0x58], 7
mov qword [rbp - 0x60], r12
mov word [rbp - 0x70], r12w
cmp qword [rbp - 8], 8
jb 0x14000c4a6
mov rcx, qword [rbp - 0x20]
call fcn.14001a248
inc rdi
add r14, 2
add r13, 2
dec r15
jne 0x14000c130
mov qword [rbp - 0x58], 7
mov qword [rbp - 0x60], r12
mov word [rbp - 0x70], r12w
mov r8d, 0x19
lea rdx, str._VID_0cf3PID_3006MI_02_
lea rcx, [rbp - 0x70]
call fcn.14000ce60
nop
lea rdx, [rbp - 0x70]
mov rcx, rsi
call fcn.14000c850
nop
cmp qword [rbp - 0x58], 8
jb 0x14000c500
mov rcx, qword [rbp - 0x70]
call fcn.14001a248
nop
mov rbx, qword [rsp + 0x28]
mov rdi, qword [rbx]
cmp rdi, rdi
jne 0x14000c584
mov rdi, qword [rbx + 8]
mov rsi, rdi
cmp byte [rdi + 0x41], 0
jne 0x14000c568
nop word [rax + rax]
mov rdx, qword [rsi + 0x10]
lea rcx, [rsp + 0x20]
call fcn.14000da50
mov rsi, qword [rsi]
cmp qword [rdi + 0x30], 8
jb 0x14000c541
mov rcx, qword [rdi + 0x18]
call fcn.14001a248
mov qword [rdi + 0x30], 7
mov qword [rdi + 0x28], r12
mov word [rdi + 0x18], r12w
mov rcx, rdi
call fcn.14001a248
mov rdi, rsi
cmp byte [rsi + 0x41], 0
je 0x14000c520
mov rbx, qword [rsp + 0x28]
mov qword [rbx + 8], rbx
mov rax, qword [rsp + 0x28]
mov qword [rax], rax
mov rax, qword [rsp + 0x28]
mov qword [rax + 0x10], rax
mov qword [rsp + 0x30], r12
jmp 0x14000c5f2
cmp rdi, rbx
je 0x14000c5f7
nop dword [rax]
mov r8, rdi
cmp byte [rdi + 0x41], 0
jne 0x14000c5de
mov rax, qword [rdi + 0x10]
cmp byte [rax + 0x41], 0
jne 0x14000c5be
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x41], 0
jne 0x14000c5de
nop
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x41], 0
je 0x14000c5b0
jmp 0x14000c5de
mov rax, qword [rdi + 8]
cmp byte [rax + 0x41], 0
jne 0x14000c5db
cmp rdi, qword [rax + 0x10]
jne 0x14000c5db
mov rdi, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x41], 0
je 0x14000c5c8
mov rdi, rax
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x20]
call fcn.14000d660
cmp rdi, rbx
jne 0x14000c590
mov rbx, qword [rsp + 0x28]
mov rcx, rbx
call fcn.14001a248
jmp 0x14000c633
mov qword [rsp + 0x48], r12
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x60]
call fcn.14001a964
lea rdx, vtable.std::bad_alloc.0
mov qword [rsp + 0x60], rdx
lea rdx, [0x14003e328]
lea rcx, [rsp + 0x60]
call fcn.14001baf0
int3
mov rcx, qword [rbp + 0x10220]
xor rcx, rsp
call fcn.140019650
mov rbx, qword [rsp + 0x10388]
add rsp, 0x10330
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret