Function at 0x1800fd100
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 [0x180146030]
xor rax, rsp
mov qword [rbp + 0x158], rax
mov eax, 0xa
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0x7474cce1
mov dword [rbp + 0x148], 0x6a69d4dc
mov dword [rbp + 0x14c], 0x331879e2
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd1c5
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 0x1800fd1c5
movzx r9d, byte [rbp + 0x150]
movzx r8d, byte [rbp + 0x14f]
jmp 0x1800fd190
mov byte [rbp + rax + 0x144], r14b
mov ebx, 8
mov eax, ebx
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0xd5c580e3
mov dword [rsp + 0x48], 0xd5cac0df
mov dword [rsp + 0x4c], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd229
movzx r9d, byte [rsp + 0x4e]
movzx r8d, byte [rsp + 0x4d]
jmp 0x1800fd200
mov byte [rsp + rax + 0x44], r14b
mov edi, 0x14
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x1801333c0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x3f423f02
mov dword [rsp + 0x38], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd289
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800fd260
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 [0x180147b5b]
mov esi, 0xc
mov eax, esi
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0xaa65836d
mov dword [rbp + 0x148], 0x6a6b6f66
mov dword [rbp + 0x14c], 0x72deb7e4
mov dword [rbp + 0x150], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd325
movzx r9d, byte [rbp + 0x152]
movzx r8d, byte [rbp + 0x151]
jmp 0x1800fd2f0
mov byte [rbp + rax + 0x144], r14b
mov eax, ebx
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0xd5c580e3
mov dword [rsp + 0x48], 0xd5cac0df
mov dword [rsp + 0x4c], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd389
movzx r9d, byte [rsp + 0x4e]
movzx r8d, byte [rsp + 0x4d]
jmp 0x1800fd360
mov byte [rsp + rax + 0x44], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x1801333c0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x3f423f02
mov dword [rsp + 0x38], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd3e9
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800fd3c0
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 [0x180147b66]
mov eax, 4
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0x3d423759
mov dword [rsp + 0x48], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
mov edx, r14d
test eax, eax
je 0x1800fd469
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 0x1800fd469
movzx r9d, byte [rsp + 0x4a]
movzx r8d, byte [rsp + 0x49]
jmp 0x1800fd440
mov byte [rsp + rax + 0x44], r14b
mov eax, ebx
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0xd5c580e3
mov dword [rbp + 0x148], 0xd5cac0df
mov dword [rbp + 0x14c], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd4d5
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800fd4a0
mov byte [rbp + rax + 0x144], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x1801333c0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x3f423f02
mov dword [rsp + 0x38], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd539
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800fd510
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 [0x180147b67]
mov eax, esi
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x44], 0xaa65836d
mov dword [rsp + 0x48], 0xcdc876c5
mov dword [rsp + 0x4c], 0xd5ca6de2
mov dword [rsp + 0x50], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd5b9
movzx r9d, byte [rsp + 0x52]
movzx r8d, byte [rsp + 0x51]
jmp 0x1800fd590
mov byte [rsp + rax + 0x44], r14b
mov eax, ebx
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0xd5c580e3
mov dword [rbp + 0x148], 0xd5cac0df
mov dword [rbp + 0x14c], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd625
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800fd5f0
mov byte [rbp + rax + 0x144], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x1801333c0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x3f423f02
mov dword [rsp + 0x38], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd689
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800fd660
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 [0x180147b5a]
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x44], 0xaa65836d
mov dword [rsp + 0x48], 0xcdc876c5
mov dword [rsp + 0x4c], 0x71d77ec7
mov dword [rsp + 0x50], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd709
movzx r9d, byte [rsp + 0x52]
movzx r8d, byte [rsp + 0x51]
jmp 0x1800fd6e0
mov byte [rsp + rsi + 0x44], r14b
mov eax, ebx
mov dword [rbp + 0x140], eax
mov dword [rbp + 0x144], 0xd5c580e3
mov dword [rbp + 0x148], 0xd5cac0df
mov dword [rbp + 0x14c], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd775
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800fd740
mov byte [rbp + rax + 0x144], r14b
mov eax, edi
mov dword [rsp + 0x20], eax
movdqa xmm0, xmmword [0x1801333c0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x3f423f02
mov dword [rsp + 0x38], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd7d9
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800fd7b0
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 [0x180147b65]
mov eax, 0x10
mov dword [rsp + 0x40], eax
movdqa xmm0, xmmword [0x180132cd0]
movdqu xmmword [rsp + 0x44], xmm0
mov dword [rsp + 0x54], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
mov edx, r14d
test eax, eax
je 0x1800fd859
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 0x1800fd859
movzx r9d, byte [rsp + 0x56]
movzx r8d, byte [rsp + 0x55]
jmp 0x1800fd830
mov byte [rsp + rax + 0x44], r14b
mov dword [rbp + 0x140], ebx
mov dword [rbp + 0x144], 0xd5c580e3
mov dword [rbp + 0x148], 0xd5cac0df
mov dword [rbp + 0x14c], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd8c5
movzx r9d, byte [rbp + 0x14e]
movzx r8d, byte [rbp + 0x14d]
jmp 0x1800fd890
mov byte [rbp + rbx + 0x144], r14b
mov dword [rsp + 0x20], edi
movdqa xmm0, xmmword [0x1801333c0]
movdqu xmmword [rsp + 0x24], xmm0
mov dword [rsp + 0x34], 0x3f423f02
mov dword [rsp + 0x38], 0xe53318
mov r8b, 0x33
mov r9b, 0xe5
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 0x1800fd929
movzx r9d, byte [rsp + 0x3a]
movzx r8d, byte [rsp + 0x39]
jmp 0x1800fd900
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 [0x180147b64]
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x140], xmm1
mov qword [rbp + 0x150], r14
lea rcx, [rbp + 0x140]
call fcn.1800fe760
mov rbx, r14
mov rsi, qword [rbp + 0x148]
mov rdi, qword [rbp + 0x140]
sub rsi, rdi
sar rsi, 3
test rsi, rsi
je 0x1800fdae6
mov rdx, qword [rdi + rbx*8]
lea rcx, [rbp + 0x50]
call fcn.1800e2c50
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.1800d0890
lea rcx, [rbp + 8]
cmp rcx, rax
je 0x1800fda66
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.180008ea0
mov rax, qword [0x180147fa0]
cmp rax, qword [0x180147fa8]
je 0x1800fda9a
lea rdx, [rsp + 0x60]
mov rcx, rax
call fcn.18000edf0
add qword [0x180147fa0], 0xe8
jmp 0x1800fdaaf
lea r8, [rsp + 0x60]
mov rdx, rax
lea rcx, [0x180147f98]
call fcn.18000eb30
nop
lea rcx, [rbp + 8]
call fcn.180008ea0
lea rcx, [rbp - 0x20]
call fcn.180008ea0
nop
lea rcx, [rbp + 0xf8]
call fcn.180008ea0
lea rcx, [rbp + 0xd0]
call fcn.180008ea0
inc rbx
cmp rbx, rsi
jb 0x1800fd990
lea rax, [0x1800fc220]
mov qword [rsp + 0x40], rax
mov rdx, qword [0x180147cd0]
cmp rdx, qword [0x180147cd8]
je 0x1800fdb0f
mov qword [rdx], rax
add qword [0x180147cd0], 8
jmp 0x1800fdb20
lea r8, [rsp + 0x40]
lea rcx, [0x180147cc8]
call fcn.180002710
lea rax, [0x1800fbab0]
mov qword [rsp + 0x40], rax
mov rdx, qword [0x180147d48]
cmp rdx, qword [0x180147d50]
je 0x1800fdb53
mov qword [rdx], rax
mov rdx, qword [0x180147d48]
add rdx, 8
mov qword [0x180147d48], rdx
jmp 0x1800fdb6b
lea r8, [rsp + 0x40]
lea rcx, [0x180147d40]
call fcn.180002710
mov rdx, qword [0x180147d48]
lea rax, [0x1800fb770]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x180147d50]
je 0x1800fdb97
mov qword [rdx], rax
mov rdx, qword [0x180147d48]
add rdx, 8
mov qword [0x180147d48], rdx
jmp 0x1800fdbaf
lea r8, [rsp + 0x40]
lea rcx, [0x180147d40]
call fcn.180002710
mov rdx, qword [0x180147d48]
lea rax, [0x1800fa9f0]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x180147d50]
je 0x1800fdbdb
mov qword [rdx], rax
mov rdx, qword [0x180147d48]
add rdx, 8
mov qword [0x180147d48], rdx
jmp 0x1800fdbf3
lea r8, [rsp + 0x40]
lea rcx, [0x180147d40]
call fcn.180002710
mov rdx, qword [0x180147d48]
lea rax, [0x1800fac20]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x180147d50]
je 0x1800fdc1f
mov qword [rdx], rax
mov rdx, qword [0x180147d48]
add rdx, 8
mov qword [0x180147d48], rdx
jmp 0x1800fdc37
lea r8, [rsp + 0x40]
lea rcx, [0x180147d40]
call fcn.180002710
mov rdx, qword [0x180147d48]
lea rax, [0x1800fb100]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x180147d50]
je 0x1800fdc63
mov qword [rdx], rax
mov rdx, qword [0x180147d48]
add rdx, 8
mov qword [0x180147d48], rdx
jmp 0x1800fdc7b
lea r8, [rsp + 0x40]
lea rcx, [0x180147d40]
call fcn.180002710
mov rdx, qword [0x180147d48]
lea rax, [0x1800fbcb0]
mov qword [rsp + 0x40], rax
cmp rdx, qword [0x180147d50]
je 0x1800fdc9d
mov qword [rdx], rax
add qword [0x180147d48], 8
jmp 0x1800fdcaf
lea r8, [rsp + 0x40]
lea rcx, [0x180147d40]
call fcn.180002710
nop
test rdi, rdi
je 0x1800fdcf2
mov rdx, qword [rbp + 0x150]
sub rdx, rdi
and rdx, 0xfffffffffffffff8
mov rax, rdi
cmp rdx, 0x1000
jb 0x1800fdcea
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800fdcea
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.180123220
mov rcx, qword [rbp + 0x158]
xor rcx, rsp
call fcn.180122d60
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