Function at 0x180040a60
Capabilities:
Read .ini file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x180146030]
xor rax, rsp
mov qword [rbp - 0x10], rax
xor ebx, ebx
mov dword [rbp - 0x20], 5
mov edx, ebx
mov dword [rbp - 0x1c], 0x18031b30
mov dword [rbp - 0x18], 0xc238fa1f
mov r8b, 0x38
mov r9b, 0xc2
nop
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 0x180040ac9
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
jmp 0x180040aa0
mov rdi, qword [0x180147960]
mov byte [rbp + rax - 0x1c], bl
lea rcx, [rdi + 0x42e8]
call fcn.18008eb70
mov ecx, eax
test eax, eax
je 0x180040b04
lea rax, [rdi + 0x42d8]
cmp ecx, 0xf
jle 0x180040afa
mov rcx, rax
call fcn.18008eb60
mov rcx, rax
call fcn.18008eba0
jmp 0x180040b0b
lea rax, str.null
lea rdx, [rbp - 0x1c]
mov rcx, rax
call fcn.18008ea70
test al, al
je 0x1800411bc
mov edi, 0xb
mov dword [rbp - 0x4c], 0x18031b30
mov eax, edi
mov r8b, 0x38
mov dword [rbp - 0x50], eax
mov r9b, 0xc2
mov dword [rbp - 0x48], 0x17191d1f
mov edx, ebx
mov dword [rbp - 0x44], 0xfa2b191c
mov dword [rbp - 0x40], 0xc238
nop dword [rax]
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 0x180040b79
movzx r9d, byte [rbp - 0x3f]
movzx r8d, byte [rbp - 0x40]
jmp 0x180040b50
mov byte [rbp + rax - 0x4c], bl
mov r8b, 0x38
mov dword [rbp - 0x20], 5
mov r9b, 0xc2
mov dword [rbp - 0x1c], 0x18031b30
mov edx, ebx
mov dword [rbp - 0x18], 0xc238fa1f
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 0x180040bc9
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
jmp 0x180040ba0
movdqa xmm0, xmmword [0x180132670]
mov r8b, 0x38
mov byte [rbp + rax - 0x1c], bl
mov r9b, 0xc2
movdqu xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x38], 0x11
mov edx, ebx
mov dword [rbp - 0x24], 0xc238fa13
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 0x180040c19
movzx r9d, byte [rbp - 0x21]
movzx r8d, byte [rbp - 0x22]
jmp 0x180040bf0
lea r9, [rbp - 0x34]
mov byte [rbp + rax - 0x34], bl
xor r8d, r8d
lea rdx, [rbp - 0x4c]
lea rcx, [rbp - 0x1c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 0x50], 9
mov r8b, 0x38
test eax, eax
mov dword [rbp - 0x4c], 0x18031b30
mov dword [rbp - 0x48], 0x1b101f1f
mov r9b, 0xc2
setne byte [0x18014764f]
mov dword [rbp - 0x44], 0xc238fa2b
mov edx, ebx
nop
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 0x180040c89
movzx r9d, byte [rbp - 0x41]
movzx r8d, byte [rbp - 0x42]
jmp 0x180040c60
mov byte [rbp + rax - 0x4c], bl
mov r8b, 0x38
mov dword [rbp - 0x20], 5
mov r9b, 0xc2
mov dword [rbp - 0x1c], 0x18031b30
mov edx, ebx
mov dword [rbp - 0x18], 0xc238fa1f
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 0x180040cd9
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
jmp 0x180040cb0
movdqa xmm0, xmmword [0x180132670]
mov r8b, 0x38
mov byte [rbp + rax - 0x1c], bl
mov r9b, 0xc2
movdqu xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x38], 0x11
mov edx, ebx
mov dword [rbp - 0x24], 0xc238fa13
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 0x180040d29
movzx r9d, byte [rbp - 0x21]
movzx r8d, byte [rbp - 0x22]
jmp 0x180040d00
lea r9, [rbp - 0x34]
mov byte [rbp + rax - 0x34], bl
xor r8d, r8d
lea rdx, [rbp - 0x4c]
lea rcx, [rbp - 0x1c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 0x4c], 0x18031b30
mov r8b, 0x38
test eax, eax
mov dword [rbp - 0x48], 0x17191d1f
mov eax, edi
mov r9b, 0xc2
setne byte [0x180147647]
mov dword [rbp - 0x50], eax
mov dword [rbp - 0x44], 0xfa3f191c
mov edx, ebx
mov dword [rbp - 0x40], 0xc238
nop dword [rax]
nop dword [rax + rax]
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 0x180040da9
movzx r9d, byte [rbp - 0x3f]
movzx r8d, byte [rbp - 0x40]
jmp 0x180040d80
mov byte [rbp + rax - 0x4c], bl
mov r8b, 0x38
mov dword [rbp - 0x20], 5
mov r9b, 0xc2
mov dword [rbp - 0x1c], 0x18031b30
mov edx, ebx
mov dword [rbp - 0x18], 0xc238fa1f
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 0x180040df9
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
jmp 0x180040dd0
movdqa xmm0, xmmword [0x180132670]
mov r8b, 0x38
mov byte [rbp + rax - 0x1c], bl
mov r9b, 0xc2
movdqu xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x38], 0x11
mov edx, ebx
mov dword [rbp - 0x24], 0xc238fa13
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 0x180040e49
movzx r9d, byte [rbp - 0x21]
movzx r8d, byte [rbp - 0x22]
jmp 0x180040e20
lea r9, [rbp - 0x34]
mov byte [rbp + rax - 0x34], bl
xor r8d, r8d
lea rdx, [rbp - 0x4c]
lea rcx, [rbp - 0x1c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 0x50], edi
mov r8b, 0x38
test eax, eax
mov dword [rbp - 0x4c], 0x18031b30
mov dword [rbp - 0x48], 0x17191d1f
mov r9b, 0xc2
setne byte [0x18014764d]
mov dword [rbp - 0x44], 0xfa2c191c
mov dword [rbp - 0x40], 0xc238
mov edx, ebx
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 edi, dword [rbp - 0x50]
cmp edx, edi
jae 0x180040ebb
movzx r9d, byte [rbp - 0x3f]
movzx r8d, byte [rbp - 0x40]
jmp 0x180040e92
mov byte [rbp + rdi - 0x4c], bl
mov r8b, 0x38
mov dword [rbp - 0x20], 5
mov r9b, 0xc2
mov dword [rbp - 0x1c], 0x18031b30
mov edx, ebx
mov dword [rbp - 0x18], 0xc238fa1f
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 0x180040f09
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
jmp 0x180040ee0
movdqa xmm0, xmmword [0x180132670]
mov r8b, 0x38
mov byte [rbp + rax - 0x1c], bl
mov r9b, 0xc2
movdqu xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x38], 0x11
mov edx, ebx
mov dword [rbp - 0x24], 0xc238fa13
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 0x180040f59
movzx r9d, byte [rbp - 0x21]
movzx r8d, byte [rbp - 0x22]
jmp 0x180040f30
lea r9, [rbp - 0x34]
mov byte [rbp + rax - 0x34], bl
xor r8d, r8d
lea rdx, [rbp - 0x4c]
lea rcx, [rbp - 0x1c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [rbp - 0x4c], 0x18031b30
mov r8b, 0x38
test eax, eax
mov dword [rbp - 0x48], 0x17191d1f
mov eax, 0xc
mov r9b, 0xc2
setne byte [0x18014764c]
mov dword [rbp - 0x50], eax
mov dword [rbp - 0x44], 0xcc2c191c
mov edx, ebx
mov dword [rbp - 0x40], 0xc238fa
test eax, eax
je 0x180040fd9
nop dword [rax + rax]
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 0x180040fd9
movzx r9d, byte [rbp - 0x3e]
movzx r8d, byte [rbp - 0x3f]
jmp 0x180040fb0
mov byte [rbp + rax - 0x4c], bl
mov r8b, 0x38
mov dword [rbp - 0x20], 5
mov r9b, 0xc2
mov dword [rbp - 0x1c], 0x18031b30
mov edx, ebx
mov dword [rbp - 0x18], 0xc238fa1f
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 0x180041029
movzx r9d, byte [rbp - 0x15]
movzx r8d, byte [rbp - 0x16]
jmp 0x180041000
movdqa xmm0, xmmword [0x180132670]
mov dl, 0x38
mov byte [rbp + rax - 0x1c], bl
mov r8b, 0xc2
movdqu xmmword [rbp - 0x34], xmm0
mov dword [rbp - 0x38], 0x11
mov dword [rbp - 0x24], 0xc238fa13
nop dword [rax]
mov eax, ebx
lea rcx, [rbp - 0x34]
add rcx, rax
inc ebx
movzx eax, byte [rcx]
sub al, r8b
xor al, dl
mov byte [rcx], al
mov eax, dword [rbp - 0x38]
cmp ebx, eax
jae 0x180041077
movzx r8d, byte [rbp - 0x21]
movzx edx, byte [rbp - 0x22]
jmp 0x180041050
lea r9, [rbp - 0x34]
mov byte [rbp + rax - 0x34], 0
xor r8d, r8d
lea rdx, [rbp - 0x4c]
lea rcx, [rbp - 0x1c]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov rdx, qword [0x180147cd0]
test eax, eax
lea rax, [0x180040190]
setne byte [0x18014764e]
mov qword [rbp - 0x20], rax
cmp rdx, qword [0x180147cd8]
je 0x1800410c2
mov qword [rdx], rax
add qword [0x180147cd0], 8
jmp 0x1800410d2
lea r8, [rbp - 0x20]
lea rcx, [0x180147cc8]
call fcn.180002710
mov rdx, qword [0x180147ca0]
lea rax, [0x18003f7f0]
cmp rdx, qword [0x180147ca8]
mov qword [rbp - 0x20], rax
je 0x1800410fa
mov qword [rdx], rax
add qword [0x180147ca0], 8
jmp 0x18004110a
lea r8, [rbp - 0x20]
lea rcx, [0x180147c98]
call fcn.180002710
mov rdx, qword [0x180147ba8]
lea rax, [0x18003f8d0]
cmp rdx, qword [0x180147bb0]
mov qword [rbp - 0x20], rax
je 0x180041132
mov qword [rdx], rax
add qword [0x180147ba8], 8
jmp 0x180041142
lea r8, [rbp - 0x20]
lea rcx, [0x180147ba0]
call fcn.180002710
mov rdx, qword [0x180147e80]
lea rax, [0x18003f9b0]
cmp rdx, qword [0x180147e88]
mov qword [rbp - 0x20], rax
je 0x18004116a
mov qword [rdx], rax
add qword [0x180147e80], 8
jmp 0x18004117a
lea r8, [rbp - 0x20]
lea rcx, [0x180147e78]
call fcn.180002710
mov rdx, qword [0x180147e20]
lea rax, [0x180040000]
cmp rdx, qword [0x180147e28]
mov qword [rbp - 0x20], rax
je 0x1800411a2
mov qword [rdx], rax
add qword [0x180147e20], 8
jmp 0x1800411b2
lea r8, [rbp - 0x20]
lea rcx, [0x180147e18]
call fcn.180002710
mov dword [0x180147974], 1
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.180122d60
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret