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

Disassembly:
push rbp
push rbx
lea rbp, [rsp - 0xe8]
sub rsp, 0x1e8
mov rax, qword [0x140214ec8]
xor rax, rsp
mov qword [rbp + 0xd0], rax
cmp byte [rcx + 0x36a8], 0
xorps xmm0, xmm0
xorps xmm1, xmm1
mov qword [rsp + 0x208], rsi
movups xmmword [rsp + 0x50], xmm0
mov rsi, rcx
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm1
movups xmmword [rbp - 0x20], xmm1
movups xmmword [rbp - 0x10], xmm1
movups xmmword [rbp], xmm1
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp + 0x20], xmm1
movups xmmword [rbp + 0x30], xmm1
movups xmmword [rbp + 0x40], xmm1
movups xmmword [rbp + 0x50], xmm0
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm0
je 0x140022c19
mov ebx, 0x4b9
jmp 0x140023191
cmp dword [0x14020e430], 4
mov qword [rsp + 0x210], rdi
mov qword [rsp + 0x1e0], r15
jl 0x140022c82
test byte [0x14020e4ac], 0x20
je 0x140022c82
mov rax, qword [rcx + 0x90]
lea r9, str.C:jenkinsworkspacedptfSrcESIFProductsESIF_UFSourcesesif_uf_app.c
mov qword [rsp + 0x38], rax
lea r8, str.EsifApp_Load
mov rax, qword [rcx + 0x88]
mov edx, 4
mov qword [rsp + 0x30], rax
lea rax, str.name_s_lib_s_n
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x403
lea ecx, [rdx + 0x1c]
call fcn.140078130
mov r9, qword [rsi + 0x90]
lea rdi, str..dll
mov edx, 0x80
mov qword [rsp + 0x20], rdi
lea rcx, [rsp + 0x50]
lea r8d, [rdx - 0x79]
call fcn.140013cb0
xor r15d, r15d
lea rcx, [rbp + 0x50]
xor r9d, r9d
mov qword [rsp + 0x20], r15
mov edx, 0x80
lea r8d, [r15 + 7]
call fcn.140013cb0
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.DLL_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x140022d09
bt eax, 0xa
jae 0x140022d09
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.DLL_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x140022cfb
test al, 0x10
je 0x140022cfb
lea rcx, [rsp + 0x50]
call fcn.1400d89e4
jmp 0x140022d05
lea rcx, [rsp + 0x50]
call fcn.1400bd7ac
test eax, eax
jne 0x140022d48
mov ecx, 0x18
call fcn.1400bae58
mov rbx, rax
test rax, rax
je 0x140022d48
xorps xmm0, xmm0
lea rcx, [rsp + 0x50]
xor eax, eax
xor edx, edx
movups xmmword [rbx], xmm0
mov r8d, 0x1000
mov qword [rbx + 0x10], rax
call qword [sym.imp.KERNEL32.DLL_LoadLibraryExA]
mov qword [rbx], rax
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [rbx + 8], eax
jmp 0x140022d4b
mov rbx, r15
mov qword [rsp + 0x218], r14
mov qword [rsi + 0x98], rbx
test rbx, rbx
je 0x140022d68
cmp qword [rbx], r15
jne 0x140022f2f
mov r9, qword [rsi + 0x90]
lea rcx, [rbp - 0x30]
mov edx, 0x80
mov qword [rsp + 0x20], rdi
lea r8d, [rdx - 0x78]
call fcn.140013cb0
lea rax, [rbp - 0x30]
lea r8, [rsp + 0x50]
sub r8, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140022da5
inc rax
test ecx, ecx
jne 0x140022d92
lea r14, str.esif_ccb_library_load____s_failed___s___d__:__s_n
test edx, edx
je 0x140022f16
xor r9d, r9d
mov qword [rsp + 0x20], r15
mov edx, 0x80
lea rcx, [rbp + 0x50]
lea r8d, [r9 + 8]
call fcn.140013cb0
mov r9, qword [rsi + 0x98]
mov rcx, r9
call fcn.140023f60
cmp dword [0x14020e430], 2
mov edi, eax
mov rbx, r9
jl 0x140022e4d
test byte [0x14020e47c], 0x20
je 0x140022e4d
mov rcx, r9
call fcn.1400240a0
mov ecx, edi
mov r8, rax
call fcn.140024390
mov qword [rsp + 0x48], r8
lea r9, str.C:jenkinsworkspacedptfSrcESIFProductsESIF_UFSourcesesif_uf_app.c
mov dword [rsp + 0x40], edi
lea r8, str.EsifApp_Load
mov qword [rsp + 0x38], rax
mov edx, 2
lea rax, [rsp + 0x50]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r14
lea ecx, [rdx + 0x1e]
mov dword [rsp + 0x20], 0x411
call fcn.140078130
mov rbx, qword [rsi + 0x98]
test rbx, rbx
je 0x140022e7e
mov rcx, qword [rbx]
test rcx, rcx
je 0x140022e60
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
lea rcx, [rbp - 0x30]
mov qword [rsi + 0x98], r15
call qword [sym.imp.KERNEL32.DLL_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x140022ec5
bt eax, 0xa
jae 0x140022ec5
lea rcx, [rbp - 0x30]
call qword [sym.imp.KERNEL32.DLL_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x140022eb8
test al, 0x10
je 0x140022eb8
lea rcx, [rbp - 0x30]
call fcn.1400d89e4
jmp 0x140022ec1
lea rcx, [rbp - 0x30]
call fcn.1400bd7ac
test eax, eax
jne 0x140022f0a
mov ecx, 0x18
call fcn.1400bae58
mov rdi, rax
test rax, rax
je 0x140022f0a
xorps xmm0, xmm0
lea rcx, [rbp - 0x30]
xor eax, eax
xor edx, edx
movups xmmword [rdi], xmm0
mov r8d, 0x1000
mov qword [rdi + 0x10], rax
call qword [sym.imp.KERNEL32.DLL_LoadLibraryExA]
mov qword [rdi], rax
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [rdi + 8], eax
mov qword [rsi + 0x98], rdi
jmp 0x140022f1d
mov rdi, r15
mov qword [rsi + 0x98], r15
jmp 0x140022f1d
mov rdi, qword [rsi + 0x98]
test rdi, rdi
je 0x1400230bf
cmp qword [rdi], r15
je 0x1400230bf
lea rcx, [rsi + 0xa1]
mov r9, 0xffffffffffffffff
lea r8, [rbp + 0x50]
mov edx, 0x104
call fcn.1400baf28
cmp dword [0x14020e430], 4
jl 0x140022f96
test byte [0x14020e4ac], 0x20
je 0x140022f96
lea rax, [rsp + 0x50]
mov edx, 4
mov qword [rsp + 0x30], rax
lea r9, str.C:jenkinsworkspacedptfSrcESIFProductsESIF_UFSourcesesif_uf_app.c
lea rax, str.esif_ccb_library_load____s_completed._n
mov qword [rsp + 0x28], rax
lea r8, str.EsifApp_Load
lea ecx, [rdx + 0x1c]
mov dword [rsp + 0x20], 0x421
call fcn.140078130
mov rbx, qword [rsi + 0x98]
lea r14, str.GetApplicationInterfaceV2
mov r9, rbx
test rbx, rbx
je 0x140022fd5
mov rcx, qword [rbx]
test rcx, rcx
je 0x140022fd5
mov rdx, r14
call qword [sym.imp.KERNEL32.DLL_GetProcAddress]
mov rdi, rax
test rax, rax
jne 0x14002303c
call qword [sym.imp.KERNEL32.DLL_GetLastError]
mov dword [rbx + 8], eax
mov r9, qword [rsi + 0x98]
mov rcx, r9
call fcn.140023f60
cmp dword [0x14020e430], 4
mov ebx, eax
jl 0x14002312e
test byte [0x14020e4ac], 0x20
je 0x14002312e
mov rcx, r9
call fcn.1400240a0
mov ecx, ebx
mov r8, rax
call fcn.140024390
mov qword [rsp + 0x48], r8
mov edx, 4
mov dword [rsp + 0x40], ebx
mov qword [rsp + 0x38], rax
lea rax, str.esif_ccb_library_get_func____s_failed___s___d__:__s_n
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x426
jmp 0x140023116
cmp dword [0x14020e430], 4
jl 0x140023082
test byte [0x14020e4ac], 0x20
je 0x140023082
mov edx, 4
mov qword [rsp + 0x30], r14
lea rax, str.esif_ccb_library_get_func____s_completed._n
mov qword [rsp + 0x28], rax
lea r9, str.C:jenkinsworkspacedptfSrcESIFProductsESIF_UFSourcesesif_uf_app.c
lea r8, str.EsifApp_Load
mov dword [rsp + 0x20], 0x42a
lea ecx, [rdx + 0x1c]
call fcn.140078130
mov rdx, rdi
mov rcx, rsi
call fcn.140020b50
mov ebx, eax
test eax, eax
jne 0x140023132
lock inc qword [0x140217b18]
mov edx, 0x4e41
lea ecx, [rax + 1]
xor r9d, r9d
lea r8d, [rax + 0x42]
call fcn.1400351c0
mov byte [rsi + 0x36c8], 1
jmp 0x140023179
mov rcx, rdi
call fcn.140023f60
cmp dword [0x14020e430], 1
mov ebx, eax
jl 0x14002312e
test byte [0x14020e464], 0x20
je 0x14002312e
mov rcx, rdi
call fcn.1400240a0
mov ecx, ebx
mov r8, rax
call fcn.140024390
mov qword [rsp + 0x48], r8
mov edx, 1
mov dword [rsp + 0x40], ebx
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], 0x41a
lea r9, str.C:jenkinsworkspacedptfSrcESIFProductsESIF_UFSourcesesif_uf_app.c
mov ecx, 0x20
lea r8, str.EsifApp_Load
call fcn.140078130
test ebx, ebx
je 0x140023179
cmp ebx, 0x4b9
je 0x140023179
mov rdi, qword [rsi + 0x98]
test rdi, rdi
je 0x140023172
mov rcx, qword [rdi]
test rcx, rcx
je 0x140023154
call qword [sym.imp.KERNEL32.DLL_FreeLibrary]
mov rcx, qword [rdi + 0x10]
call qword [sym.imp.KERNEL32.DLL_LocalFree]
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rdi], xmm0
mov rcx, rdi
mov qword [rdi + 0x10], rax
call fcn.1400bae44
mov qword [rsi + 0x98], r15
mov r14, qword [rsp + 0x218]
mov rdi, qword [rsp + 0x210]
mov r15, qword [rsp + 0x1e0]
cmp dword [0x14020e430], 3
mov rsi, qword [rsp + 0x208]
jl 0x1400231e3
test dword [0x14020e494], 0x400000
je 0x1400231e3
lea rax, str.Exiting_function:_Exit_code__0x_08X...
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rax
lea r9, str.C:jenkinsworkspacedptfSrcESIFProductsESIF_UFSourcesesif_uf_app.c
lea r8, str.EsifApp_Load
mov dword [rsp + 0x20], 0x438
mov edx, 3
mov ecx, 0x400000
call fcn.140078130
mov eax, ebx
mov rcx, qword [rbp + 0xd0]
xor rcx, rsp
call fcn.1400ab870
add rsp, 0x1e8
pop rbx
pop rbp
ret