Function at 0x14000bb50
Capabilities:
Check if file exists
Check internet connectivity via wininet
Check mutex on windows
Create directory
Get common file path

Disassembly:
push rbp
push r12
push r15
lea rbp, [rsp - 0x430]
sub rsp, 0x530
mov rax, qword [0x140067080]
xor rax, rsp
mov qword [rbp + 0x400], rax
mov r15, rcx
lea r8, str.GainFPS_GamingMode
xor ecx, ecx
mov edx, 1
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov r12, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x14000bbad
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x14000c303
lea rcx, [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx ecx, word [rbp - 0x80]
movzx eax, word [rbp - 0x7e]
movzx edx, word [rbp - 0x7a]
cmp ecx, 0x7e8
ja 0x14000c31f
jne 0x14000bbe5
cmp eax, 6
ja 0x14000c31f
jne 0x14000bbe5
cmp edx, 0x1e
jae 0x14000c31f
mov qword [rsp + 0x558], rbx
lea rcx, [rbp - 0x60]
mov qword [rsp + 0x528], r13
xor edx, edx
xor r13d, r13d
mov dword [rbp - 0x60], r13d
call qword [sym.imp.WININET.dll_InternetGetConnectedState]
xor r9d, r9d
lea edx, [r13 + 0x2a]
xor r8d, r8d
xor ecx, ecx
mov ebx, eax
call qword [sym.imp.WININET.dll_InternetSetOptionW]
xor r9d, r9d
xor ecx, ecx
test ebx, ebx
jne 0x14000bc48
lea r8, str.GainFPS_Gaming_Mode
lea rdx, str.Sprawd
call qword [sym.imp.USER32.dll_MessageBoxW]
xor ecx, ecx
call qword [sym.imp.USER32.dll_PostQuitMessage]
xor eax, eax
jmp 0x14000c2f3
xor r8d, r8d
mov qword [rsp + 0x560], rsi
lea rax, [rbp + 0x1f0]
mov qword [rsp + 0x568], rdi
mov qword [rsp + 0x520], r14
mov qword [rsp + 0x20], rax
lea edx, [r8 + 0x1c]
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, [rbp + 0x1f0]
mov edx, 0x104
lea rcx, [rbp - 0x20]
call fcn.14002cb78
lea rdx, str.GamingMode
lea rcx, [rbp - 0x20]
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
lea rcx, [rbp - 0x20]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14000bcdf
xor edx, edx
lea rcx, [rbp - 0x20]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x14000bcdf
lea r9d, [rax + 0x10]
xor ecx, ecx
lea r8, str.Error
lea rdx, [0x14005a600]
call qword [sym.imp.USER32.dll_MessageBoxW]
xor ecx, ecx
call qword [sym.imp.USER32.dll_PostQuitMessage]
mov qword [rsp + 0x38], r13
lea r8, [rbp - 0x20]
mov qword [rsp + 0x30], r13
mov rdi, 0xffffffffffffffff
mov dword [rsp + 0x28], r13d
mov r9d, edi
xor edx, edx
mov qword [rsp + 0x20], r13
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movsxd rbx, eax
test eax, eax
jne 0x14000bd1a
mov rsi, r13
jmp 0x14000bd4c
mov rcx, rbx
call fcn.140022af0
mov qword [rsp + 0x38], r13
lea r8, [rbp - 0x20]
mov qword [rsp + 0x30], r13
mov r9d, edi
mov dword [rsp + 0x28], ebx
xor edx, edx
mov ecx, 0xfde9
mov qword [rsp + 0x20], rax
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov qword [0x14006a840], rsi
mov rax, rdi
inc rax
cmp byte [rsi + rax], r13b
jne 0x14000bd56
add eax, 0x10
movsxd rbx, eax
mov rcx, rbx
call fcn.140022af0
mov r8, rsi
mov rdx, rbx
mov rcx, rax
mov r14, rax
call fcn.1400299c4
lea r8, [0x14005a4cc]
mov rdx, rbx
mov rcx, r14
call fcn.140029a24
lea r8, str.GamingMode.log
mov rdx, rbx
mov rcx, r14
call fcn.140029a24
mov rsi, qword [rsp + 0x560]
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], r13
nop dword [rax]
inc rdi
cmp byte [r14 + rdi], r13b
jne 0x14000bdc0
mov r8, rdi
lea rcx, [rbp - 0x80]
mov rdx, r14
call fcn.140001920
lea rdx, [rbp - 0x80]
call fcn.140012660
mov rdx, qword [rbp - 0x68]
mov r14, qword [rsp + 0x520]
mov rdi, qword [rsp + 0x568]
cmp rdx, 0xf
jbe 0x14000be2c
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000be27
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000c34f
call fcn.140022abc
xorps xmm0, xmm0
mov qword [rbp - 0x70], r13
mov r8d, 6
mov qword [rbp - 0x68], r13
lea rdx, str.v0.4.1
lea rcx, [rbp - 0x80]
movups xmmword [rbp - 0x80], xmm0
call fcn.140001920
xor r8d, r8d
lea rdx, [rbp - 0x80]
call fcn.140012800
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x14000be98
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000be93
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000c355
call fcn.140022abc
xorps xmm0, xmm0
mov qword [rbp - 0x70], r13
mov r8d, 0x17
mov qword [rbp - 0x68], r13
lea rdx, str.STARTING_APPLICATION...
lea rcx, [rbp - 0x80]
movups xmmword [rbp - 0x80], xmm0
call fcn.140001920
xor r8d, r8d
lea rdx, [rbp - 0x80]
call fcn.140012800
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x14000bf04
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000beff
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000c35b
call fcn.140022abc
lea rax, [0x14000ccd0]
mov ecx, 0xdfc00c
mov qword [0x14006a8b8], rax
call qword [sym.imp.GDI32.dll_CreateSolidBrush]
mov edx, 0x6c
mov qword [0x14006a8c8], r15
mov qword [0x14006a8e0], rax
mov rcx, r15
lea rax, [0x14005a140]
mov qword [0x14006a8f0], rax
call qword [sym.imp.USER32.dll_LoadIconW]
lea rcx, [0x14006a8b0]
mov qword [0x14006a8d0], rax
call qword [sym.imp.USER32.dll_RegisterClassW]
lea rdx, str.SteamExe
lea rcx, [rsp + 0x60]
call fcn.140002af0
lea rdx, str.SOFTWAREValveSteam
lea rcx, [rbp - 0x80]
call fcn.140002af0
lea r9, [rsp + 0x60]
lea r8, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call fcn.140018790
mov rdx, rax
lea rcx, [0x140067d30]
call fcn.14000f750
mov rdx, qword [rsp + 0x58]
cmp rdx, 7
jbe 0x14000bfe0
mov rcx, qword [rsp + 0x40]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000bfdb
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000c361
call fcn.140022abc
mov rdx, qword [rbp - 0x68]
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r13w
cmp rdx, 7
jbe 0x14000c034
mov rcx, qword [rbp - 0x80]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000c02f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000c361
call fcn.140022abc
mov rdx, qword [rsp + 0x78]
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r13w
cmp rdx, 7
jbe 0x14000c087
mov rcx, qword [rsp + 0x60]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000c082
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000c361
call fcn.140022abc
mov edx, 0x7f00
movaps xmmword [rsp + 0x510], xmm6
xor ecx, ecx
call qword [sym.imp.USER32.dll_LoadCursorW]
mov edx, 0x7f89
xor ecx, ecx
mov qword [0x14006a910], rax
call qword [sym.imp.USER32.dll_LoadCursorW]
mov rcx, qword [0x14006a8c8]
mov edx, 0x83
mov qword [0x14006a8f8], rax
call qword [sym.imp.USER32.dll_LoadIconW]
mov qword [0x14006a898], rax
call fcn.140009e00
call fcn.14000a620
call fcn.1400016e0
test al, al
jne 0x14000c0ea
call fcn.14000b510
jmp 0x14000c0fc
mov rcx, qword [0x14006a8a8]
mov edx, 0xa
call qword [sym.imp.USER32.dll_ShowWindow]
cmp qword [0x140067d40], r13
xorps xmm6, xmm6
je 0x14000c170
mov ecx, 8
call fcn.140022a80
lea rcx, [0x14000ab90]
mov r9, rax
lea r8, [0x14000ff80]
xor edx, edx
mov qword [rax], rcx
lea rcx, [rbp - 0x78]
mov qword [rsp + 0x28], rcx
xor ecx, ecx
mov dword [rsp + 0x20], r13d
call fcn.14002ca90
mov qword [rbp - 0x80], rax
test rax, rax
je 0x14000c36d
movaps xmm6, xmmword [rbp - 0x80]
mov edx, 1
mov rcx, qword [0x14006a918]
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x80], xmm0
lea r9d, [rdx + 0x76]
lea r8d, [rdx + 1]
call qword [sym.imp.USER32.dll_RegisterHotKey]
xorps xmm0, xmm0
mov qword [rbp - 0x70], r13
mov r8d, 0x1c
mov qword [rbp - 0x68], r13
lea rdx, str.APPLICATION_HAS_BEEN_STARTED
lea rcx, [rbp - 0x80]
movups xmmword [rbp - 0x80], xmm0
call fcn.140001920
xor r8d, r8d
lea rdx, [rbp - 0x80]
call fcn.140012800
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x14000c1dc
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000c1d7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000c367
call fcn.140022abc
xorps xmm0, xmm0
lea rcx, [rbp - 0x58]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
movups xmmword [rbp - 0x58], xmm0
movups xmmword [rbp - 0x48], xmm0
movups xmmword [rbp - 0x38], xmm0
call qword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
jle 0x14000c22b
lea rcx, [rbp - 0x58]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp - 0x58]
call qword [sym.imp.USER32.dll_DispatchMessageW]
xor r9d, r9d
lea rcx, [rbp - 0x58]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
jg 0x14000c201
xor edx, edx
call fcn.140018b60
xorps xmm0, xmm0
mov qword [rbp - 0x70], r13
mov r8d, 0x1b
mov qword [rbp - 0x68], r13
lea rdx, str.APPLICATION_HAS_BEEN_CLOSED
lea rcx, [rbp - 0x80]
movups xmmword [rbp - 0x80], xmm0
call fcn.140001920
xor r8d, r8d
lea rdx, [rbp - 0x80]
call fcn.140012800
mov rdx, qword [rbp - 0x68]
cmp rdx, 0xf
jbe 0x14000c29e
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000c299
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000c37c
call fcn.140022abc
cmp qword [0x140067d40], r13
je 0x14000c2d1
movdqa xmm0, xmm6
psrldq xmm0, 8
movd eax, xmm0
test eax, eax
je 0x14000c344
lea rcx, [rbp - 0x80]
movdqa xmmword [rbp - 0x80], xmm6
call fcn.140020910
test eax, eax
jne 0x14000c344
xorps xmm6, xmm6
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
psrldq xmm6, 8
movd eax, xmm6
test eax, eax
jne 0x14000c382
movaps xmm6, xmmword [rsp + 0x510]
mov rbx, qword [rsp + 0x558]
mov r13, qword [rsp + 0x528]
mov rcx, qword [rbp + 0x400]
xor rcx, rsp
call fcn.140022a60
add rsp, 0x530
pop r15
pop r12
pop rbp
ret
xor r9d, r9d
lea r8, str.GainFPS_Gaming_Mode
lea rdx, str.Pobierz_najnowsz
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
xor ecx, ecx
call qword [sym.imp.USER32.dll_PostQuitMessage]
xor eax, eax
jmp 0x14000c303
mov ecx, 1
call fcn.14002081c
int3
call fcn.14002994c
int3
call fcn.14002994c
int3
call fcn.14002994c
int3
call fcn.14002994c
int3
call fcn.14002994c
int3
mov ecx, 6
mov dword [rbp - 0x78], r13d
call fcn.14002081c
int3
call fcn.14002994c
int3
call fcn.14002cbe0
int3