Function at 0x140001010
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x258
movaps xmmword [rsp + 0x240], xmm6
mov rax, qword [0x14002e148]
xor rax, rsp
mov qword [rsp + 0x238], rax
mov qword [rsp + 0x70], rdx
lea rax, [rdx + 0x10]
mov qword [rsp + 0x78], rax
cmp ecx, 4
mov eax, 0x9bc936a2
mov ecx, 0xc3abcf56
cmove ecx, eax
mov dword [rsp + 0x68], ecx
mov ecx, 0x55bbbfe4
lea r15, [rsp + 0xc0]
lea r12, [rsp + 0xd0]
lea rsi, [rsp + 0x120]
xorps xmm6, xmm6
mov r14d, 0x909a6a7f
jmp 0x140001090
mov ecx, 0xf7556f21
nop dword [rax]
cmp ecx, 0xe0ff350a
jle 0x140001120
cmp ecx, 0x3f6a9ef8
jle 0x1400011d0
cmp ecx, 0x5d4c90d8
jle 0x14000126a
cmp ecx, 0x62799259
jle 0x14000147a
cmp ecx, 0x6279925a
je 0x14000161c
cmp ecx, 0x714f394a
je 0x1400016d9
cmp ecx, 0x759714d9
jne 0x140001090
mov eax, dword [0x14002ec20]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov ecx, 0x3f6a9ef9
mov ebp, 0xc9956b6b
cmove ecx, ebp
cmp dword [0x14002ec24], 0xa
mov edx, 0x3f6a9ef9
cmovge ecx, edx
jmp 0x14000173b
cmp ecx, 0xb0900c45
jle 0x140001230
cmp ecx, 0xc9956b6a
jle 0x1400013c0
cmp ecx, 0xcb95d16a
jle 0x14000149c
cmp ecx, 0xcb95d16b
je 0x140001748
cmp ecx, 0xd2fd1962
je 0x14000177c
cmp ecx, 0xd4c366c3
jne 0x140001090
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ecx, dword [0x14002ec20]
mov edi, dword [0x14002ec24]
lea ebx, [rcx - 1]
imul ebx, ecx
not ebx
or ebx, 0xfffffffe
cmp ebx, 0xffffffff
sete cl
cmp edi, 0xa
setl dl
xor dl, cl
mov edx, 0x49acf636
mov r8d, 0x8e4c0bdc
cmovne edx, r8d
cmp ebx, 0xffffffff
mov ecx, edx
cmove ecx, r8d
cmp edi, 0xa
cmovge ecx, edx
mov edx, eax
xor edx, 0xffffffef
test edx, eax
sete byte [rsp + 0x37]
jmp 0x140001090
cmp ecx, 0x9fe07b2
jg 0x1400013ee
cmp ecx, 0xed28fb3c
jle 0x1400014fc
cmp ecx, 0xed28fb3d
je 0x140001792
cmp ecx, 0xf7556f21
jne 0x1400019e8
mov eax, dword [0x14002ec20]
lea ecx, [rax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0xb0900c46
mov ebx, 0xb72f9ac8
jmp 0x1400014e8
cmp ecx, 0x90172c8c
jg 0x14000141c
cmp ecx, 0x8d6e8da4
jg 0x14000152a
cmp ecx, 0x8ac18910
je 0x1400017a7
cmp ecx, 0x8b37a583
jne 0x140001090
mov ecx, 0xc9c4df23
jmp 0x140001090
cmp ecx, 0x49acf635
jg 0x140001559
cmp ecx, 0x3f6a9ef9
je 0x1400017ec
cmp ecx, 0x41b39eef
jne 0x140001090
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0x90], xmm6
movaps xmmword [rsp + 0x80], xmm6
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax]
lea rdi, [rsp + 0x1f0]
mov rcx, rdi
call fcn.140002410
lea rbx, [rsp + 0x80]
mov qword [rsp + 0x20], rbx
mov rcx, rdi
lea rdx, [rsp + 0xb0]
lea rdi, [rsp + 0xa0]
mov r8, rdi
mov r14, r12
mov r12, r15
lea r15, [rsp + 0x90]
mov r9, r15
call fcn.140001a30
mov ebp, eax
movups xmmword [rsp + 0x1dc], xmm6
movaps xmmword [rsp + 0x1d0], xmm6
movaps xmmword [rsp + 0x1c0], xmm6
movaps xmmword [rsp + 0x1b0], xmm6
movaps xmmword [rsp + 0x1a0], xmm6
movaps xmmword [rsp + 0x190], xmm6
movaps xmmword [rsp + 0x180], xmm6
movaps xmmword [rsp + 0x170], xmm6
movaps xmmword [rsp + 0x160], xmm6
movaps xmmword [rsp + 0x150], xmm6
movaps xmmword [rsp + 0x140], xmm6
lea r13, [rsp + 0x140]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
mov rax, qword [rsp + 0x40]
movaps xmm0, xmmword [rsp + 0xb0]
movups xmmword [rax], xmm0
mov rcx, r13
mov rdx, rdi
lea r8, [rsp + 0xe0]
mov rdi, qword [sym.imp.KERNEL32.dll_TzSpecificLocalTimeToSystemTime]
call rdi
mov rcx, r13
mov rdx, r15
mov r15, r12
mov r12, r14
mov r14d, 0x909a6a7f
mov r8, r12
call rdi
mov rcx, r13
mov r13d, ebp
mov rdx, rbx
mov r8, r15
call rdi
mov ecx, 0xed28fb3d
jmp 0x140001090
cmp ecx, 0xc3abcf55
jg 0x14000157a
cmp ecx, 0xb0900c46
je 0x140001087
cmp ecx, 0xb72f9ac8
jne 0x140001090
mov ecx, 0x23978c21
jmp 0x140001090
cmp ecx, 0x23978c20
jg 0x1400015a9
cmp ecx, 0x9fe07b3
je 0x140001802
cmp ecx, 0x1c6fd550
jne 0x140001090
mov ecx, 0x23978c21
jmp 0x140001090
cmp ecx, 0x9bc936a1
jg 0x1400015f5
cmp ecx, 0x90172c8d
je 0x140001853
cmp ecx, 0x909a6a7f
jne 0x140001090
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax]
mov rcx, rsi
call fcn.140002410
mov qword [rsp + 0x20], r15
mov rcx, rsi
lea rdx, [rsp + 0xf0]
lea r8, [rsp + 0xe0]
mov r9, r12
call fcn.140002930
mov ecx, 0x714f394a
jmp 0x140001090
cmp ecx, 0x5d4c90d9
je 0x14000185d
cmp ecx, 0x6017f920
jne 0x140001090
mov ecx, 0xc9c4df23
jmp 0x140001090
cmp ecx, 0xc9956b6b
je 0x14000188d
cmp ecx, 0xc9c4df23
jne 0x140001090
mov rax, qword [rsp + 0x60]
mov rax, qword [rsp + 0x58]
mov rax, qword [rsp + 0x50]
mov rax, qword [rsp + 0x40]
mov eax, dword [0x14002ec20]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov ecx, 0xb0900c46
mov ebx, 0xf7556f21
cmove ecx, ebx
cmp dword [0x14002ec24], 0xa
mov edx, 0xb0900c46
jmp 0x1400018c9
cmp ecx, 0xe0ff350b
je 0x1400018d9
cmp ecx, 0xead5c75b
jne 0x140001090
lea rcx, [0x14002e040]
call fcn.1400030c0
mov ecx, 0x9fe07b3
jmp 0x140001090
cmp ecx, 0x8d6e8da5
je 0x140001903
cmp ecx, 0x8e4c0bdc
jne 0x140001090
cmp byte [rsp + 0x37], 0
mov ecx, 0x41b39eef
mov eax, 0x5d4c90d9
cmovne ecx, eax
jmp 0x140001090
cmp ecx, 0x49acf636
je 0x140001950
cmp ecx, 0x55bbbfe4
jne 0x140001090
mov ecx, dword [rsp + 0x68]
jmp 0x140001090
cmp ecx, 0xc3abcf56
je 0x140001968
cmp ecx, 0xc729f70c
jne 0x140001090
cmp byte [rsp + 0x36], 0
mov ecx, 0x5d4c90d9
mov eax, 0x2d9df233
cmovne ecx, eax
jmp 0x140001090
cmp ecx, 0x23978c21
je 0x140001972
cmp ecx, 0x2d9df233
jne 0x140001090
mov eax, dword [0x14002ec20]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov ecx, 0x49acf636
mov ebx, 0xd4c366c3
cmove ecx, ebx
cmp dword [0x14002ec24], 0xa
mov edx, 0x49acf636
jmp 0x1400018c9
cmp ecx, 0x9bc936a2
je 0x140001981
cmp ecx, 0xa5c28a57
jne 0x140001090
mov ecx, 0xed28fb3d
mov r13d, dword [rsp + 0x6c]
jmp 0x140001090
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
mov rax, qword [rsp + 0x40]
movups xmmword [rax], xmm6
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
mov rax, qword [rsp + 0x50]
movups xmmword [rax], xmm6
mov qword [rsp + 0x58], r12
mov rax, qword [rsp + 0x58]
mov rax, qword [rsp + 0x58]
movups xmmword [rax], xmm6
mov qword [rsp + 0x60], r15
mov rax, qword [rsp + 0x60]
mov rax, qword [rsp + 0x60]
movups xmmword [rax], xmm6
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax]
call fcn.140013b94
mov ecx, dword [0x14002ec20]
mov edi, dword [0x14002ec24]
lea ebx, [rcx - 1]
imul ebx, ecx
not ebx
or ebx, 0xfffffffe
cmp ebx, 0xffffffff
sete cl
cmp edi, 0xa
setl dl
xor dl, cl
mov edx, 0xe0ff350b
mov ebp, 0xc729f70c
cmovne edx, ebp
cmp ebx, 0xffffffff
mov ecx, edx
cmove ecx, ebp
cmp edi, 0xa
cmovge ecx, edx
cmp rax, 0x13
sete byte [rsp + 0x36]
jmp 0x140001090
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax]
mov rcx, rsi
call fcn.140002410
mov qword [rsp + 0x20], r15
mov rcx, rsi
lea rdx, [rsp + 0xf0]
lea r8, [rsp + 0xe0]
mov r9, r12
call fcn.140002930
mov dword [rsp + 0x6c], eax
mov eax, dword [0x14002ec20]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov ecx, 0x909a6a7f
mov ebp, 0xa5c28a57
cmove ecx, ebp
cmp dword [0x14002ec24], 0xa
cmovge ecx, r14d
setl dl
xor dl, al
cmovne ecx, ebp
jmp 0x140001090
mov eax, dword [0x14002ec20]
mov edx, dword [0x14002ec24]
lea ecx, [rax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp edx, 0xa
setl bl
xor bl, al
mov eax, 0xead5c75b
mov ebx, 0x9fe07b3
jmp 0x14000183d
lea rcx, [0x14002e028]
call fcn.1400030c0
mov ecx, 0x6017f920
jmp 0x140001090
test r13d, r13d
mov ecx, 0x8d6e8da5
mov eax, 0x759714d9
cmove ecx, eax
jmp 0x140001090
mov eax, dword [0x14002ec20]
mov edx, dword [0x14002ec24]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete r8b
cmp edx, 0xa
setl bl
xor bl, r8b
mov ebx, 0xe0ff350b
mov edi, 0x6279925a
cmovne ebx, edi
test eax, ecx
mov ecx, ebx
cmove ecx, edi
cmp edx, 0xa
cmovge ecx, ebx
jmp 0x140001090
lea rcx, str._v_rp
call fcn.1400030c0
mov ecx, 0xc9956b6b
jmp 0x140001090
lea rcx, [0x14002e040]
call fcn.1400030c0
mov eax, dword [0x14002ec20]
mov edx, dword [0x14002ec24]
lea ecx, [rax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
cmp edx, 0xa
setl bl
xor bl, al
mov eax, 0xead5c75b
mov ebx, 0x90172c8d
cmovne eax, ebx
cmp ecx, 0xffffffff
mov ecx, eax
cmove ecx, ebx
cmp edx, 0xa
cmovge ecx, eax
jmp 0x140001090
mov ecx, 0x6017f920
jmp 0x140001090
mov eax, dword [0x14002ec20]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
mov ecx, 0x909a6a7f
mov ebx, 0x714f394a
cmove ecx, ebx
cmp dword [0x14002ec24], 0xa
cmovge ecx, r14d
jmp 0x1400018cc
lea rcx, str._v_rp
call fcn.1400030c0
mov eax, dword [0x14002ec20]
lea ecx, [rax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete al
mov ecx, 0x3f6a9ef9
mov ebx, 0x8b37a583
cmove ecx, ebx
cmp dword [0x14002ec24], 0xa
mov edx, 0x3f6a9ef9
cmovge ecx, edx
setl dl
xor dl, al
cmovne ecx, ebx
jmp 0x140001090
movaps xmmword [rsp + 0xf0], xmm6
movaps xmmword [rsp + 0xe0], xmm6
movaps xmmword [rsp + 0xd0], xmm6
movaps xmmword [rsp + 0xc0], xmm6
mov ecx, 0x6279925a
jmp 0x140001090
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x18]
lea rdi, [rsp + 0x100]
mov rcx, rdi
call fcn.140002410
mov qword [rsp + 0x20], r15
mov rcx, rdi
lea rdx, [rsp + 0xf0]
lea r8, [rsp + 0xe0]
mov r9, r12
call fcn.1400034c0
test eax, eax
mov ecx, 0xd2fd1962
mov eax, 0xcb95d16b
cmove ecx, eax
jmp 0x140001090
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ecx, 0xd4c366c3
jmp 0x140001090
mov ecx, 0xf456b3a0
jmp 0x140001090
mov rax, qword [rsp + 0x48]
mov ecx, 0xf456b3a0
jmp 0x140001090
lea rdi, [rsp + 0x210]
mov qword [rsp + 0x48], rdi
mov rax, qword [rsp + 0x48]
mov rax, qword [rsp + 0x48]
movaps xmmword [rax + 0x10], xmm6
movaps xmmword [rax], xmm6
mov qword [rsp + 0x20], rdi
mov dword [rsp + 0x28], 0xf
xor ecx, ecx
xor edx, edx
lea r8, str.e_63__ocmZ
mov r9d, 0xffffffff
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 8]
mov rcx, rdi
call fcn.140013b5c
test eax, eax
mov ecx, 0x1c6fd550
mov eax, 0x8ac18910
cmove ecx, eax
jmp 0x140001090
cmp ecx, 0xf456b3a0
jne 0x140001090
mov rcx, qword [rsp + 0x238]
xor rcx, rsp
call fcn.1400076c0
xor eax, eax
movaps xmm6, xmmword [rsp + 0x240]
add rsp, 0x258
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret