Function at 0x140009f30
Capabilities:
Check mutex on windows
Read .ini file

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x248]
sub rsp, 0x340
mov qword [rsp + 0x38], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
mov rax, qword [0x14003e050]
xor rax, rsp
mov qword [rbp + 0x210], rax
xor r14d, r14d
mov dword [rsp + 0x30], r14d
mov eax, dword [0x140040904]
test al, 1
jne 0x14000a08c
or eax, 1
mov dword [0x140040904], eax
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r14w
lea r8d, [r14 + 0x19]
lea rdx, str.RCImage_Update_Config_Ini
lea rcx, [rsp + 0x40]
call fcn.140002380
nop
mov qword [0x140040908], r14
mov word [0x140040910], r14w
cmp qword [rsp + 0x50], r14
je 0x140009ff0
lea r8, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae r8, qword [rsp + 0x40]
jmp 0x140009ff3
mov r8, r14
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x140040908], rax
test rax, rax
je 0x14000a029
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, byte [0x140040911]
mov edx, 1
cmp eax, 0xb7
cmove ecx, edx
mov byte [0x140040911], cl
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14000a06b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a066
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a568
call fcn.140018630
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r14w
lea rcx, [0x14002ba30]
call fcn.140018b48
nop
cmp qword [0x140040908], 0
je 0x14000a0a3
cmp byte [0x140040911], 0
jne 0x14000a526
lea rcx, [rbp - 0x20]
call fcn.140018150
nop
lea r8, str.temp.ini
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.1400085b0
nop
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x14000a102
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a0fd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a56e
call fcn.140018630
movdqa xmm0, xmmword [0x140035dc0]
movdqu xmmword [rbp - 0x10], xmm0
mov word [rbp - 0x20], r14w
lea rcx, [rsp + 0x60]
call fcn.140006e20
test al, al
je 0x14000a4d4
xor edx, edx
mov r8d, 0x20a
lea rcx, [rbp]
call fcn.14001a220
lea rax, [rsp + 0x60]
cmp qword [rsp + 0x78], 8
cmovae rax, qword [rsp + 0x60]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x104
lea r9, [rbp]
lea r8, [0x140034bec]
lea rdx, str.Version
lea rcx, str.Upgrade
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x60]
call fcn.140008a40
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x50], r14
mov edx, 7
mov qword [rsp + 0x58], rdx
mov word [rsp + 0x40], r14w
cmp word [rbp], 0
je 0x14000a483
lea rcx, [rbp - 0x80]
call fcn.140018210
mov rbx, rax
lea rax, [rbp]
mov rdx, 0xffffffffffffffff
nop
inc rdx
cmp word [rax + rdx*2], 0
jne 0x14000a1c0
mov rcx, qword [rbx + 0x10]
mov r8, qword [rbx + 0x18]
mov rax, r8
sub rax, rcx
cmp rdx, rax
ja 0x14000a209
lea rsi, [rcx + rdx]
mov qword [rbx + 0x10], rsi
mov rdi, rbx
cmp r8, 8
jb 0x14000a1f1
mov rdi, qword [rbx]
lea r8, [rdx + rdx]
lea rcx, [rdi + rcx*2]
lea rdx, [rbp]
call fcn.14001a3e0
mov word [rdi + rsi*2], r14w
jmp 0x14000a21d
mov qword [rsp + 0x20], rdx
lea r9, [rbp]
mov rcx, rbx
call fcn.1400032c0
mov rbx, rax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x30], xmm0
movups xmm7, xmmword [rbx]
movups xmmword [rbp - 0x40], xmm7
movups xmm6, xmmword [rbx + 0x10]
movdqu xmmword [rbp - 0x30], xmm6
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 7
mov word [rbx], r14w
mov ebx, 2
mov dword [rsp + 0x30], ebx
lea rcx, [rsp + 0x40]
call fcn.140002310
movups xmmword [rsp + 0x40], xmm7
movups xmmword [rsp + 0x50], xmm6
movdqa xmm0, xmmword [0x140035dc0]
movdqu xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x40], r14w
and ebx, 0xfffffffd
mov dword [rsp + 0x30], ebx
movdqu xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x40], r14w
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14000a2c5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a2c0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a574
call fcn.140018630
movdqa xmm0, xmmword [0x140035dc0]
movdqu xmmword [rbp - 0x70], xmm0
mov word [rbp - 0x80], r14w
cmp qword [rsp + 0x50], 0
je 0x14000a47e
lea rcx, [rsp + 0x40]
call fcn.140006f60
test al, al
je 0x14000a47e
lea rcx, [rbp - 0x80]
call fcn.140018150
nop
lea r8, str.config.ini
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.1400085b0
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14000a353
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a34e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a57a
call fcn.140018630
movdqa xmm0, xmmword [0x140035dc0]
movdqu xmmword [rbp - 0x70], xmm0
mov word [rbp - 0x80], r14w
lea r9, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
cmovae r9, qword [rbp - 0x60]
lea r8, [rbp]
lea rdx, str.Version
lea rcx, str.Upgrade
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x14000a3cc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a3c7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a580
call fcn.140018630
movdqa xmm0, xmmword [0x140035dc0]
movdqu xmmword [rbp - 0x50], xmm0
mov word [rbp - 0x60], r14w
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14000a420
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a41b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a586
call fcn.140018630
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r14w
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x14000a512
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a50d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a562
jmp 0x14000a50d
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14000a4c0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a4bb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a58c
call fcn.140018630
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r14w
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x14000a512
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a50d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a55c
call fcn.140018630
movdqa xmm0, xmmword [0x140035dc0]
mov word [rsp + 0x60], r14w
movdqu xmmword [rsp + 0x70], xmm0
mov rcx, qword [rbp + 0x210]
xor rcx, rsp
call fcn.1400185d0
lea r11, [rsp + 0x340]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop rbp
ret
call fcn.14001c854
int3
call fcn.14001c854
nop
call fcn.14001c854
nop
call fcn.14001c854
nop
call fcn.14001c854
nop
call fcn.14001c854
nop
call fcn.14001c854
nop
call fcn.14001c854
int3
call fcn.14001c854
int3