Function at 0x180060b30
Capabilities:
Encode data using xor
Read .ini file

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rax, qword [0x1800cb040]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov r14, r9
mov rbx, r8
mov rdi, rdx
mov rsi, rcx
mov qword [rbp - 0x80], rcx
mov qword [rbp - 0x78], rdx
mov qword [rbp - 0x70], rbx
mov r8, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x180060b76
mov r8, qword [rcx]
mov dword [rsp + 0x30], 0xb0b7afb7
mov word [rsp + 0x34], 0x100
xor ecx, ecx
nop word [rax + rax]
lea eax, [rcx - 7]
xor byte [rsp + rcx + 0x30], al
inc rcx
cmp rcx, 4
jb 0x180060b90
mov byte [rsp + 0x35], 0
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x180060bb2
mov rdx, qword [rbx]
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x180060bbf
mov rcx, qword [rdi]
mov qword [rsp + 0x28], r8
mov dword [rsp + 0x20], 0x64
lea r9, [rbp - 0x50]
lea r8, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [rsp + 0x38], 0xb0b7afb7
mov word [rsp + 0x3c], 0x100
xor ecx, ecx
nop dword [rax]
lea eax, [rcx - 7]
xor byte [rsp + rcx + 0x38], al
inc rcx
cmp rcx, 4
jb 0x180060bf0
mov byte [rsp + 0x3d], 0
lea rax, [rbp - 0x50]
lea r8, [rsp + 0x38]
sub r8, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x180060c24
inc rax
test ecx, ecx
jne 0x180060c11
test edx, edx
je 0x180060d2d
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x68], xmm0
mov qword [rbp - 0x58], rax
movups xmmword [rsp + 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x60], xmm1
lea rax, [rbp - 0x50]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x180060c52
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x50]
call fcn.180004a40
nop
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x68]
call fcn.1800607a0
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x180060cb7
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180060cb2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180060e36
call fcn.18006e22c
mov rax, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x68]
sub rax, rcx
sar rax, 2
cmp rax, 4
jne 0x180060e42
mov eax, dword [rcx]
mov dword [r14], eax
mov eax, dword [rcx + 4]
mov dword [r14 + 4], eax
mov eax, dword [rcx + 8]
mov dword [r14 + 8], eax
mov eax, dword [rcx + 0xc]
mov dword [r14 + 0xc], eax
test rcx, rcx
je 0x180060d2d
mov rax, qword [rbp - 0x58]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180060d27
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180060e3c
call fcn.18006e22c
nop
mov rdx, qword [rsi + 0x18]
cmp rdx, 0xf
jbe 0x180060d67
mov rcx, qword [rsi]
inc rdx
cmp rdx, 0x1000
jb 0x180060d62
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180060f14
mov rcx, r8
call fcn.18006e22c
mov qword [rsi + 0x10], 0
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x180060db4
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x180060daf
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180060e2a
mov rcx, r8
call fcn.18006e22c
mov qword [rdi + 0x10], 0
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x180060dfd
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x180060df8
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180060e30
mov rcx, r8
call fcn.18006e22c
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.18006e1d0
add rsp, 0x130
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.18007902c
nop
call fcn.18007902c
nop
call fcn.18007902c
nop
call fcn.18007902c
nop
mov dword [rsp + 0x30], 0x88969a
mov byte [rsp + 0x34], 1
lea rcx, [rsp + 0x30]
call fcn.18005ae20
mov rcx, rax
call fcn.1800816e0
mov dword [rsp + 0x30], 0x100a1d9
lea rcx, [rsp + 0x30]
call fcn.18005ae50
mov rdx, rax
lea rcx, [0x1800f2080]
call fcn.1800045a0
mov r8, rax
mov dword [rsp + 0x40], 0xdca9a8bc
mov dword [rsp + 0x44], 0x35ceded0
mov word [rsp + 0x48], 0x100
lea rcx, [rsp + 0x40]
call fcn.18005ae80
mov rdx, rax
mov rcx, r8
call fcn.1800045a0
mov r8, rax
movdqa xmm0, xmmword [0x1800b8af0]
movdqu xmmword [rsp + 0x50], xmm0
movdqa xmm1, xmmword [0x1800b8ac0]
movdqu xmmword [rsp + 0x60], xmm1
mov dword [rsp + 0x70], 0x72746a74
mov dword [rsp + 0x74], 0x536b7078
mov word [rsp + 0x78], 0xf
mov byte [rsp + 0x7a], 1
lea rcx, [rsp + 0x50]
call fcn.180060f20
mov rdx, rax
mov rcx, r8
call fcn.1800045a0
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
xor ecx, ecx
call fcn.180081404
nop
call fcn.18007902c
int3