Function at 0x140094390
Capabilities:
Check if file exists

Disassembly:
mov r11, rsp
push rdi
sub rsp, 0x2f0
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rbp
mov qword [r11 + 0x20], rsi
mov rax, qword [0x14012a4f8]
xor rax, rsp
mov qword [rsp + 0x2e0], rax
mov rbx, rcx
xor ebp, ebp
mov dword [rcx + 0x18], ebp
mov qword [r11 - 0x238], 7
mov qword [r11 - 0x240], rbp
mov word [rsp + 0xa8], bp
mov edi, 7
mov qword [r11 - 0x260], rdi
mov qword [r11 - 0x268], rbp
mov word [rsp + 0x80], bp
mov rax, qword [rcx + 0xd0]
test rax, rax
je 0x140094685
cmp qword [rax + 0x70], 8
jb 0x14009441c
mov rcx, qword [rax + 0x58]
jmp 0x140094420
lea rcx, [rax + 0x58]
lea rdx, str..zip
call qword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
je 0x1400944d0
mov edi, ebp
nop word [rax + rax]
inc edi
mov dword [rbx + 0x18], ebp
mov rax, qword [rbx + 0xd0]
cmp qword [rax + 0x70], 8
jb 0x140094459
mov rdx, qword [rax + 0x58]
jmp 0x14009445d
lea rdx, [rax + 0x58]
lea r8, [rbx + 0xd8]
mov rcx, rbx
call fcn.1400941d0
test eax, eax
jne 0x140094481
mov dword [rbx + 0x18], 0x196
cmp edi, 3
jl 0x140094440
jmp 0x140094537
mov rax, qword [rbx + 0xd0]
cmp qword [rax + 0x70], 8
jb 0x140094495
mov r8, qword [rax + 0x58]
jmp 0x140094499
lea r8, [rax + 0x58]
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.140092960
nop
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.140025740
nop
cmp qword [rsp + 0x40], 8
jb 0x140094537
mov rcx, qword [rsp + 0x28]
call fcn.1400ad0b8
jmp 0x140094537
mov rax, qword [rbx + 0xd0]
cmp qword [rax + 0x70], 8
jb 0x1400944e4
mov rcx, qword [rax + 0x58]
jmp 0x1400944e8
lea rcx, [rax + 0x58]
lea rdx, [0x1400eff18]
call qword [sym.imp.SHLWAPI.dll_PathMatchSpecW]
test eax, eax
je 0x140094537
mov rax, qword [rbx + 0xd0]
cmp qword [rax + 0x70], 8
jb 0x14009450d
mov rcx, qword [rax + 0x58]
jmp 0x140094511
lea rcx, [rax + 0x58]
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov rdx, rax
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0x78]
call fcn.140025a70
mov rax, qword [rbx + 0xd0]
cmp qword [rax + 0x98], 8
jb 0x140094551
mov rdx, qword [rax + 0x80]
jmp 0x140094558
lea rdx, [rax + 0x80]
mov qword [rsp + 0x40], 7
mov qword [rsp + 0x38], rbp
mov word [rsp + 0x28], bp
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0x20]
call fcn.140025a70
nop
mov rax, qword [rbx + 0xd0]
cmp qword [rax + 0x70], 8
jb 0x14009459d
mov rdx, qword [rax + 0x58]
jmp 0x1400945a1
lea rdx, [rax + 0x58]
mov qword [rsp + 0x68], 7
mov qword [rsp + 0x60], rbp
mov word [rsp + 0x50], bp
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0x48]
call fcn.140025a70
nop
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x48]
call fcn.140092380
test eax, eax
sete dil
cmp qword [rsp + 0x68], 8
jb 0x1400945f9
mov rcx, qword [rsp + 0x50]
call fcn.1400ad0b8
mov qword [rsp + 0x68], 7
mov qword [rsp + 0x60], rbp
mov word [rsp + 0x50], bp
cmp qword [rsp + 0x40], 8
jb 0x14009461e
mov rcx, qword [rsp + 0x28]
call fcn.1400ad0b8
test dil, dil
je 0x14009467d
mov dword [rbx + 0x18], 0x193
cmp qword [rsp + 0x98], 8
jb 0x140094642
mov rcx, qword [rsp + 0x80]
call fcn.1400ad0b8
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rbp
mov word [rsp + 0x80], bp
cmp qword [rsp + 0xc0], 8
jb 0x140094676
mov rcx, qword [rsp + 0xa8]
call fcn.1400ad0b8
xor eax, eax
jmp 0x1400948a9
mov rdi, qword [rsp + 0x98]
cmp dword [rbx + 0x18], 0
je 0x1400946d9
cmp rdi, 8
jb 0x14009469e
mov rcx, qword [rsp + 0x80]
call fcn.1400ad0b8
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rbp
mov word [rsp + 0x80], bp
cmp qword [rsp + 0xc0], 8
jb 0x1400946d2
mov rcx, qword [rsp + 0xa8]
call fcn.1400ad0b8
xor eax, eax
jmp 0x1400948a9
mov word [rsp + 0xd0], bp
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0xd2]
call fcn.1400ad2f0
lea r8, [rsp + 0x80]
cmp rdi, 8
cmovae r8, qword [rsp + 0x80]
lea rdx, [rbx + 0xd8]
lea rcx, [rsp + 0xd0]
call qword [sym.imp.SHLWAPI.dll_PathCombineW]
lea rcx, [rsp + 0xd0]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x14009475f
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0xd0]
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rdx, [rsp + 0xd0]
lea rcx, [rsp + 0xa0]
call fcn.140025a70
cmp qword [rsp + 0xb8], 0
jne 0x1400947c4
mov dword [rbx + 0x18], 0x195
cmp qword [rsp + 0x98], 8
jb 0x140094789
mov rcx, qword [rsp + 0x80]
call fcn.1400ad0b8
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rbp
mov word [rsp + 0x80], bp
cmp qword [rsp + 0xc0], 8
jb 0x1400947bd
mov rcx, qword [rsp + 0xa8]
call fcn.1400ad0b8
xor eax, eax
jmp 0x1400948a9
lea r8, [rbx + 0x20]
lea rdx, [rbx + 0x78]
lea rcx, [rsp + 0xa0]
call fcn.14007a200
test eax, eax
jne 0x140094802
mov dword [rbx + 0x18], 0x198
mov ecx, dword [0x14012fd50]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov ecx, dword [rdx + rax]
mov dword [rbx + 0x1c], ecx
cmp dword [rbx + 0x18], 0
jne 0x14009485b
cmp qword [rsp + 0x98], 8
jb 0x140094820
mov rcx, qword [rsp + 0x80]
call fcn.1400ad0b8
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rbp
mov word [rsp + 0x80], bp
cmp qword [rsp + 0xc0], 8
jb 0x140094854
mov rcx, qword [rsp + 0xa8]
call fcn.1400ad0b8
mov eax, 1
jmp 0x1400948a9
cmp qword [rsp + 0x98], 8
jb 0x140094873
mov rcx, qword [rsp + 0x80]
call fcn.1400ad0b8
mov qword [rsp + 0x98], 7
mov qword [rsp + 0x90], rbp
mov word [rsp + 0x80], bp
cmp qword [rsp + 0xc0], 8
jb 0x1400948a7
mov rcx, qword [rsp + 0xa8]
call fcn.1400ad0b8
xor eax, eax
mov rcx, qword [rsp + 0x2e0]
xor rcx, rsp
call fcn.1400ad2c0
lea r11, [rsp + 0x2f0]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret