Function at 0x18003c090
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x450]
sub rsp, 0x550
mov rax, qword [0x1801044f8]
xor rax, rsp
mov qword [rbp + 0x440], rax
mov rax, rdx
xor r12d, r12d
mov dword [rsp + 0x30], r12d
lea r14, [rcx + 0x20]
mov qword [r14], rdx
lea r15, [rcx + 0x28]
mov dword [r15], r8d
lea rdx, [rsp + 0x34]
mov rcx, rax
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
lea rcx, [rbp + 0xa0]
call fcn.18000de10
nop
mov r8d, 0xd7b
mov edx, dword [rsp + 0x34]
lea rcx, [rbp + 0xa0]
call fcn.18000e270
test eax, eax
js 0x18003c676
lea rcx, [rbp + 0x40]
call fcn.18004a130
nop
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0xc0]
call fcn.180002a00
nop
mov rax, qword [rax]
mov edi, dword [rax + 0x4c]
lea esi, [r12 - 1]
mov rbx, qword [rbp - 8]
test rbx, rbx
je 0x18003c16c
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x18003c16c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18003c16c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
cmp edi, 1
je 0x18003c181
lea rdx, str.op_x86.dll
lea rcx, [rbp + 0x40]
call fcn.18000e780
xor dil, dil
lea rax, [0x1800e2cc4]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 2
xor r9d, r9d
lea r8, [rbp + 0x40]
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0xc0]
call fcn.180002300
nop
xor edx, edx
lea rcx, [rbp + 0xc0]
call fcn.180002ae0
mov rbx, rax
mov ecx, dword [rax]
mov dword [rsp + 0x40], ecx
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x50], r12
mov ecx, 0x48
call fcn.18009354c
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], r12
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
mov rax, qword [rbx + 0x30]
mov qword [rsp + 0x70], rax
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x78], rax
mov rdx, qword [rbx + 0x20]
sub rdx, qword [rbx + 0x18]
sar rdx, 3
mov r8, qword [rsp + 0x48]
lea rcx, [rsp + 0x58]
call fcn.180005b00
mov rdx, qword [rbx + 8]
mov r8, rdx
mov rdx, qword [rdx]
lea rcx, [rsp + 0x40]
call fcn.180034630
nop
cmp qword [rbp - 0x58], 0
jne 0x18003c4b5
lea rcx, [rbp + 0x80]
call fcn.18004a0e0
nop
mov r8d, 1
lea rdx, [0x1800e313c]
mov rcx, rax
call fcn.1800111c0
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x70], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x70], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
mov dword [rsp + 0x30], 1
lea rdx, [rbp + 0x40]
cmp qword [rbp + 0x58], 8
cmovae rdx, qword [rbp + 0x40]
mov r8, qword [rbp + 0x50]
lea rcx, [rbp + 0x60]
call fcn.1800111c0
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x30], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
mov eax, 3
mov dword [rsp + 0x30], eax
and eax, 0xfffffffe
mov dword [rsp + 0x30], eax
mov rdx, qword [rbp + 0x78]
cmp rdx, 8
jb 0x18003c333
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003c32e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c6d7
call fcn.180093588
movdqa xmm0, xmmword [0x1800ce060]
movdqu xmmword [rbp + 0x70], xmm0
mov word [rbp + 0x60], r12w
mov rdx, qword [rbp + 0x98]
cmp rdx, 8
jb 0x18003c38b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003c386
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c6dd
call fcn.180093588
movdqa xmm0, xmmword [0x1800ce060]
movdqu xmmword [rbp + 0x90], xmm0
mov word [rbp + 0x80], r12w
lea rcx, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae rcx, qword [rbp + 0x20]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x18003c42e
lea rax, [rbp - 0x78]
mov qword [rbp - 0x18], rax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
lea r9, [rbp - 0x78]
lea r8, [rbp + 0x20]
lea rdx, [rbp - 0x38]
lea rcx, [rbp + 0xc0]
call fcn.180003a20
nop
cmp dword [rbp - 0x38], 0
setge dil
lea rax, [rbp - 0x30]
mov qword [rbp - 0x80], rax
cmp byte [rbp - 0x20], 0
je 0x18003c448
mov rbx, qword [rbp - 0x28]
test rbx, rbx
je 0x18003c448
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x18003c448
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18003c448
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
jmp 0x18003c448
lea rdx, [rbp + 0x20]
cmp qword [rbp + 0x38], 8
cmovae rdx, qword [rbp + 0x20]
lea rcx, str.file:__s__not_exists_
call fcn.180047fb0
and dword [rsp + 0x30], 0xfffffffd
mov rdx, qword [rbp + 0x38]
cmp rdx, 8
jb 0x18003c48d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003c488
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c6e3
call fcn.180093588
movdqa xmm0, xmmword [0x1800ce060]
movdqu xmmword [rbp + 0x30], xmm0
mov word [rbp + 0x20], r12w
test dil, dil
jne 0x18003c4b5
lea rcx, str.Inject_false.
call fcn.180047fb0
jmp 0x18003c550
lea rax, [rbp - 0x68]
mov qword [rbp - 0x80], rax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x68], xmm0
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
lea r9, [0x1800cf0a0]
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0xa0]
lea rcx, [rbp]
call fcn.180034180
nop
cmp qword [rbp + 8], 0
je 0x18003c510
mov r9, r15
mov r8, r14
lea rdx, [rbp - 0x48]
lea rcx, [rbp]
call fcn.180034e40
cmp byte [rbp - 0x40], 0
je 0x18003c6d1
jmp 0x18003c51d
lea rcx, str.remote_function_SetInputHook_not_found.
call fcn.180047fb0
nop
mov rbx, qword [rbp + 0x18]
test rbx, rbx
je 0x18003c550
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x18003c550
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x18003c550
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x18003c5a6
mov rax, qword [rsp + 0x68]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003c593
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c6e9
call fcn.180093588
mov qword [rsp + 0x58], r12
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx + 8]
mov qword [rax], r12
mov rdi, qword [rcx]
test rdi, rdi
je 0x18003c5e6
nop word [rax + rax]
mov rbx, qword [rdi]
lea rdx, [rdi + 0x10]
lea rcx, [rsp + 0x48]
call fcn.180006ce0
mov edx, 0x48
mov rcx, rdi
call fcn.180093588
mov rdi, rbx
test rbx, rbx
jne 0x18003c5c0
mov edx, 0x48
mov rcx, qword [rsp + 0x48]
call fcn.180093588
nop
mov rbx, qword [rbp - 0x50]
test rbx, rbx
je 0x18003c627
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x18003c627
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], esi
cmp esi, 1
jne 0x18003c627
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
nop
mov rdx, qword [rbp + 0x58]
cmp rdx, 8
jb 0x18003c663
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003c65e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003c6cb
call fcn.180093588
mov qword [rbp + 0x50], r12
mov qword [rbp + 0x58], 7
mov word [rbp + 0x40], r12w
jmp 0x18003c682
lea rcx, str.attach_false.
call fcn.180047fb0
lea rcx, [rbp + 0xa0]
call fcn.18000e660
nop
lea rcx, [rbp + 0xa0]
call fcn.18000e170
mov eax, 1
mov rcx, qword [rbp + 0x440]
xor rcx, rsp
call fcn.180093c30
lea r11, [rsp + 0x550]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.18009a4c4
nop
call fcn.180001e50
nop
call fcn.18009a4c4
nop
call fcn.18009a4c4
nop
call fcn.18009a4c4
nop
call fcn.18009a4c4
int3