Function at 0x1800178c0
Capabilities:
Check if file exists

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0xb8]
sub rsp, 0x1b0
mov qword [rsp + 0x38], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
mov rax, qword [0x180075010]
xor rax, rsp
mov qword [rbp + 0xa0], rax
movzx esi, dl
call fcn.180018020
test rax, rax
je 0x18001791b
mov r8, qword [rax]
mov rcx, rax
call qword [r8 + 0x18]
test al, al
jne 0x180017fcf
mov qword [rbp + 0x58], 7
xor r14d, r14d
mov qword [rbp + 0x50], r14
mov word [rbp + 0x40], r14w
lea r8d, [r14 + 0xa]
lea rdx, str.GDzmtn.exe
lea rcx, [rbp + 0x40]
call fcn.18000a8d0
nop
mov qword [rbp - 0x28], 7
mov qword [rbp - 0x30], r14
mov word [rbp - 0x40], r14w
lea r8d, [r14 + 0xa]
lea rdx, str.GDztip.exe
lea rcx, [rbp - 0x40]
call fcn.18000a8d0
nop
cmp qword [rbp + 0x50], r14
je 0x180017f8a
cmp qword [rbp - 0x30], r14
je 0x180017f8a
call fcn.18000a550
mov rcx, rax
call fcn.1800135c0
test al, al
jne 0x180017f8a
call fcn.18000a550
mov rcx, rax
call fcn.180013390
test al, al
jne 0x180017f8a
xor ecx, ecx
call fcn.180034520
mov rdi, rax
call fcn.18000a550
mov rcx, rax
lea r9d, [r14 + 1]
lea r8, str.5a54d1
lea rdx, str.GDftSet
call fcn.180011d90
test eax, eax
jne 0x180017a85
call fcn.18000a550
mov rcx, rax
call fcn.180013580
test al, al
jne 0x180017a85
call fcn.18000a550
mov rcx, rax
xor r9d, r9d
lea r8, str.8ed067
lea rdx, str.GDftSet
call fcn.180011d90
mov ebx, eax
cmp eax, 0x64
jg 0x180017a85
call fcn.18000a550
mov rcx, rax
xor r9d, r9d
lea r8, str.8dd391
lea rdx, str.GDftSet
call fcn.180011d90
mov ecx, edi
sub ecx, eax
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0x708
jl 0x180017a62
call fcn.18000a550
mov rcx, rax
lea r9d, [rbx + 1]
lea r8, str.8ed067
lea rdx, str.GDftSet
call fcn.1800145c0
call fcn.18000a550
mov rcx, rax
mov r9d, edi
lea r8, str.8dd391
lea rdx, str.GDftSet
call fcn.1800145c0
jmp 0x180017f8a
test sil, sil
jne 0x180017add
call fcn.18000a550
mov rcx, rax
or r9d, 0xffffffff
lea r8, str.e35b4c
lea rdx, str.GDftSet
call fcn.180011d90
mov ecx, edi
sub ecx, eax
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
cmp eax, 0x708
jle 0x180017f8a
call fcn.18000a550
mov rcx, rax
mov r9d, edi
lea r8, str.e35b4c
lea rdx, str.GDftSet
call fcn.1800145c0
mov qword [rbp + 0x38], 7
mov qword [rbp + 0x30], r14
mov word [rbp + 0x20], r14w
mov qword [rbp - 0x48], 7
mov qword [rbp - 0x50], r14
mov word [rbp - 0x60], r14w
xor sil, sil
call fcn.18000a550
mov rcx, rax
xor r9d, r9d
lea r8, str.f8507b
lea rdx, str.GDftSet
call fcn.180011d90
mov ebx, eax
mov r8d, 0xa
lea rcx, [rbp + 0x20]
test al, 1
jne 0x180017b48
mov sil, 1
lea rdx, str.GDzmtn.exe
call fcn.18000a8d0
lea rdx, str.19afa5
jmp 0x180017b5b
lea rdx, str.GDztip.exe
call fcn.18000a8d0
lea rdx, str.dc70cb
mov r8d, 6
lea rcx, [rbp - 0x60]
call fcn.18000a8d0
call fcn.18000a550
mov rcx, rax
call fcn.18001dee0
mov rdx, rax
lea rcx, [rbp + 0x80]
call fcn.1800177e0
nop
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x80]
call fcn.18000fb70
lea eax, [rbx + 1]
mov ebx, r14d
cmp eax, 0x3e8
cmovl ebx, eax
call fcn.18000a550
mov rcx, rax
mov r9d, ebx
lea r8, str.f8507b
lea rdx, str.GDftSet
call fcn.1800145c0
cmp qword [rbp + 0x30], 0
je 0x180017f69
mov qword [rbp - 0x68], 7
mov qword [rbp - 0x70], r14
mov word [rbp - 0x80], r14w
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x80]
call fcn.18000a790
nop
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rcx, qword [rbp - 0x80]
call fcn.18001a090
test eax, eax
jne 0x180017f5f
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], r14
mov word [rsp + 0x40], r14w
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x80]
lea rcx, [rsp + 0x40]
call fcn.18000a790
nop
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rcx, qword [rsp + 0x40]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x180017c98
lea rdi, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
cmovae rdi, qword [rbp - 0x60]
lea rbx, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rbx, qword [rsp + 0x40]
call fcn.18000a550
mov rcx, rax
mov r8, rdi
mov rdx, rbx
call fcn.18001deb0
test eax, eax
jne 0x180017f54
mov qword [rbp - 8], 0xf
mov qword [rbp - 0x10], r14
mov byte [rbp - 0x20], 0
mov r8d, 0x28
lea rdx, str.5102883917531754084117516848336249133030
lea rcx, [rbp - 0x20]
call fcn.18000ff40
nop
mov r8d, 0x28
lea rcx, [rbp - 0x20]
test sil, sil
lea rdx, str.5102883917531754084117516848336249133030
jne 0x180017cdc
lea rdx, str.8354386756385628066523456825483240581616
call fcn.18000ff40
lea rdx, [rbp - 0x20]
cmp qword [rbp - 8], 0x10
cmovae rdx, qword [rbp - 0x20]
lea rcx, [rbp + 0x60]
call fcn.180018960
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x78], 0xf
mov qword [rsp + 0x70], r14
mov byte [rsp + 0x60], 0
mov r8d, 1
lea rdx, [0x18004b42c]
lea rcx, [rsp + 0x60]
call fcn.18000ff40
nop
lea rdx, [rbp + 0x60]
cmp qword [rbp + 0x78], 0x10
cmovae rdx, qword [rbp + 0x60]
mov qword [rbp + 0x18], 0xf
mov qword [rbp + 0x10], r14
mov byte [rbp], 0
cmp byte [rdx], 0
jne 0x180017d5a
mov r8, r14
jmp 0x180017d6a
or r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rdx + r8], 0
jne 0x180017d60
lea rcx, [rbp]
call fcn.18000ff40
nop
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x60]
lea rcx, [rbp]
call fcn.18001bd20
nop
lea rcx, [rbp]
call fcn.1800103b0
nop
lea rcx, [rsp + 0x60]
call fcn.1800103b0
mov rbx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x28]
cmp rbx, rax
je 0x180017f35
nop
cmp qword [rbx + 0x18], 0x10
jb 0x180017dbc
mov rdx, qword [rbx]
jmp 0x180017dbf
mov rdx, rbx
mov qword [rsp + 0x78], 0xf
mov qword [rsp + 0x70], r14
mov byte [rsp + 0x60], 0
cmp byte [rdx], 0
jne 0x180017ddc
mov r8, r14
jmp 0x180017dea
or r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x180017de0
lea rcx, [rsp + 0x60]
call fcn.18000ff40
nop
lea rdx, [rsp + 0x60]
lea rcx, [rbp]
call fcn.18001ca30
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.1800114b0
lea rcx, [rbp]
call fcn.180009890
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rcx, qword [rbp - 0x80]
call fcn.18001a090
nop
lea rcx, [rsp + 0x60]
call fcn.1800103b0
add rbx, 0x20
mov rax, qword [rsp + 0x28]
cmp rbx, rax
jne 0x180017db0
mov rbx, qword [rsp + 0x20]
cmp rbx, rax
je 0x180017f35
cmp qword [rbx + 0x18], 0x10
jb 0x180017e62
mov rdx, qword [rbx]
jmp 0x180017e65
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.1800177a0
nop
lea rdx, [rsp + 0x60]
lea rcx, [rbp]
call fcn.18001ca30
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.1800114b0
lea rcx, [rbp]
call fcn.180009890
call fcn.18000a550
mov rcx, rax
call fcn.18001dee0
cmp word [rax], 0
jne 0x180017eab
mov r8, r14
jmp 0x180017ebb
or r8, 0xffffffffffffffff
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x180017eb0
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.18000a8d0
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x40]
call fcn.18000fb70
lea rsi, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
cmovae rsi, qword [rbp - 0x60]
lea rdi, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rdi, qword [rsp + 0x40]
call fcn.18000a550
mov rcx, rax
mov r8, rsi
mov rdx, rdi
call fcn.18001deb0
nop
lea rcx, [rsp + 0x60]
test eax, eax
jne 0x180017f2f
call fcn.1800103b0
add rbx, 0x20
cmp rbx, qword [rsp + 0x28]
jne 0x180017e56
jmp 0x180017f35
call fcn.1800103b0
nop
lea rcx, [rsp + 0x20]
call fcn.180017270
nop
lea rcx, [rbp + 0x60]
call fcn.1800103b0
nop
lea rcx, [rbp - 0x20]
call fcn.1800103b0
nop
lea rcx, [rsp + 0x40]
call fcn.180009890
nop
lea rcx, [rbp - 0x80]
call fcn.180009890
nop
lea rcx, [rbp + 0x80]
call fcn.180009890
nop
lea rcx, [rbp - 0x60]
call fcn.180009890
nop
lea rcx, [rbp + 0x20]
call fcn.180009890
nop
mov r8, qword [rbp - 0x28]
cmp r8, 8
jb 0x180017fa4
inc r8
mov rdx, qword [rbp - 0x40]
lea rcx, [rbp - 0x40]
call fcn.18000aa20
mov qword [rbp - 0x28], 7
mov qword [rbp - 0x30], r14
mov word [rbp - 0x40], r14w
mov r8, qword [rbp + 0x58]
cmp r8, 8
jb 0x180017fcf
inc r8
mov rdx, qword [rbp + 0x40]
lea rcx, [rbp + 0x40]
call fcn.18000aa20
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.18002bf10
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret