Function at 0x18004df60
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 [0x180146030]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov eax, 4
xor ebx, ebx
mov dword [rbp - 0x20], eax
mov r8b, 0x2d
mov dword [rbp - 0x1c], 0x231e1d4f
mov r9b, 0xdb
mov dword [rbp - 0x18], 0xdb2d08
mov edx, ebx
test eax, eax
je 0x18004dfd9
nop word [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x1c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x20]
cmp edx, eax
jae 0x18004dfd9
movzx r9d, byte [rbp - 0x16]
movzx r8d, byte [rbp - 0x17]
jmp 0x18004dfb0
mov rdi, qword [0x180147960]
mov byte [rbp + rax - 0x1c], bl
lea rcx, [rdi + 0x42e8]
call fcn.18008eb70
mov ecx, eax
test eax, eax
je 0x18004e014
lea rax, [rdi + 0x42d8]
cmp ecx, 0xf
jle 0x18004e00a
mov rcx, rax
call fcn.18008eb60
mov rcx, rax
call fcn.18008eba0
jmp 0x18004e01b
lea rax, str.null
lea rdx, [rbp - 0x1c]
mov rcx, rax
call fcn.18008ea70
test al, al
je 0x18004e467
mov dword [rbp - 0x20], 5
mov r8b, 0x2d
mov dword [rbp - 0x1c], 0x231e1d4f
mov r9b, 0xdb
mov dword [rbp - 0x18], 0xdb2d0857
mov edx, ebx
nop dword [rax]
mov eax, edx
lea rcx, [rbp - 0x1c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x20]
cmp edx, eax
jae 0x18004e079
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
jmp 0x18004e050
movdqa xmm0, xmmword [0x180132720]
mov r8b, 0x2d
mov byte [rbp + rax - 0x1c], bl
mov r9b, 0xdb
movdqu xmmword [rbp - 0x4c], xmm0
mov dword [rbp - 0x50], 0x11
mov edx, ebx
mov dword [rbp - 0x3c], 0xdb2d081f
mov eax, edx
lea rcx, [rbp - 0x4c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x50]
cmp edx, eax
jae 0x18004e0c9
movzx r9d, byte [rbp - 0x39]
movzx r8d, byte [rbp - 0x3a]
jmp 0x18004e0a0
mov rcx, qword [0x180147968]
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 dword [rbp - 0x60], 9
mov r8b, 0x2d
test eax, eax
mov dword [rbp - 0x5c], 0x231e1d4f
mov dword [rbp - 0x58], 0x1e1f1c57
mov r9b, 0xdb
setne byte [0x1801476cb]
mov dword [rbp - 0x54], 0xdb2d0821
mov edx, ebx
mov eax, edx
lea rcx, [rbp - 0x5c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x60]
cmp edx, eax
jae 0x18004e13b
movzx r9d, byte [rbp - 0x51]
movzx r8d, byte [rbp - 0x52]
jmp 0x18004e112
movdqa xmm0, xmmword [0x180132720]
mov r8b, 0x2d
mov byte [rbp + rax - 0x5c], bl
mov r9b, 0xdb
movdqu xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x38], 0x11
mov edx, ebx
mov dword [rbp - 0x24], 0xdb2d081f
mov eax, edx
lea rcx, [rbp - 0x34]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x38]
cmp edx, eax
jae 0x18004e18b
movzx r9d, byte [rbp - 0x21]
movzx r8d, byte [rbp - 0x22]
jmp 0x18004e162
mov rcx, qword [0x180147968]
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 dword [rbp - 0x20], 5
mov r8b, 0x2d
test eax, eax
mov dword [rbp - 0x1c], 0x231e1d4f
mov dword [rbp - 0x18], 0xdb2d0855
mov r9b, 0xdb
setne byte [0x1801476ca]
mov edx, ebx
nop dword [rax]
mov eax, edx
lea rcx, [rbp - 0x1c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x20]
cmp edx, eax
jae 0x18004e1f9
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
jmp 0x18004e1d0
movdqa xmm0, xmmword [0x180132720]
mov r8b, 0x2d
mov byte [rbp + rax - 0x1c], bl
mov r9b, 0xdb
movdqu xmmword [rbp - 0x4c], xmm0
mov dword [rbp - 0x50], 0x11
mov edx, ebx
mov dword [rbp - 0x3c], 0xdb2d081f
mov eax, edx
lea rcx, [rbp - 0x4c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x50]
cmp edx, eax
jae 0x18004e249
movzx r9d, byte [rbp - 0x39]
movzx r8d, byte [rbp - 0x3a]
jmp 0x18004e220
mov rcx, qword [0x180147968]
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 dword [rbp - 0x60], 5
mov r8b, 0x2d
test eax, eax
mov dword [rbp - 0x5c], 0x231e1d4f
mov dword [rbp - 0x58], 0xdb2d0843
mov r9b, 0xdb
setne byte [0x1801476c9]
mov edx, ebx
nop dword [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x5c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x60]
cmp edx, eax
jae 0x18004e2b9
movzx r9d, byte [rbp - 0x55]
movzx r8d, byte [rbp - 0x56]
jmp 0x18004e290
movdqa xmm0, xmmword [0x180132720]
mov r8b, 0x2d
mov byte [rbp + rax - 0x5c], bl
mov r9b, 0xdb
movdqu xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x38], 0x11
mov edx, ebx
mov dword [rbp - 0x24], 0xdb2d081f
mov eax, edx
lea rcx, [rbp - 0x34]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x38]
cmp edx, eax
jae 0x18004e309
movzx r9d, byte [rbp - 0x21]
movzx r8d, byte [rbp - 0x22]
jmp 0x18004e2e0
mov rcx, qword [0x180147968]
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 dword [rbp - 0x20], 5
mov r8b, 0x2d
test eax, eax
mov dword [rbp - 0x1c], 0x231e1d4f
mov dword [rbp - 0x18], 0xdb2d085a
mov r9b, 0xdb
setne byte [0x1801476c8]
mov edx, ebx
nop dword [rax + rax]
mov eax, edx
lea rcx, [rbp - 0x1c]
add rcx, rax
inc edx
movzx eax, byte [rcx]
sub al, r9b
xor al, r8b
mov byte [rcx], al
mov eax, dword [rbp - 0x20]
cmp edx, eax
jae 0x18004e379
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
jmp 0x18004e350
movdqa xmm0, xmmword [0x180132720]
mov dl, 0x2d
mov byte [rbp + rax - 0x1c], bl
mov r8b, 0xdb
movdqu xmmword [rbp - 0x4c], xmm0
mov dword [rbp - 0x50], 0x11
mov dword [rbp - 0x3c], 0xdb2d081f
nop dword [rax]
mov eax, ebx
lea rcx, [rbp - 0x4c]
add rcx, rax
inc ebx
movzx eax, byte [rcx]
sub al, r8b
xor al, dl
mov byte [rcx], al
mov eax, dword [rbp - 0x50]
cmp ebx, eax
jae 0x18004e3c7
movzx r8d, byte [rbp - 0x39]
movzx edx, byte [rbp - 0x3a]
jmp 0x18004e3a0
mov rcx, qword [0x180147968]
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 [0x180147cd0]
test eax, eax
lea rax, [0x18004d830]
mov dword [0x18014798c], 1
setne byte [0x1801476c3]
mov qword [rbp - 0x20], rax
cmp rdx, qword [0x180147cd8]
je 0x18004e41f
mov qword [rdx], rax
add qword [0x180147cd0], 8
jmp 0x18004e42f
lea r8, [rbp - 0x20]
lea rcx, [0x180147cc8]
call fcn.180002710
mov rdx, qword [0x180147e20]
lea rax, [0x18004d1a0]
cmp rdx, qword [0x180147e28]
mov qword [rbp - 0x20], rax
je 0x18004e457
mov qword [rdx], rax
add qword [0x180147e20], 8
jmp 0x18004e467
lea r8, [rbp - 0x20]
lea rcx, [0x180147e18]
call fcn.180002710
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.180122d60
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret