Function at 0x1800295a0
Capabilities:
Read .ini file

Disassembly:
mov r11, rsp
push rbp
push rsi
push r14
lea rbp, [r11 - 0x28]
sub rsp, 0x110
mov rax, qword [0x1800c6d00]
xor rax, rsp
mov qword [rbp - 0x10], rax
cmp dword [0x1800cc9bc], 0
mov r14d, r8d
mov esi, edx
je 0x1800298a4
mov qword [r11 + 0x10], rbx
lea r8, str._04X
mov r9d, ecx
mov qword [r11 + 0x18], rdi
lea rcx, [rsp + 0x38]
mov qword [r11 - 0x20], r12
mov edx, 0xa
call fcn.1800045b0
lea r12, [0x1800cc150]
mov qword [rsp + 0x28], r12
lea r9, [rsp + 0x50]
lea r8, [0x1800a5b48]
mov dword [rsp + 0x20], 0x13
lea rdx, [rsp + 0x38]
lea rcx, str.SuppressMessageBox
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
movzx ecx, word [rsp + 0x50]
lea rax, [rsp + 0x50]
cmp cx, 0x20
jne 0x18002964e
nop dword [rax]
movzx ecx, word [rax + 2]
add rax, 2
cmp cx, 0x20
je 0x180029640
lea rdi, [0x1800aadc4]
cmp cx, 0x30
jne 0x18002966c
movzx ecx, word [rax + 2]
call fcn.18007b074
mov rdx, rdi
cmp eax, 0x58
je 0x180029673
lea rdx, [0x1800a7370]
lea r8, [rsp + 0x30]
mov qword [rsp + 0x100], r15
lea rcx, [rsp + 0x50]
call fcn.18000e550
cmp eax, 1
mov ebx, 0xffffffff
cmove ebx, dword [rsp + 0x30]
cmp ebx, 0xffffffff
jne 0x180029891
mov r15d, 0x58
mov qword [rsp + 0x28], r12
lea r9, [rsp + 0x78]
mov word [rsp + 0x3e], r15w
lea r8, [0x1800a5b48]
mov dword [rsp + 0x20], 0x13
lea rdx, [rsp + 0x38]
lea rcx, str.SuppressMessageBox
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
movzx ecx, word [rsp + 0x78]
lea rax, [rsp + 0x78]
cmp cx, 0x20
jne 0x1800296fe
nop word [rax + rax]
movzx ecx, word [rax + 2]
add rax, 2
cmp cx, 0x20
je 0x1800296f0
cmp cx, 0x30
jne 0x180029715
movzx ecx, word [rax + 2]
call fcn.18007b074
mov rdx, rdi
cmp eax, r15d
je 0x18002971c
lea rdx, [0x1800a7370]
lea r8, [rsp + 0x30]
lea rcx, [rsp + 0x78]
call fcn.18000e550
cmp eax, 1
cmove ebx, dword [rsp + 0x30]
cmp ebx, 0xffffffff
jne 0x180029891
mov qword [rsp + 0x28], r12
lea r9, [rbp - 0x60]
lea r8, [0x1800a5b48]
mov dword [rsp + 0x20], 0x13
lea rdx, [rsp + 0x38]
mov word [rsp + 0x3c], r15w
lea rcx, str.SuppressMessageBox
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
movzx ecx, word [rbp - 0x60]
lea rax, [rbp - 0x60]
cmp cx, 0x20
jne 0x18002978e
nop word [rax + rax]
movzx ecx, word [rax + 2]
add rax, 2
cmp cx, 0x20
je 0x180029780
cmp cx, 0x30
jne 0x1800297a5
movzx ecx, word [rax + 2]
call fcn.18007b074
mov rdx, rdi
cmp eax, r15d
je 0x1800297ac
lea rdx, [0x1800a7370]
lea r8, [rsp + 0x30]
lea rcx, [rbp - 0x60]
call fcn.18000e550
cmp eax, 1
cmove ebx, dword [rsp + 0x30]
cmp ebx, 0xffffffff
jne 0x180029891
mov qword [rsp + 0x28], r12
lea r9, [rbp - 0x38]
lea r8, [0x1800a5b48]
mov dword [rsp + 0x20], 0x13
lea rdx, str.XXXX
lea rcx, str.SuppressMessageBox
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
movzx ecx, word [rbp - 0x38]
lea rax, [rbp - 0x38]
cmp cx, 0x20
jne 0x18002981e
nop word [rax + rax]
movzx ecx, word [rax + 2]
add rax, 2
cmp cx, 0x20
je 0x180029810
cmp cx, 0x30
jne 0x180029832
movzx ecx, word [rax + 2]
call fcn.18007b074
cmp eax, r15d
je 0x180029839
lea rdi, [0x1800a7370]
lea r8, [rsp + 0x30]
mov rdx, rdi
lea rcx, [rbp - 0x38]
call fcn.18000e550
cmp eax, 1
cmove ebx, dword [rsp + 0x30]
cmp ebx, 0xffffffff
jne 0x180029891
mov eax, esi
mov r15, qword [rsp + 0x100]
mov rdi, qword [rsp + 0x140]
mov rbx, qword [rsp + 0x138]
mov r12, qword [rsp + 0x108]
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.180032180
add rsp, 0x110
pop r14
pop rsi
pop rbp
ret
xor eax, eax
mov ecx, eax
test r14d, r14d
setle cl
inc ecx
test ebx, ecx
sete al
jmp 0x180029859
mov eax, esi
jmp 0x180029879