Function at 0x180063810
Capabilities:
Read .ini file

Disassembly:
push rdi
push r13
push r14
sub rsp, 0x70
mov r14, rcx
mov rax, r8
xor ecx, ecx
mov qword [rsp + 0x28], rax
mov r13d, r9d
mov rdi, rdx
test r8, r8
je 0x180063836
mov word [r8], cx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x48], r15
test rdi, rdi
je 0x180063a99
mov r12d, ecx
mov dword [rsp + 0x20], ecx
mov ecx, 0x402
mov r15, rax
mov ebx, 0x200
call fcn.1800f25f0
mov r9, qword [r14 + 8]
mov r8d, ebx
mov rdx, rax
mov rcx, rdi
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionW]
mov esi, eax
add eax, 2
cmp eax, ebx
jb 0x1800638e9
mov r12, 0xffffffffffffffff
nop word [rax + rax]
mov rcx, rbp
add ebx, 0x200
call fcn.1800f2580
lea ecx, [rbx + 1]
mov eax, 2
mul rcx
cmovo rax, r12
mov rcx, rax
call fcn.1800f25f0
mov r9, qword [r14 + 8]
mov r8d, ebx
mov rdx, rax
mov rcx, rdi
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionW]
mov esi, eax
add eax, 2
cmp eax, ebx
jae 0x1800638a0
mov r12d, dword [rsp + 0x20]
mov rcx, rbp
call fcn.1800f2580
add esi, 2
je 0x180063a99
mov rcx, 0xffffffffffffffff
lea edx, [rsi + 1]
mov eax, 2
mul rdx
cmovo rax, rcx
mov rcx, rax
call fcn.1800f25f0
mov rbx, rax
mov qword [rsp + 0x20], rax
xor eax, eax
mov r8d, esi
mov rdx, rbx
mov rcx, rdi
mov word [rbx], ax
mov r9, qword [r14 + 8]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionW]
mov rdi, 0xffffffffffffffff
mov rsi, rbx
mov rbp, rdi
inc rbp
cmp word [rbx + rbp*2], 0
jne 0x180063945
test ebp, ebp
je 0x180063a79
test rsi, rsi
je 0x180063a74
mov edx, 0x3d
mov rcx, rsi
call fcn.1800f4998
mov rbx, rax
test rax, rax
je 0x180063a51
cmp rax, rsi
je 0x180063a51
mov rcx, rdi
inc rcx
cmp word [rsi + rcx*2], 0
jne 0x180063985
inc rcx
mov eax, 2
mul rcx
cmovo rax, rdi
mov rcx, rax
call fcn.1800f25f0
xor edi, edi
mov r14, rax
mov r8d, edi
mov r9d, edi
cmp rsi, rbx
jae 0x1800639de
mov r10, rsi
mov rdx, rax
sub r10, rax
nop
movzx eax, word [r10 + rdx]
inc r8d
mov word [rdx], ax
lea rdx, [rdx + 2]
movsxd rax, r8d
inc r9
lea rcx, [rsi + rax*2]
cmp rcx, rbx
jb 0x1800639c0
mov rcx, r14
mov word [r14 + r9*2], di
call fcn.180063c90
mov rbx, 0xffffffffffffffff
inc rbx
cmp word [r14 + rbx*2], di
jne 0x1800639f2
test r15, r15
je 0x180063a3c
cmp r13d, 1
jbe 0x180063a12
lea eax, [r13 - 1]
cmp ebx, eax
cmovae ebx, eax
jmp 0x180063a14
mov ebx, edi
mov r8d, ebx
mov rdx, r14
mov rcx, r15
mov edi, ebx
call fcn.18011d3d8
xor eax, eax
mov word [r15 + rdi*2], ax
lea eax, [rbx + 1]
lea r15, [r15 + rax*2]
mov eax, 0xffffffff
sub eax, ebx
add r13d, eax
mov rcx, r14
call fcn.1800f2580
inc r12d
mov rdi, 0xffffffffffffffff
add r12d, ebx
lea eax, [rbp + 1]
lea rsi, [rsi + rax*2]
mov rax, rdi
nop dword [rax + rax]
inc rax
cmp word [rsi + rax*2], 0
jne 0x180063a60
mov ebp, eax
test eax, eax
jne 0x180063957
mov rbx, qword [rsp + 0x20]
mov rcx, rbx
call fcn.1800f2580
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x180063a94
mov ecx, r12d
xor edx, edx
mov word [rax + rcx*2], dx
mov eax, r12d
jmp 0x180063a9b
xor eax, eax
mov r15, qword [rsp + 0x48]
mov r12, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
add rsp, 0x70
pop r14
pop r13
pop rdi
ret