Function at 0x1800f2c40
Capabilities:
Read .ini file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
push rbp
lea rbp, [rsp - 0x160]
sub rsp, 0x260
mov rax, qword [0x18013c030]
xor rax, rsp
mov qword [rbp + 0x158], rax
mov eax, 0xa
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0x5b5b836a
mov dword [rbp + 0x148], 0x61627b73
mov dword [rbp + 0x14c], 0xeb75269
mov r8b, 0xe
mov r9b, 0xa9
mov byte [rbp + 0x150], r9b
xor ecx, ecx
mov word [rbp + 0x151], cx
mov byte [rbp + 0x153], cl
xor r14d, r14d
mov edx, r14d
test eax, eax
je 0x1800f2d05
nop dword [rax]
nop dword [rax + rax]
mov ecx, edx
movzx eax, byte [rbp + rcx + 0x144]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx + 0x144], al
inc edx
mov eax, dword [rbp + 0x140]
cmp edx, eax
jae 0x1800f2d05
movzx r9d, byte [rbp + 0x150]
movzx r8d, byte [rbp + 0x14f]
jmp 0x1800f2cd0
mov byte [rbp + rax + 0x144], r14b
mov ebx, 8
mov eax, ebx
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x76864f6c
mov dword [rsp + 0x48], 0x76818f70
mov dword [rsp + 0x4c], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop dword [rax]
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x44]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x44], al
inc edx
mov eax, dword [rsp + 0x40]
cmp edx, eax
jae 0x1800f2d69
movzx r9d, byte [rsp + 0x4e]
movzx r8d, byte [rsp + 0x4d]
jmp 0x1800f2d40
mov byte [rsp + rax + 0x44], r14b
mov edi, 0x14
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x180128ab0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x100910c9
mov dword [rsp + 0x38], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x24]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x24], al
inc edx
mov eax, dword [rsp + 0x20]
cmp edx, eax
jae 0x1800f2dc9
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f2da0
mov byte [rsp + rax + 0x24], r14b
lea r9, [rsp + 0x24]
xor r8d, r8d
lea rdx, [rbp + 0x144]
lea rcx, [rsp + 0x44]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
setne byte [0x18013dace]
mov esi, 0xc
mov eax, esi
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0xa1664c5e
mov dword [rbp + 0x148], 0x61646065
mov dword [rbp + 0x14c], 0x596d986b
mov dword [rbp + 0x150], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop
mov ecx, edx
movzx eax, byte [rbp + rcx + 0x144]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx + 0x144], al
inc edx
mov eax, dword [rbp + 0x140]
cmp edx, eax
jae 0x1800f2e65
movzx r9d, byte [rbp + 0x152]
movzx r8d, byte [rbp + 0x151]
jmp 0x1800f2e30
mov byte [rbp + rax + 0x144], r14b
mov eax, ebx
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x76864f6c
mov dword [rsp + 0x48], 0x76818f70
mov dword [rsp + 0x4c], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop dword [rax]
nop dword [rax + rax]
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x44]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x44], al
inc edx
mov eax, dword [rsp + 0x40]
cmp edx, eax
jae 0x1800f2ec9
movzx r9d, byte [rsp + 0x4e]
movzx r8d, byte [rsp + 0x4d]
jmp 0x1800f2ea0
mov byte [rsp + rax + 0x44], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x180128ab0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x100910c9
mov dword [rsp + 0x38], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop dword [rax + rax]
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x24]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x24], al
inc edx
mov eax, dword [rsp + 0x20]
cmp edx, eax
jae 0x1800f2f29
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f2f00
mov byte [rsp + rax + 0x24], r14b
lea r9, [rsp + 0x24]
xor r8d, r8d
lea rdx, [rbp + 0x144]
lea rcx, [rsp + 0x44]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
setne byte [0x18013dad8]
mov eax, 4
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0xe0918f2
mov dword [rsp + 0x48], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
test eax, eax
je 0x1800f2fa9
nop word [rax + rax]
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x44]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x44], al
inc edx
mov eax, dword [rsp + 0x40]
cmp edx, eax
jae 0x1800f2fa9
movzx r9d, byte [rsp + 0x4a]
movzx r8d, byte [rsp + 0x49]
jmp 0x1800f2f80
mov byte [rsp + rax + 0x44], r14b
mov eax, ebx
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0x76864f6c
mov dword [rbp + 0x148], 0x76818f70
mov dword [rbp + 0x14c], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop dword [rax]
mov ecx, edx
movzx eax, byte [rbp + rcx + 0x144]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx + 0x144], al
inc edx
mov eax, dword [rbp + 0x140]
cmp edx, eax
jae 0x1800f3015
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800f2fe0
mov byte [rbp + rax + 0x144], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x180128ab0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x100910c9
mov dword [rsp + 0x38], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop word [rax + rax]
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x24]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x24], al
inc edx
mov eax, dword [rsp + 0x20]
cmp edx, eax
jae 0x1800f3079
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f3050
mov byte [rsp + rax + 0x24], r14b
lea r9, [rsp + 0x24]
xor r8d, r8d
lea rdx, [rsp + 0x44]
lea rcx, [rbp + 0x144]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
setne byte [0x18013dada]
mov eax, esi
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0xa1664c5e
mov dword [rsp + 0x48], 0x7e875586
mov dword [rsp + 0x4c], 0x76815e69
mov dword [rsp + 0x50], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x44]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x44], al
inc edx
mov eax, dword [rsp + 0x40]
cmp edx, eax
jae 0x1800f30f9
movzx r9d, byte [rsp + 0x52]
movzx r8d, byte [rsp + 0x51]
jmp 0x1800f30d0
mov byte [rsp + rax + 0x44], r14b
mov eax, ebx
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0x76864f6c
mov dword [rbp + 0x148], 0x76818f70
mov dword [rbp + 0x14c], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop dword [rax]
mov ecx, edx
movzx eax, byte [rbp + rcx + 0x144]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx + 0x144], al
inc edx
mov eax, dword [rbp + 0x140]
cmp edx, eax
jae 0x1800f3165
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800f3130
mov byte [rbp + rax + 0x144], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x180128ab0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x100910c9
mov dword [rsp + 0x38], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop word [rax + rax]
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x24]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x24], al
inc edx
mov eax, dword [rsp + 0x20]
cmp edx, eax
jae 0x1800f31c9
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f31a0
mov byte [rsp + rax + 0x24], r14b
lea r9, [rsp + 0x24]
xor r8d, r8d
lea rdx, [rsp + 0x44]
lea rcx, [rbp + 0x144]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
setne byte [0x18013dacd]
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x44], 0xa1664c5e
mov dword [rsp + 0x48], 0x7e875586
mov dword [rsp + 0x4c], 0x5a784d88
mov dword [rsp + 0x50], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x44]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x44], al
inc edx
mov esi, dword [rsp + 0x40]
cmp edx, esi
jae 0x1800f3249
movzx r9d, byte [rsp + 0x52]
movzx r8d, byte [rsp + 0x51]
jmp 0x1800f3220
mov byte [rsp + rsi + 0x44], r14b
mov eax, ebx
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0x76864f6c
mov dword [rbp + 0x148], 0x76818f70
mov dword [rbp + 0x14c], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop dword [rax]
mov ecx, edx
movzx eax, byte [rbp + rcx + 0x144]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx + 0x144], al
inc edx
mov eax, dword [rbp + 0x140]
cmp edx, eax
jae 0x1800f32b5
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800f3280
mov byte [rbp + rax + 0x144], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x180128ab0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x100910c9
mov dword [rsp + 0x38], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop word [rax + rax]
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x24]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x24], al
inc edx
mov eax, dword [rsp + 0x20]
cmp edx, eax
jae 0x1800f3319
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f32f0
mov byte [rsp + rax + 0x24], r14b
lea r9, [rsp + 0x24]
xor r8d, r8d
lea rdx, [rsp + 0x44]
lea rcx, [rbp + 0x144]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
setne byte [0x18013dad9]
mov eax, 0x10
mov dword [rsp + 0x40], eax
movdqa xmm0, xmmword [0x180128a20]
movdqu xmmword [rsp + 0x44], xmm0
mov dword [rsp + 0x54], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
test eax, eax
je 0x1800f3399
nop dword [rax]
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x44]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x44], al
inc edx
mov eax, dword [rsp + 0x40]
cmp edx, eax
jae 0x1800f3399
movzx r9d, byte [rsp + 0x56]
movzx r8d, byte [rsp + 0x55]
jmp 0x1800f3370
mov byte [rsp + rax + 0x44], r14b
mov dword [rbp + 0x140], ebx
mov dword [rbp + 0x144], 0x76864f6c
mov dword [rbp + 0x148], 0x76818f70
mov dword [rbp + 0x14c], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop dword [rax + rax]
mov ecx, edx
movzx eax, byte [rbp + rcx + 0x144]
sub al, r9b
xor al, r8b
mov byte [rbp + rcx + 0x144], al
inc edx
mov ebx, dword [rbp + 0x140]
cmp edx, ebx
jae 0x1800f3405
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800f33d0
mov byte [rbp + rbx + 0x144], r14b
mov dword [rsp + 0x20], edi
movdqa xmm0, xmmword [0x180128ab0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x100910c9
mov dword [rsp + 0x38], 0xa90eb7
mov r8b, 0xe
mov r9b, 0xa9
mov edx, r14d
nop dword [rax + rax]
mov ecx, edx
movzx eax, byte [rsp + rcx + 0x24]
sub al, r9b
xor al, r8b
mov byte [rsp + rcx + 0x24], al
inc edx
mov edi, dword [rsp + 0x20]
cmp edx, edi
jae 0x1800f3469
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f3440
mov byte [rsp + rdi + 0x24], r14b
lea r9, [rsp + 0x24]
xor r8d, r8d
lea rdx, [rsp + 0x44]
lea rcx, [rbp + 0x144]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
setne byte [0x18013dacf]
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x140], xmm1
mov qword [rbp + 0x150], r14
lea rcx, [rbp + 0x140]
call fcn.1800f42a0
mov rbx, r14
mov rsi, qword [rbp + 0x148]
mov rdi, qword [rbp + 0x140]
sub rsi, rdi
sar rsi, 3
test rsi, rsi
je 0x1800f3626
mov rdx, qword [rdi + rbx*8]
lea rcx, [rbp + 0x50]
call fcn.1800d8eb0
nop
xorps xmm0, xmm0
movaps xmmword [rsp + 0x60], xmm0
xorps xmm1, xmm1
movaps xmmword [rsp + 0x70], xmm1
movaps xmmword [rbp - 0x80], xmm0
movaps xmmword [rbp - 0x70], xmm1
movaps xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], 0
mov qword [rbp - 0x30], 0
mov qword [rbp - 0x28], 0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
movups xmmword [rbp + 8], xmm0
mov qword [rbp + 0x18], r14
mov qword [rbp + 0x20], 0xf
mov byte [rbp + 8], 0
mov qword [rbp + 0x28], r14
mov qword [rbp + 0x30], r14
mov qword [rbp + 0x38], r14
mov word [rbp + 0x40], 0
mov dword [rbp + 0x44], r14d
mov rax, qword [rbp + 0xa0]
mov qword [rbp - 0x50], rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp], rax
lea rdx, [rbp + 0xf8]
lea rcx, [rsp + 0x20]
call fcn.1800c6910
lea rcx, [rbp + 8]
cmp rcx, rax
je 0x1800f35a6
movups xmm0, xmmword [rax]
movups xmmword [rbp + 8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x18], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rsp + 0x20]
call fcn.180007620
mov rax, qword [0x18013df10]
cmp rax, qword [0x18013df18]
je 0x1800f35da
lea rdx, [rsp + 0x60]
mov rcx, rax
call fcn.18000d570
add qword [0x18013df10], 0xe8
jmp 0x1800f35ef
lea r8, [rsp + 0x60]
mov rdx, rax
lea rcx, [0x18013df08]
call fcn.18000d2b0
nop
lea rcx, [rbp + 8]
call fcn.180007620
lea rcx, [rbp - 0x20]
call fcn.180007620
nop
lea rcx, [rbp + 0xf8]
call fcn.180007620
lea rcx, [rbp + 0xd0]
call fcn.180007620
inc rbx
cmp rbx, rsi
jb 0x1800f34d0
lea rax, [0x1800f1d60]
mov qword [rsp + 0x40], rax
mov rdx, qword [0x18013dc40]
cmp rdx, qword [0x18013dc48]
je 0x1800f364f
mov qword [rdx], rax
add qword [0x18013dc40], 8
jmp 0x1800f3660
lea r8, [rsp + 0x40]
lea rcx, [0x18013dc38]
call fcn.180002720
lea rax, [0x1800f15f0]
mov qword [rsp + 0x40], rax
mov rdx, qword [0x18013dcb8]
cmp rdx, qword [0x18013dcc0]
je 0x1800f3693
mov qword [rdx], rax
mov rdx, qword [0x18013dcb8]
add rdx, 8
mov qword [0x18013dcb8], rdx
jmp 0x1800f36ab
lea r8, [rsp + 0x40]
lea rcx, [0x18013dcb0]
call fcn.180002720
mov rdx, qword [0x18013dcb8]
lea rax, [0x1800f12b0]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x18013dcc0]
je 0x1800f36d7
mov qword [rdx], rax
mov rdx, qword [0x18013dcb8]
add rdx, 8
mov qword [0x18013dcb8], rdx
jmp 0x1800f36ef
lea r8, [rsp + 0x40]
lea rcx, [0x18013dcb0]
call fcn.180002720
mov rdx, qword [0x18013dcb8]
lea rax, [0x1800f06d0]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x18013dcc0]
je 0x1800f371b
mov qword [rdx], rax
mov rdx, qword [0x18013dcb8]
add rdx, 8
mov qword [0x18013dcb8], rdx
jmp 0x1800f3733
lea r8, [rsp + 0x40]
lea rcx, [0x18013dcb0]
call fcn.180002720
mov rdx, qword [0x18013dcb8]
lea rax, [0x1800f0900]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x18013dcc0]
je 0x1800f375f
mov qword [rdx], rax
mov rdx, qword [0x18013dcb8]
add rdx, 8
mov qword [0x18013dcb8], rdx
jmp 0x1800f3777
lea r8, [rsp + 0x40]
lea rcx, [0x18013dcb0]
call fcn.180002720
mov rdx, qword [0x18013dcb8]
lea rax, [0x1800f0c40]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x18013dcc0]
je 0x1800f37a3
mov qword [rdx], rax
mov rdx, qword [0x18013dcb8]
add rdx, 8
mov qword [0x18013dcb8], rdx
jmp 0x1800f37bb
lea r8, [rsp + 0x40]
lea rcx, [0x18013dcb0]
call fcn.180002720
mov rdx, qword [0x18013dcb8]
lea rax, [0x1800f17f0]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x18013dcc0]
je 0x1800f37dd
mov qword [rdx], rax
add qword [0x18013dcb8], 8
jmp 0x1800f37ef
lea r8, [rsp + 0x40]
lea rcx, [0x18013dcb0]
call fcn.180002720
nop
test rdi, rdi
je 0x1800f3832
mov rdx, qword [rbp + 0x150]
sub rdx, rdi
and rdx, 0xfffffffffffffff8
mov rax, rdi
cmp rdx, 0x1000
jb 0x1800f382a
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800f382a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.180118cd0
mov rcx, qword [rbp + 0x158]
xor rcx, rsp
call fcn.180118810
lea r11, [rsp + 0x260]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret