Function at 0x180037710
Capabilities:
Check if file exists

Disassembly:
push rbx
sub rsp, 0x520
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov rax, qword [0x18015f460]
xor rax, rsp
mov qword [rsp + 0x510], rax
mov rbx, rcx
lea rcx, [rsp + 0x290]
call fcn.180003c30
nop
lea rcx, [rsp + 0x380]
call fcn.180003c30
nop
lea rcx, [rsp + 0x2e0]
call fcn.180003c30
nop
lea rcx, [rsp + 0x330]
call fcn.180003c30
nop
lea rcx, [rsp + 0x3f8]
call fcn.180003c30
nop
lea rcx, [rsp + 0x3d0]
call fcn.180003c30
nop
lea rcx, [rsp + 0x358]
call fcn.180003c30
nop
lea rcx, [rsp + 0x2b8]
call fcn.180003c30
nop
mov rcx, rbx
call fcn.180002b30
mov rcx, rax
call qword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
jne 0x180037832
lea rcx, [rsp + 0x2b8]
call fcn.180002b10
nop
lea rcx, [rsp + 0x358]
call fcn.180002b10
nop
lea rcx, [rsp + 0x3d0]
call fcn.180002b10
nop
lea rcx, [rsp + 0x3f8]
call fcn.180002b10
nop
lea rcx, [rsp + 0x330]
call fcn.180002b10
nop
lea rcx, [rsp + 0x2e0]
call fcn.180002b10
nop
lea rcx, [rsp + 0x380]
call fcn.180002b10
nop
lea rcx, [rsp + 0x290]
call fcn.180002b10
xor al, al
jmp 0x180037f1c
mov rcx, rbx
call fcn.180002b30
mov rdx, rax
mov dword [rsp + 0x20], 1
mov r9d, 0x40
lea r8d, [r9 - 0x3f]
lea rcx, [rsp + 0x60]
call fcn.18003bed0
nop
mov rax, qword [rsp + 0x60]
movsxd rcx, dword [rax + 4]
lea rcx, [rsp + rcx + 0x60]
mov dl, 0xa
call fcn.18003f080
movzx r8d, al
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x60]
call fcn.18003fdd0
lea rcx, [rsp + 0x290]
call fcn.180002b30
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r11 + 4]
lea rcx, [rsp + rax + 0x60]
mov dl, 0xa
call fcn.18003f080
movzx r8d, al
lea rdx, [rsp + 0x380]
lea rcx, [rsp + 0x60]
call fcn.18003fdd0
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r11 + 4]
lea rcx, [rsp + rax + 0x60]
mov dl, 0xa
call fcn.18003f080
movzx r8d, al
lea rdx, [rsp + 0x2e0]
lea rcx, [rsp + 0x60]
call fcn.18003fdd0
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r11 + 4]
lea rcx, [rsp + rax + 0x60]
mov dl, 0xa
call fcn.18003f080
movzx r8d, al
lea rdx, [rsp + 0x330]
lea rcx, [rsp + 0x60]
call fcn.18003fdd0
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r11 + 4]
lea rcx, [rsp + rax + 0x60]
mov dl, 0xa
call fcn.18003f080
movzx r8d, al
lea rdx, [rsp + 0x3f8]
lea rcx, [rsp + 0x60]
call fcn.18003fdd0
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r11 + 4]
lea rcx, [rsp + rax + 0x60]
mov dl, 0xa
call fcn.18003f080
movzx r8d, al
lea rdx, [rsp + 0x3d0]
lea rcx, [rsp + 0x60]
call fcn.18003fdd0
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r11 + 4]
lea rcx, [rsp + rax + 0x60]
mov dl, 0xa
call fcn.18003f080
movzx r8d, al
lea rdx, [rsp + 0x358]
lea rcx, [rsp + 0x60]
call fcn.18003fdd0
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r11 + 4]
lea rcx, [rsp + rax + 0x60]
mov dl, 0xa
call fcn.18003f080
movzx r8d, al
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x60]
call fcn.18003fdd0
mov edx, 3
lea r8d, [rdx - 2]
lea rcx, [rsp + 0x190]
call fcn.18003ccd0
nop
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x1a0]
call fcn.18003f4c0
mov rcx, rax
lea rdx, [0x1801325b4]
call fcn.18003f770
lea rdx, [rsp + 0x380]
lea rcx, [rsp + 0x1a0]
call fcn.18003f4c0
mov rcx, rax
lea rdx, [0x1801325b4]
call fcn.18003f770
lea rdx, [rsp + 0x2e0]
lea rcx, [rsp + 0x1a0]
call fcn.18003f4c0
mov rcx, rax
lea rdx, [0x1801325b4]
call fcn.18003f770
lea rdx, [rsp + 0x330]
lea rcx, [rsp + 0x1a0]
call fcn.18003f4c0
mov rcx, rax
lea rdx, [0x1801325b4]
call fcn.18003f770
lea rdx, [rsp + 0x3f8]
lea rcx, [rsp + 0x1a0]
call fcn.18003f4c0
mov rcx, rax
lea rdx, [0x1801325b4]
call fcn.18003f770
lea rdx, [rsp + 0x3d0]
lea rcx, [rsp + 0x1a0]
call fcn.18003f4c0
mov rcx, rax
lea rdx, [0x1801325b4]
call fcn.18003f770
lea rdx, [rsp + 0x358]
lea rcx, [rsp + 0x1a0]
call fcn.18003f4c0
mov rcx, rax
lea rdx, [0x1801325b4]
call fcn.18003f770
lea rdx, [rsp + 0x448]
lea rcx, [rsp + 0x190]
call fcn.18003ce40
nop
mov byte [rsp + 0x470], 0
xor eax, eax
mov qword [rsp + 0x471], rax
mov qword [rsp + 0x479], rax
mov qword [rsp + 0x481], rax
mov qword [rsp + 0x489], rax
mov qword [rsp + 0x491], rax
mov qword [rsp + 0x499], rax
mov qword [rsp + 0x4a1], rax
mov qword [rsp + 0x4a9], rax
lea rcx, [rsp + 0x448]
call fcn.180007e90
mov rbx, rax
lea rcx, [rsp + 0x448]
call fcn.180002b30
mov r8, rax
mov r9d, ebx
mov edx, 0x41
lea rcx, [rsp + 0x470]
call fcn.1800350b0
mov ebx, eax
lea rdx, [0x18012eb74]
lea rcx, [rsp + 0x308]
call fcn.180002ab0
nop
test ebx, ebx
jne 0x180037bd6
lea rdx, [rsp + 0x470]
lea rcx, [rsp + 0x38]
call fcn.180002ab0
nop
lea r9d, [rbx + 0x20]
xor r8d, r8d
lea rdx, [rsp + 0x160]
mov rcx, rax
call fcn.180007fb0
nop
mov rdx, rax
lea rcx, [rsp + 0x308]
call fcn.180003c80
nop
lea rcx, [rsp + 0x160]
call fcn.180002b10
nop
lea rcx, [rsp + 0x38]
call fcn.180002b10
lea rcx, [rsp + 0x308]
call fcn.180002b30
lea rdx, [rsp + 0x308]
lea rcx, [rsp + 0x38]
call fcn.180007cc0
mov rdx, rax
lea rcx, [rsp + 0x420]
call fcn.180036fa0
nop
mov byte [rsp + 0x4c0], 0
xor eax, eax
mov qword [rsp + 0x4c1], rax
mov qword [rsp + 0x4c9], rax
mov qword [rsp + 0x4d1], rax
mov qword [rsp + 0x4d9], rax
mov qword [rsp + 0x4e1], rax
mov qword [rsp + 0x4e9], rax
mov qword [rsp + 0x4f1], rax
mov qword [rsp + 0x4f9], rax
lea rcx, [rsp + 0x420]
call fcn.180007e90
mov rbx, rax
lea rcx, [rsp + 0x420]
call fcn.180002b30
mov r8, rax
mov r9d, ebx
mov edx, 0x41
lea rcx, [rsp + 0x4c0]
call fcn.1800350b0
mov ebx, eax
lea rdx, [0x18012eb74]
lea rcx, [rsp + 0x3a8]
call fcn.180002ab0
nop
test ebx, ebx
jne 0x180037cf4
lea rdx, [rsp + 0x4c0]
lea rcx, [rsp + 0x160]
call fcn.180002ab0
nop
lea r9d, [rbx + 0x20]
xor r8d, r8d
lea rdx, [rsp + 0x38]
mov rcx, rax
call fcn.180007fb0
nop
mov rdx, rax
lea rcx, [rsp + 0x3a8]
call fcn.180003c80
nop
lea rcx, [rsp + 0x38]
call fcn.180002b10
nop
lea rcx, [rsp + 0x160]
call fcn.180002b10
lea rcx, [rsp + 0x2b8]
call fcn.180002b30
lea rcx, [rsp + 0x3a8]
call fcn.180002b30
lea rdx, [rsp + 0x2b8]
lea rcx, [rsp + 0x3a8]
call fcn.180009a10
test eax, eax
jne 0x180037e26
lea rcx, [rsp + 0x3a8]
call fcn.180002b10
nop
lea rcx, [rsp + 0x420]
call fcn.180002b10
nop
lea rcx, [rsp + 0x308]
call fcn.180002b10
nop
lea rcx, [rsp + 0x448]
call fcn.180002b10
nop
lea rcx, [rsp + 0x228]
call fcn.18003cdb0
lea rbx, vtable.std::ios_base.0
mov qword [rsp + 0x228], rbx
lea rcx, [rsp + 0x228]
call fcn.1800c8c24
nop
lea rcx, [rsp + 0x100]
call fcn.18003bfb0
mov qword [rsp + 0x100], rbx
lea rcx, [rsp + 0x100]
call fcn.1800c8c24
nop
lea rcx, [rsp + 0x2b8]
call fcn.180002b10
nop
lea rcx, [rsp + 0x358]
call fcn.180002b10
nop
lea rcx, [rsp + 0x3d0]
call fcn.180002b10
nop
lea rcx, [rsp + 0x3f8]
call fcn.180002b10
nop
lea rcx, [rsp + 0x330]
call fcn.180002b10
nop
lea rcx, [rsp + 0x2e0]
call fcn.180002b10
nop
lea rcx, [rsp + 0x380]
call fcn.180002b10
nop
lea rcx, [rsp + 0x290]
call fcn.180002b10
mov al, 1
jmp 0x180037f1c
lea rcx, [rsp + 0x3a8]
call fcn.180002b10
nop
lea rcx, [rsp + 0x420]
call fcn.180002b10
nop
lea rcx, [rsp + 0x308]
call fcn.180002b10
nop
lea rcx, [rsp + 0x448]
call fcn.180002b10
nop
lea rcx, [rsp + 0x228]
call fcn.18003cdb0
lea rbx, vtable.std::ios_base.0
mov qword [rsp + 0x228], rbx
lea rcx, [rsp + 0x228]
call fcn.1800c8c24
nop
lea rcx, [rsp + 0x100]
call fcn.18003bfb0
mov qword [rsp + 0x100], rbx
lea rcx, [rsp + 0x100]
call fcn.1800c8c24
nop
lea rcx, [rsp + 0x2b8]
call fcn.180002b10
nop
lea rcx, [rsp + 0x358]
call fcn.180002b10
nop
lea rcx, [rsp + 0x3d0]
call fcn.180002b10
nop
lea rcx, [rsp + 0x3f8]
call fcn.180002b10
nop
lea rcx, [rsp + 0x330]
call fcn.180002b10
nop
lea rcx, [rsp + 0x2e0]
call fcn.180002b10
nop
lea rcx, [rsp + 0x380]
call fcn.180002b10
nop
lea rcx, [rsp + 0x290]
call fcn.180002b10
xor al, al
mov rcx, qword [rsp + 0x510]
xor rcx, rsp
call fcn.1800c9b90
add rsp, 0x520
pop rbx
ret