Function at 0x1800f8460
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 [0x180141030]
xor rax, rsp
mov qword [rbp + 0x158], rax
mov eax, 0xa
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0x93932b40
mov dword [rbp + 0x148], 0x8988333b
mov dword [rbp + 0x14c], 0x53f79841
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8525
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 0x1800f8525
movzx r9d, byte [rbp + 0x150]
movzx r8d, byte [rbp + 0x14f]
jmp 0x1800f84f0
mov byte [rbp + rax + 0x144], r14b
mov ebx, 8
mov eax, ebx
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x34249f42
mov dword [rsp + 0x48], 0x34295f3e
mov dword [rsp + 0x4c], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8589
movzx r9d, byte [rsp + 0x4e]
movzx r8d, byte [rsp + 0x4d]
jmp 0x1800f8560
mov byte [rsp + rax + 0x44], r14b
mov edi, 0x14
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x18012d9b0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0xdee1de21
mov dword [rsp + 0x38], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f85e9
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f85c0
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 [0x180142b0c]
mov esi, 0xc
mov eax, esi
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0x4984a28c
mov dword [rbp + 0x148], 0x898a8e85
mov dword [rbp + 0x14c], 0x913d5643
mov dword [rbp + 0x150], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8685
movzx r9d, byte [rbp + 0x152]
movzx r8d, byte [rbp + 0x151]
jmp 0x1800f8650
mov byte [rbp + rax + 0x144], r14b
mov eax, ebx
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x34249f42
mov dword [rsp + 0x48], 0x34295f3e
mov dword [rsp + 0x4c], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f86e9
movzx r9d, byte [rsp + 0x4e]
movzx r8d, byte [rsp + 0x4d]
jmp 0x1800f86c0
mov byte [rsp + rax + 0x44], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x18012d9b0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0xdee1de21
mov dword [rsp + 0x38], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8749
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f8720
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 [0x180142b0f]
mov eax, 4
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0xdce1d6b8
mov dword [rsp + 0x48], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
mov edx, r14d
test eax, eax
je 0x1800f87c9
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 0x1800f87c9
movzx r9d, byte [rsp + 0x4a]
movzx r8d, byte [rsp + 0x49]
jmp 0x1800f87a0
mov byte [rsp + rax + 0x44], r14b
mov eax, ebx
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0x34249f42
mov dword [rbp + 0x148], 0x34295f3e
mov dword [rbp + 0x14c], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8835
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800f8800
mov byte [rbp + rax + 0x144], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x18012d9b0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0xdee1de21
mov dword [rsp + 0x38], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8899
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f8870
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 [0x180142b14]
mov eax, esi
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x4984a28c
mov dword [rsp + 0x48], 0x2c279524
mov dword [rsp + 0x4c], 0x34298c41
mov dword [rsp + 0x50], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8919
movzx r9d, byte [rsp + 0x52]
movzx r8d, byte [rsp + 0x51]
jmp 0x1800f88f0
mov byte [rsp + rax + 0x44], r14b
mov eax, ebx
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0x34249f42
mov dword [rbp + 0x148], 0x34295f3e
mov dword [rbp + 0x14c], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8985
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800f8950
mov byte [rbp + rax + 0x144], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x18012d9b0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0xdee1de21
mov dword [rsp + 0x38], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f89e9
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f89c0
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 [0x180142afb]
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x44], 0x4984a28c
mov dword [rsp + 0x48], 0x2c279524
mov dword [rsp + 0x4c], 0x90369d26
mov dword [rsp + 0x50], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8a69
movzx r9d, byte [rsp + 0x52]
movzx r8d, byte [rsp + 0x51]
jmp 0x1800f8a40
mov byte [rsp + rsi + 0x44], r14b
mov eax, ebx
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0x34249f42
mov dword [rbp + 0x148], 0x34295f3e
mov dword [rbp + 0x14c], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8ad5
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800f8aa0
mov byte [rbp + rax + 0x144], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x18012d9b0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0xdee1de21
mov dword [rsp + 0x38], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8b39
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f8b10
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 [0x180142b0e]
mov eax, 0x10
mov dword [rsp + 0x40], eax
movdqa xmm0, xmmword [0x18012dda0]
movdqu xmmword [rsp + 0x44], xmm0
mov dword [rsp + 0x54], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
mov edx, r14d
test eax, eax
je 0x1800f8bb9
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 0x1800f8bb9
movzx r9d, byte [rsp + 0x56]
movzx r8d, byte [rsp + 0x55]
jmp 0x1800f8b90
mov byte [rsp + rax + 0x44], r14b
mov dword [rbp + 0x140], ebx
mov dword [rbp + 0x144], 0x34249f42
mov dword [rbp + 0x148], 0x34295f3e
mov dword [rbp + 0x14c], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8c25
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800f8bf0
mov byte [rbp + rbx + 0x144], r14b
mov dword [rsp + 0x20], edi
movdqa xmm0, xmmword [0x18012d9b0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0xdee1de21
mov dword [rsp + 0x38], 0xa453f7
mov r8b, 0x53
mov r9b, 0xa4
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 0x1800f8c89
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800f8c60
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 [0x180142b0d]
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x140], xmm1
mov qword [rbp + 0x150], r14
lea rcx, [rbp + 0x140]
call fcn.1800f9ac0
mov rbx, r14
mov rsi, qword [rbp + 0x148]
mov rdi, qword [rbp + 0x140]
sub rsi, rdi
sar rsi, 3
test rsi, rsi
je 0x1800f8e46
mov rdx, qword [rdi + rbx*8]
lea rcx, [rbp + 0x50]
call fcn.1800de440
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.1800cbea0
lea rcx, [rbp + 8]
cmp rcx, rax
je 0x1800f8dc6
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 [0x180142f48]
cmp rax, qword [0x180142f50]
je 0x1800f8dfa
lea rdx, [rsp + 0x60]
mov rcx, rax
call fcn.18000d6c0
add qword [0x180142f48], 0xe8
jmp 0x1800f8e0f
lea r8, [rsp + 0x60]
mov rdx, rax
lea rcx, [0x180142f40]
call fcn.18000d400
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 0x1800f8cf0
lea rax, [0x1800f7580]
mov qword [rsp + 0x40], rax
mov rdx, qword [0x180142c78]
cmp rdx, qword [0x180142c80]
je 0x1800f8e6f
mov qword [rdx], rax
add qword [0x180142c78], 8
jmp 0x1800f8e80
lea r8, [rsp + 0x40]
lea rcx, [0x180142c70]
call fcn.180002720
lea rax, [0x1800f6e10]
mov qword [rsp + 0x40], rax
mov rdx, qword [0x180142cf0]
cmp rdx, qword [0x180142cf8]
je 0x1800f8eb3
mov qword [rdx], rax
mov rdx, qword [0x180142cf0]
add rdx, 8
mov qword [0x180142cf0], rdx
jmp 0x1800f8ecb
lea r8, [rsp + 0x40]
lea rcx, [0x180142ce8]
call fcn.180002720
mov rdx, qword [0x180142cf0]
lea rax, [0x1800f6ad0]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x180142cf8]
je 0x1800f8ef7
mov qword [rdx], rax
mov rdx, qword [0x180142cf0]
add rdx, 8
mov qword [0x180142cf0], rdx
jmp 0x1800f8f0f
lea r8, [rsp + 0x40]
lea rcx, [0x180142ce8]
call fcn.180002720
mov rdx, qword [0x180142cf0]
lea rax, [0x1800f5ef0]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x180142cf8]
je 0x1800f8f3b
mov qword [rdx], rax
mov rdx, qword [0x180142cf0]
add rdx, 8
mov qword [0x180142cf0], rdx
jmp 0x1800f8f53
lea r8, [rsp + 0x40]
lea rcx, [0x180142ce8]
call fcn.180002720
mov rdx, qword [0x180142cf0]
lea rax, [0x1800f6120]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x180142cf8]
je 0x1800f8f7f
mov qword [rdx], rax
mov rdx, qword [0x180142cf0]
add rdx, 8
mov qword [0x180142cf0], rdx
jmp 0x1800f8f97
lea r8, [rsp + 0x40]
lea rcx, [0x180142ce8]
call fcn.180002720
mov rdx, qword [0x180142cf0]
lea rax, [0x1800f6460]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x180142cf8]
je 0x1800f8fc3
mov qword [rdx], rax
mov rdx, qword [0x180142cf0]
add rdx, 8
mov qword [0x180142cf0], rdx
jmp 0x1800f8fdb
lea r8, [rsp + 0x40]
lea rcx, [0x180142ce8]
call fcn.180002720
mov rdx, qword [0x180142cf0]
lea rax, [0x1800f7010]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x180142cf8]
je 0x1800f8ffd
mov qword [rdx], rax
add qword [0x180142cf0], 8
jmp 0x1800f900f
lea r8, [rsp + 0x40]
lea rcx, [0x180142ce8]
call fcn.180002720
nop
test rdi, rdi
je 0x1800f9052
mov rdx, qword [rbp + 0x150]
sub rdx, rdi
and rdx, 0xfffffffffffffff8
mov rax, rdi
cmp rdx, 0x1000
jb 0x1800f904a
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800f904a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.18011e500
mov rcx, qword [rbp + 0x158]
xor rcx, rsp
call fcn.18011e040
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