Function at 0x140094590
Capabilities:
Check if file exists
Get file attributes

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r15
sub rsp, 0x70
mov rax, qword [0x140214ec8]
xor rax, rsp
mov qword [rsp + 0x68], rax
lea rcx, [0x140219600]
xor edi, edi
call qword [sym.imp.KERNEL32.DLL_AcquireSRWLockExclusive]
cmp qword [0x14021b6a0], rdi
jne 0x1400947f5
lea r15, str.api_ms_win_power_limitsmanagement_l1_1_0.dll
mov rcx, r15
call qword [sym.imp.KERNEL32.DLL_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x140094617
bt eax, 0xa
jae 0x140094617
mov rcx, r15
call qword [sym.imp.KERNEL32.DLL_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x140094607
test al, 0x10
je 0x140094607
mov rcx, r15
call fcn.1400d89e4
jmp 0x14009460f
mov rcx, r15
call fcn.1400bd7ac
test eax, eax
jne 0x1400946b2
mov ecx, 0x18
call fcn.1400bae58
mov rsi, rax
test rax, rax
je 0x1400946b2
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsi], xmm0
xor edx, edx
mov qword [rsi + 0x10], rax
mov r8d, 0x1000
mov rcx, r15
call qword [sym.imp.KERNEL32.DLL_LoadLibraryExA]
mov qword [rsi], rax
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov rbx, rsi
mov dword [rsi + 8], eax
mov qword [0x14021b6a0], rbx
cmp qword [rsi], rdi
jne 0x1400947f5
mov edi, 0x709
cmp eax, 0xc1
ja case.0x140094690.1
lea rdx, [0x140000000]
mov eax, eax
movzx eax, byte [rdx + rax + 0x94848]
mov ecx, dword [rdx + rax*4 + 0x94830]
add rcx, rdx
jmp rcx
xor edi, edi
jmp case.0x140094690.1
mov edi, 0xbb8
jmp case.0x140094690.1
mov edi, 0x3e8
jmp case.0x140094690.1
mov edi, 0x3ea
jmp case.0x140094690.1
mov edi, 0x708
jmp case.0x140094690.1
xor esi, esi
mov edi, 0x8fc
xor ebx, ebx
mov qword [0x14021b6a0], rbx
cmp dword [0x14020e430], 3
jl 0x1400947b5
test byte [0x14020e494], 4
je 0x1400947b5
mov qword [rsp + 0x80], rbp
lea rbp, [0x140128798]
test rsi, rsi
je 0x14009475d
cmp dword [rsi + 8], 0
je 0x14009475d
mov rcx, qword [rsi + 0x10]
lea rax, str.Library
mov qword [rsp + 0x50], rax
lea rbx, [rsi + 0x10]
lea rax, [0x140127c7b]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
call qword [sym.imp.KERNEL32.DLL_LocalFree]
mov r8d, dword [rsi + 8]
lea rax, [rsp + 0x50]
mov qword [rsp + 0x30], rax
xor r9d, r9d
mov dword [rsp + 0x28], 0
xor edx, edx
mov ecx, 0x3100
mov qword [rsp + 0x20], rbx
mov qword [rbx], 0
call qword [sym.imp.KERNEL32.DLL_FormatMessageA]
mov rax, qword [rbx]
test rax, rax
cmovne rbp, rax
mov ecx, edi
call fcn.140094e40
mov qword [rsp + 0x48], rbp
lea r9, str.C:jenkinsworkspacedptfSrcESIFProductsESIF_UFSourceswinesif_uf_thermalapi_os_win.c
mov dword [rsp + 0x40], edi
lea r8, str.ThermalApi_LoadLibrary
mov qword [rsp + 0x38], rax
mov edx, 3
lea rax, str.esif_ccb_library_load____s_failed___s___d__:__s_n
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xb0
lea ecx, [rdx + 1]
call fcn.140078130
mov rbx, qword [0x14021b6a0]
mov rbp, qword [rsp + 0x80]
test rbx, rbx
je 0x1400947e6
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400947c8
call qword [sym.imp.KERNEL32.DLL_FreeLibrary]
mov rcx, qword [rbx + 0x10]
call qword [sym.imp.KERNEL32.DLL_LocalFree]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
mov rcx, rbx
mov qword [rbx + 0x10], rax
call fcn.1400bae44
mov qword [0x14021b6a0], 0
test edi, edi
jne 0x1400947fb
inc dword [0x140219614]
lea rcx, [0x140219600]
call qword [sym.imp.KERNEL32.DLL_ReleaseSRWLockExclusive]
mov eax, edi
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.1400ab870
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop r15
ret