Function at 0x140075ee0
Capabilities:
Check if file exists

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x90
mov ebx, r9d
mov rdi, r8
mov rsi, rcx
mov rax, qword [0x1401ee038]
xor rax, rsp
mov qword [rsp + 0x88], rax
lea rax, str._b_a_
mov qword [rcx], rax
mov qword [rcx + 8], 0
mov byte [rcx + 0x10], 0
cmp byte [rdx + 0x17], 0
js 0x140075f3b
mov rax, qword [rdx + 0x10]
mov qword [rsp + 0x50], rax
movups xmm0, xmmword [rdx]
movaps xmmword [rsp + 0x40], xmm0
jmp 0x140075f4f
mov rax, qword [rdx]
mov r8, qword [rdx + 8]
lea rcx, [rsp + 0x40]
mov rdx, rax
call fcn.140081ea0
lea r14, [rsp + 0x40]
movzx eax, byte [r14 + 0x17]
mov r15d, eax
and r15d, 0x7f
test al, al
mov r8, qword [r14]
mov rdx, qword [r14 + 8]
mov rcx, r14
cmovs rcx, r8
mov r9, r15
cmovs r9, rdx
test r9, r9
je 0x140075fb1
add r9, r9
xor eax, eax
jmp 0x140075f92
mov word [rcx + rax], 0x21
add rax, 2
cmp r9, rax
je 0x140075f9b
cmp word [rcx + rax], 0x5c
jne 0x140075f89
jmp 0x140075f83
movzx eax, byte [rsp + 0x57]
mov r8, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
mov r15d, eax
and r15d, 0x7f
test al, al
cmovs r14, r8
cmovs r15, rdx
test r15, r15
je 0x140075fde
add r15, r15
xor r12d, r12d
movzx ecx, word [r14 + r12]
call fcn.140147628
mov word [r14 + r12], ax
add r12, 2
cmp r15, r12
jne 0x140075fc6
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x70], rax
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x60], xmm0
xorps xmm0, xmm0
movaps xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], 0
cmp byte [rsp + 0x57], 0
jns 0x140076014
mov rcx, qword [rsp + 0x40]
call fcn.14012a8ec
lea rdx, str.Global_
lea r15, [rsp + 0x28]
lea r14, [rsp + 0x60]
mov rcx, r15
mov r8, r14
call fcn.140059550
movzx r8d, byte [rdi + 0x17]
test r8b, r8b
js 0x140076040
and r8d, 0x7f
jmp 0x140076047
mov r8, qword [rdi + 8]
mov rdi, qword [rdi]
lea r12, [rsp + 0x68]
mov rcx, r15
mov rdx, rdi
call fcn.140082230
mov rdi, qword [rax]
mov rcx, qword [rax + 8]
mov rdx, qword [rax + 0xf]
mov qword [rsp + 0x7f], rdx
mov qword [rsp + 0x78], rcx
mov bpl, byte [rax + 0x17]
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
cmp byte [r12 + 0xf], 0
jns 0x140076090
mov rcx, qword [rsp + 0x60]
call fcn.14012a8ec
mov qword [rsp + 0x60], rdi
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x7f]
mov qword [r12 + 7], rcx
mov qword [r12], rax
mov byte [rsp + 0x77], bpl
cmp byte [rsp + 0x3f], 0
jns 0x1400760be
mov rcx, qword [rsp + 0x28]
call fcn.14012a8ec
cmp byte [rsp + 0x77], 0
jns 0x1400760ca
mov r14, qword [rsp + 0x60]
test bl, bl
jne 0x1400760e0
mov ecx, 0x100000
xor edx, edx
mov r8, r14
call qword [sym.imp.KERNEL32.dll_OpenEventW]
jmp 0x1400760f3
xor ecx, ecx
mov edx, 1
xor r8d, r8d
mov r9, r14
call qword [sym.imp.KERNEL32.dll_CreateEventW]
cmp qword [rsi + 8], rax
je 0x14007612e
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [rsi + 8]
inc rax
cmp rax, 2
jae 0x140076187
mov rax, rdi
inc rax
cmp rax, 2
jb 0x140076126
mov qword [rsi + 8], rdi
call fcn.1400f6c70
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [rsi + 8]
inc rcx
cmp rcx, 2
jb 0x140076151
cmp eax, 0xb7
sete al
xor bl, 1
or bl, al
mov byte [rsi + 0x10], bl
cmp byte [rsp + 0x77], 0
jns 0x140076162
mov rcx, qword [rsp + 0x60]
call fcn.14012a8ec
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.14012b460
mov rax, rsi
add rsp, 0x90
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
call fcn.1400f6c70
mov rcx, qword [rsi + 8]
call fcn.1400e0410
mov qword [rsi + 8], 0
jmp 0x140076111