Function at 0x18000c840
Capabilities:
Read .ini file

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xffc0]
mov eax, 0x100c0
call fcn.18001cbf0
sub rsp, rax
mov qword [rsp + 0x60], 0xfffffffffffffffe
mov qword [rsp + 0x10110], rbx
mov rax, qword [0x1800750b0]
xor rax, rsp
mov qword [rbp + 0xffb0], rax
mov r15, rdx
mov rbx, rcx
cmp qword [rcx + 0x10], 0
jbe 0x18000ccac
cmp qword [rcx + 0x30], 0
jbe 0x18000ccac
xor r12d, r12d
cmp qword [rdx + 8], r12
jbe 0x18000c8cf
mov rdx, qword [rdx]
mov rdx, qword [rdx + 8]
mov rcx, r15
call fcn.18000d9f0
mov rax, qword [r15]
mov qword [rax + 8], rax
mov rax, qword [r15]
mov qword [rax], rax
mov rax, qword [r15]
mov qword [rax + 0x10], rax
mov qword [r15 + 8], r12
mov word [rbp - 0x50], r12w
xor edx, edx
mov r8d, 0xfffc
lea rcx, [rbp - 0x4e]
call fcn.18001cc50
mov qword [rsp + 0x68], r12
mov qword [rbp - 0x78], 7
mov qword [rbp - 0x80], r12
mov word [rsp + 0x70], r12w
mov qword [rbp - 0x58], 7
mov qword [rbp - 0x60], r12
mov word [rbp - 0x70], r12w
lea r9, [rbx + 0x20]
cmp qword [r9 + 0x18], 8
jb 0x18000c91b
mov r9, qword [r9]
cmp qword [rbx + 0x18], 8
jb 0x18000c925
mov rbx, qword [rbx]
mov r8d, 0x7fff
lea rdx, [rbp - 0x50]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionW]
lea r14, [rbp - 0x50]
cmp word [rbp - 0x50], 0
je 0x18000cc6c
or r13, 0xffffffffffffffff
nop dword [rax + rax]
mov rsi, r13
lea rsi, [rsi + 1]
cmp word [r14 + rsi*2], 0
jne 0x18000c953
lea r8, [rsp + 0x68]
lea rdx, [0x180064b84]
mov rcx, r14
call fcn.18001b5e4
mov rbx, rax
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], r12
mov word [rsp + 0x30], r12w
cmp word [rax], 0
jne 0x18000c995
mov r8, r12
jmp 0x18000c9ab
mov r8, r13
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x18000c9a0
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.180008eb0
cmp qword [rbp - 0x78], 8
jb 0x18000c9c9
mov rcx, qword [rsp + 0x70]
call fcn.18001af28
mov qword [rbp - 0x78], 7
mov qword [rbp - 0x80], r12
mov word [rsp + 0x70], r12w
mov rcx, qword [rsp + 0x48]
cmp rcx, 8
jae 0x18000ca09
mov r8, qword [rsp + 0x40]
inc r8
je 0x18000ca13
add r8, r8
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x70]
call fcn.18001a510
mov rcx, qword [rsp + 0x48]
jmp 0x18000ca13
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rcx
mov rax, r13
lea rax, [rax + 1]
cmp word [rbx + rax*2], 0
jne 0x18000ca23
lea rdx, [rax + 1]
lea rdx, [rbx + rdx*2]
mov qword [rsp + 0x48], 7
mov qword [rsp + 0x40], r12
mov word [rsp + 0x30], r12w
cmp word [rdx], 0
jne 0x18000ca55
mov r8, r12
jmp 0x18000ca6b
mov r8, r13
nop dword [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x18000ca60
lea rcx, [rsp + 0x30]
call fcn.180008eb0
cmp qword [rbp - 0x58], 8
jb 0x18000ca85
mov rcx, qword [rbp - 0x70]
call fcn.18001af28
mov qword [rbp - 0x58], 7
mov qword [rbp - 0x60], r12
mov word [rbp - 0x70], r12w
mov rcx, qword [rsp + 0x48]
cmp rcx, 8
jae 0x18000cac3
mov r8, qword [rsp + 0x40]
inc r8
je 0x18000cacc
add r8, r8
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x70]
call fcn.18001a510
mov rcx, qword [rsp + 0x48]
jmp 0x18000cacc
mov rax, qword [rsp + 0x30]
mov qword [rbp - 0x70], rax
mov rax, qword [rsp + 0x40]
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x58], rcx
mov rax, qword [r15]
mov r10, qword [rax + 8]
mov rbx, rax
mov rdi, qword [rbp - 0x80]
cmp byte [r10 + 0x19], 0
jne 0x18000cb83
lea rcx, [r10 + 0x20]
lea r8, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae r8, qword [rsp + 0x70]
mov r11, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 8
jb 0x18000cb14
mov rcx, qword [rcx]
mov r9, rdi
cmp r11, rdi
cmovb r9, r11
test r9, r9
jmp 0x18000cb48
movzx edx, word [r8]
cmp word [rcx], dx
jne 0x18000cb39
add rcx, 2
add r8, 2
dec r9
jmp 0x18000cb48
mov r9d, 1
cmp word [rcx], dx
cmovb r9d, r13d
jmp 0x18000cb4d
jne 0x18000cb23
mov r9d, r12d
movsxd rcx, r9d
test r9d, r9d
jne 0x18000cb68
cmp r11, rdi
jae 0x18000cb5f
mov ecx, r13d
jmp 0x18000cb68
mov ecx, r12d
cmp r11, rdi
setne cl
test ecx, ecx
jns 0x18000cb72
mov r10, qword [r10 + 0x10]
jmp 0x18000cb78
mov rbx, r10
mov r10, qword [r10]
cmp byte [r10 + 0x19], 0
je 0x18000caf2
cmp rbx, rax
je 0x18000cc08
lea rcx, [rbx + 0x20]
mov r9, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 8
jb 0x18000cb9e
mov rcx, qword [rcx]
lea rdx, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae rdx, qword [rsp + 0x70]
mov r8, r9
cmp rdi, r9
cmovb r8, rdi
test r8, r8
jmp 0x18000cbe4
movzx eax, word [rcx]
cmp word [rdx], ax
jne 0x18000cbd5
add rdx, 2
add rcx, 2
dec r8
jmp 0x18000cbe4
mov r8d, 1
cmp word [rdx], ax
cmovb r8d, r13d
jmp 0x18000cbe9
jne 0x18000cbc0
mov r8d, r12d
movsxd rax, r8d
test r8d, r8d
jne 0x18000cc04
cmp rdi, r9
jae 0x18000cbfb
mov eax, r13d
jmp 0x18000cc04
mov eax, r12d
cmp rdi, r9
setne al
test eax, eax
jns 0x18000cc3d
lea rax, [rsp + 0x70]
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x50]
mov rcx, r15
call fcn.18000e080
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
mov r8, rbx
lea rdx, [rsp + 0x58]
mov rcx, r15
call fcn.18000e120
mov rbx, qword [rsp + 0x58]
lea rcx, [rbx + 0x40]
lea rax, [rbp - 0x70]
cmp rcx, rax
je 0x18000cc59
mov r9, r13
xor r8d, r8d
lea rdx, [rbp - 0x70]
call fcn.180008820
lea r14, [r14 + rsi*2]
add r14, 2
cmp word [r14], 0
jne 0x18000c950
mov ebx, r12d
cmp qword [r15 + 8], rbx
seta bl
cmp qword [rbp - 0x58], 8
jb 0x18000cc86
mov rcx, qword [rbp - 0x70]
call fcn.18001af28
mov qword [rbp - 0x58], 7
mov qword [rbp - 0x60], r12
mov word [rbp - 0x70], r12w
cmp qword [rbp - 0x78], 8
jb 0x18000cca8
mov rcx, qword [rsp + 0x70]
call fcn.18001af28
mov eax, ebx
jmp 0x18000ccae
xor eax, eax
mov rcx, qword [rbp + 0xffb0]
xor rcx, rsp
call fcn.18001a000
mov rbx, qword [rsp + 0x10110]
add rsp, 0x100c0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret