Function at 0x140009ca0
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 [0x1400408f4]
test al, 1
jne 0x140009dfc
or eax, 1
mov dword [0x1400408f4], 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.140002c20
nop
mov qword [0x1400408f8], r14
mov word [0x140040900], r14w
cmp qword [rsp + 0x50], r14
je 0x140009d60
lea r8, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae r8, qword [rsp + 0x40]
jmp 0x140009d63
mov r8, r14
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [0x1400408f8], rax
test rax, rax
je 0x140009d99
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, byte [0x140040901]
mov edx, 1
cmp eax, 0xb7
cmove ecx, edx
mov byte [0x140040901], cl
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x140009ddb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140009dd6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a2d8
call fcn.14001867c
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r14w
lea rcx, [0x14002b760]
call fcn.140018928
nop
cmp qword [0x1400408f8], 0
je 0x140009e13
cmp byte [0x140040901], 0
jne 0x14000a296
lea rcx, [rbp - 0x20]
call fcn.140017f30
nop
lea r8, str.temp.ini
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.140008320
nop
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x140009e72
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140009e6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a2de
call fcn.14001867c
movdqa xmm0, xmmword [0x140035d00]
movdqu xmmword [rbp - 0x10], xmm0
mov word [rbp - 0x20], r14w
lea rcx, [rsp + 0x60]
call fcn.140006ba0
test al, al
je 0x14000a244
xor edx, edx
mov r8d, 0x20a
lea rcx, [rbp]
call fcn.14001a000
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, [0x140034b7c]
lea rdx, str.Version
lea rcx, str.Upgrade
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0x60]
call fcn.1400087b0
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 0x14000a1f3
lea rcx, [rbp - 0x80]
call fcn.140017ff0
mov rbx, rax
lea rax, [rbp]
mov rdx, 0xffffffffffffffff
nop
inc rdx
cmp word [rax + rdx*2], 0
jne 0x140009f30
mov rcx, qword [rbx + 0x10]
mov r8, qword [rbx + 0x18]
mov rax, r8
sub rax, rcx
cmp rdx, rax
ja 0x140009f79
lea rsi, [rcx + rdx]
mov qword [rbx + 0x10], rsi
mov rdi, rbx
cmp r8, 8
jb 0x140009f61
mov rdi, qword [rbx]
lea r8, [rdx + rdx]
lea rcx, [rdi + rcx*2]
lea rdx, [rbp]
call fcn.14001a1c0
mov word [rdi + rsi*2], r14w
jmp 0x140009f8d
mov qword [rsp + 0x20], rdx
lea r9, [rbp]
mov rcx, rbx
call fcn.140002e70
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.140002bb0
movups xmmword [rsp + 0x40], xmm7
movups xmmword [rsp + 0x50], xmm6
movdqa xmm0, xmmword [0x140035d00]
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 0x14000a035
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a030
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a2e4
call fcn.14001867c
movdqa xmm0, xmmword [0x140035d00]
movdqu xmmword [rbp - 0x70], xmm0
mov word [rbp - 0x80], r14w
cmp qword [rsp + 0x50], 0
je 0x14000a1ee
lea rcx, [rsp + 0x40]
call fcn.140006ce0
test al, al
je 0x14000a1ee
lea rcx, [rbp - 0x80]
call fcn.140017f30
nop
lea r8, str.config.ini
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.140008320
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14000a0c3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a0be
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a2ea
call fcn.14001867c
movdqa xmm0, xmmword [0x140035d00]
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 0x14000a13c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a137
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a2f0
call fcn.14001867c
movdqa xmm0, xmmword [0x140035d00]
movdqu xmmword [rbp - 0x50], xmm0
mov word [rbp - 0x60], r14w
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14000a190
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a18b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a2f6
call fcn.14001867c
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r14w
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x14000a282
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a27d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a2d2
jmp 0x14000a27d
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14000a230
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a22b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a2fc
call fcn.14001867c
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r14w
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x14000a282
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000a27d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000a2cc
call fcn.14001867c
movdqa xmm0, xmmword [0x140035d00]
mov word [rsp + 0x60], r14w
movdqu xmmword [rsp + 0x70], xmm0
mov rcx, qword [rbp + 0x210]
xor rcx, rsp
call fcn.1400183b0
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.14001c634
int3
call fcn.14001c634
nop
call fcn.14001c634
nop
call fcn.14001c634
nop
call fcn.14001c634
nop
call fcn.14001c634
nop
call fcn.14001c634
nop
call fcn.14001c634
int3
call fcn.14001c634
int3