Function at 0x18002a470
Capabilities:
Read .ini file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x18013c030]
xor rax, rsp
mov qword [rbp - 8], rax
xor ebx, ebx
mov dword [rbp - 0x20], 5
mov edx, ebx
mov dword [rbp - 0x1c], 0xcfcdc4bf
mov dword [rbp - 0x18], 0xe08c6cc3
mov r8b, 0x8c
mov r9b, 0xe0
nop dword [rax]
nop word [rax + rax]
mov ecx, edx
inc edx
movzx eax, byte [rbp + rcx - 0x1c]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx - 0x1c], al
mov eax, dword [rbp - 0x20]
cmp edx, eax
jae 0x18002a4e6
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
jmp 0x18002a4c0
mov rdi, qword [0x18013d928]
mov byte [rbp + rax - 0x1c], bl
lea rcx, [rdi + 0x4450]
call fcn.1800867a0
mov ecx, eax
test eax, eax
je 0x18002a521
lea rax, [rdi + 0x4440]
cmp ecx, 0xf
jle 0x18002a517
mov rcx, rax
call fcn.180086790
mov rcx, rax
call fcn.1800867d0
jmp 0x18002a528
lea rax, str.null
lea rdx, [rbp - 0x1c]
mov rcx, rax
call fcn.1800866a0
test al, al
je 0x18002a9b1
mov dword [rbp - 0x20], 9
mov r8b, 0x8c
mov dword [rbp - 0x1c], 0xcfcdc4bf
mov r9b, 0xe0
mov dword [rbp - 0x18], 0xada9bac3
mov edx, ebx
mov dword [rbp - 0x14], 0xe08c6cbd
mov ecx, edx
inc edx
movzx eax, byte [rbp + rcx - 0x1c]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx - 0x1c], al
mov eax, dword [rbp - 0x20]
cmp edx, eax
jae 0x18002a586
movzx r9d, byte [rbp - 0x11]
movzx r8d, byte [rbp - 0x12]
jmp 0x18002a560
movdqa xmm0, xmmword [0x180128da0]
mov r8b, 0x8c
mov byte [rbp + rax - 0x1c], bl
mov r9b, 0xe0
movdqu xmmword [rbp - 0x4c], xmm0
mov dword [rbp - 0x50], 0x11
mov edx, ebx
mov dword [rbp - 0x3c], 0xe08c6cc5
nop dword [rax]
mov ecx, edx
inc edx
movzx eax, byte [rbp + rcx - 0x4c]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx - 0x4c], al
mov eax, dword [rbp - 0x50]
cmp edx, eax
jae 0x18002a5d6
movzx r9d, byte [rbp - 0x39]
movzx r8d, byte [rbp - 0x3a]
jmp 0x18002a5b0
mov rcx, qword [0x18013d930]
lea r9, [rbp - 0x4c]
xor r8d, r8d
mov byte [rbp + rax - 0x4c], bl
lea rdx, [rbp - 0x1c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edi, 6
mov dword [rbp - 0x5c], 0xcfcdc4bf
test eax, eax
mov dword [rbp - 0x58], 0x8c6cbbc3
mov eax, edi
mov r9b, 0xe0
setne byte [0x18013d577]
mov dword [rbp - 0x60], eax
xor ecx, ecx
mov byte [rbp - 0x54], r9b
mov word [rbp - 0x53], cx
mov r8b, 0x8c
mov byte [rbp - 0x51], cl
mov edx, ebx
nop dword [rax + rax]
mov ecx, edx
inc edx
movzx eax, byte [rbp + rcx - 0x5c]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx - 0x5c], al
mov eax, dword [rbp - 0x60]
cmp edx, eax
jae 0x18002a656
movzx r9d, byte [rbp - 0x54]
movzx r8d, byte [rbp - 0x55]
jmp 0x18002a630
movdqa xmm0, xmmword [0x180128da0]
mov r8b, 0x8c
mov byte [rbp + rax - 0x5c], bl
mov r9b, 0xe0
movdqu xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x38], 0x11
mov edx, ebx
mov dword [rbp - 0x24], 0xe08c6cc5
nop dword [rax]
mov ecx, edx
inc edx
movzx eax, byte [rbp + rcx - 0x34]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx - 0x34], al
mov eax, dword [rbp - 0x38]
cmp edx, eax
jae 0x18002a6a6
movzx r9d, byte [rbp - 0x21]
movzx r8d, byte [rbp - 0x22]
jmp 0x18002a680
mov rcx, qword [0x18013d930]
lea r9, [rbp - 0x34]
xor r8d, r8d
mov byte [rbp + rax - 0x34], bl
lea rdx, [rbp - 0x5c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov r9b, 0xe0
mov dword [rbp - 0x1c], 0xcfcdc4bf
test eax, eax
mov dword [rbp - 0x18], 0x8c6ca9c3
mov eax, edi
mov r8b, 0x8c
setne byte [0x18013d57e]
mov dword [rbp - 0x20], eax
xor ecx, ecx
mov byte [rbp - 0x14], r9b
mov word [rbp - 0x13], cx
mov edx, ebx
mov byte [rbp - 0x11], cl
nop dword [rax]
nop word [rax + rax]
mov ecx, edx
inc edx
movzx eax, byte [rbp + rcx - 0x1c]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx - 0x1c], al
mov eax, dword [rbp - 0x20]
cmp edx, eax
jae 0x18002a726
movzx r9d, byte [rbp - 0x14]
movzx r8d, byte [rbp - 0x15]
jmp 0x18002a700
movdqa xmm0, xmmword [0x180128da0]
mov r8b, 0x8c
mov byte [rbp + rax - 0x1c], bl
mov r9b, 0xe0
movdqu xmmword [rbp - 0x4c], xmm0
mov dword [rbp - 0x50], 0x11
mov edx, ebx
mov dword [rbp - 0x3c], 0xe08c6cc5
nop dword [rax]
mov ecx, edx
inc edx
movzx eax, byte [rbp + rcx - 0x4c]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx - 0x4c], al
mov eax, dword [rbp - 0x50]
cmp edx, eax
jae 0x18002a776
movzx r9d, byte [rbp - 0x39]
movzx r8d, byte [rbp - 0x3a]
jmp 0x18002a750
mov rcx, qword [0x18013d930]
lea r9, [rbp - 0x4c]
xor r8d, r8d
mov byte [rbp + rax - 0x4c], bl
lea rdx, [rbp - 0x1c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov r9b, 0xe0
mov dword [rbp - 0x60], edi
test eax, eax
mov dword [rbp - 0x5c], 0xcfcdc4bf
mov dword [rbp - 0x58], 0x8c6cbec3
mov r8b, 0x8c
setne byte [0x18013d57c]
mov byte [rbp - 0x54], r9b
xor eax, eax
mov edx, ebx
mov word [rbp - 0x53], ax
mov byte [rbp - 0x51], al
mov ecx, edx
inc edx
movzx eax, byte [rbp + rcx - 0x5c]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx - 0x5c], al
mov edi, dword [rbp - 0x60]
cmp edx, edi
jae 0x18002a7e7
movzx r9d, byte [rbp - 0x54]
movzx r8d, byte [rbp - 0x55]
jmp 0x18002a7c1
movdqa xmm0, xmmword [0x180128da0]
mov r8b, 0x8c
mov byte [rbp + rdi - 0x5c], bl
mov r9b, 0xe0
movdqu xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x38], 0x11
mov edx, ebx
mov dword [rbp - 0x24], 0xe08c6cc5
nop
mov ecx, edx
inc edx
movzx eax, byte [rbp + rcx - 0x34]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx - 0x34], al
mov eax, dword [rbp - 0x38]
cmp edx, eax
jae 0x18002a836
movzx r9d, byte [rbp - 0x21]
movzx r8d, byte [rbp - 0x22]
jmp 0x18002a810
mov rcx, qword [0x18013d930]
lea r9, [rbp - 0x34]
xor r8d, r8d
mov byte [rbp + rax - 0x34], bl
lea rdx, [rbp - 0x5c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov r9b, 0xe0
mov dword [rbp - 0x1c], 0xcfcdc4bf
test eax, eax
mov dword [rbp - 0x18], 0xadbaa9c3
mov eax, 0xe
mov r8b, 0x8c
setne byte [0x18013d57d]
mov dword [rbp - 0x20], eax
xor ecx, ecx
mov dword [rbp - 0x14], 0xdecdcbbd
mov dword [rbp - 0x10], 0x8c6cc9c8
mov edx, ebx
mov byte [rbp - 0xc], r9b
mov word [rbp - 0xb], cx
mov byte [rbp - 9], cl
test eax, eax
je 0x18002a8c6
nop dword [rax + rax]
mov ecx, edx
inc edx
movzx eax, byte [rbp + rcx - 0x1c]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx - 0x1c], al
mov eax, dword [rbp - 0x20]
cmp edx, eax
jae 0x18002a8c6
movzx r9d, byte [rbp - 0xc]
movzx r8d, byte [rbp - 0xd]
jmp 0x18002a8a0
movdqa xmm0, xmmword [0x180128da0]
mov dl, 0x8c
mov byte [rbp + rax - 0x1c], bl
mov r8b, 0xe0
movdqu xmmword [rbp - 0x4c], xmm0
mov dword [rbp - 0x50], 0x11
mov dword [rbp - 0x3c], 0xe08c6cc5
nop word [rax + rax]
movzx eax, byte [rbp + rbx - 0x4c]
sub al, r8b
xor al, dl
mov byte [rbp + rbx - 0x4c], al
inc ebx
mov eax, dword [rbp - 0x50]
cmp ebx, eax
jae 0x18002a912
movzx r8d, byte [rbp - 0x39]
movzx edx, byte [rbp - 0x3a]
jmp 0x18002a8f0
mov rcx, qword [0x18013d930]
lea r9, [rbp - 0x4c]
xor r8d, r8d
mov byte [rbp + rax - 0x4c], 0
lea rdx, [rbp - 0x1c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov rdx, qword [0x18013dc40]
xorps xmm0, xmm0
cmp rdx, qword [0x18013dc48]
mov eax, eax
cvtsi2ss xmm0, rax
lea rax, [0x180029c20]
mov qword [rbp - 0x20], rax
movss dword [0x18013d584], xmm0
je 0x18002a969
mov qword [rdx], rax
add qword [0x18013dc40], 8
jmp 0x18002a979
lea r8, [rbp - 0x20]
lea rcx, [0x18013dc38]
call fcn.180002720
mov rdx, qword [0x18013dd90]
lea rax, [0x180029af0]
cmp rdx, qword [0x18013dd98]
mov qword [rbp - 0x20], rax
je 0x18002a9a1
mov qword [rdx], rax
add qword [0x18013dd90], 8
jmp 0x18002a9b1
lea r8, [rbp - 0x20]
lea rcx, [0x18013dd88]
call fcn.180002720
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.180118810
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret