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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xe0
mov rax, qword [0x140241cc0]
xor rax, rsp
mov qword [rbp + 7], rax
mov r15, qword [rbp + 0x57]
mov qword [rbp - 0x49], r15
mov rbx, qword [rbp + 0x5f]
mov rsi, qword [rbp + 0x6f]
mov qword [rbp - 0x49], rsi
xor r12d, r12d
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x29], rax
lea rcx, [rbp - 0x39]
call fcn.1400587c0
nop
mov r8, qword [rbp - 0x39]
mov r10, qword [rbp - 0x31]
cmp r8, r10
je 0x140059168
mov r11, qword [rbx + 0x18]
mov rdi, qword [rbx + 0x10]
nop
mov rax, rbx
cmp r11, 7
jbe 0x140058e4c
mov rax, qword [rbx]
mov rdx, qword [r8 + 0x10]
mov r9, r8
cmp qword [r8 + 0x18], 7
jbe 0x140058e5d
mov r9, qword [r8]
cmp rdx, rdi
jne 0x14005911b
test rdx, rdx
je 0x140058e88
sub r9, rax
nop
movzx ecx, word [rax + r9]
cmp cx, word [rax]
jne 0x14005911b
add rax, 2
sub rdx, 1
jne 0x140058e70
cmp r8, r10
je 0x140059168
lea rcx, [rbp - 0x39]
call fcn.140025680
mov rdx, rbx
lea rcx, [rbp - 0x69]
call fcn.140057b70
nop
mov rdx, rax
lea rcx, [rbp - 0x19]
call fcn.140050290
nop
lea rcx, [rbp - 0x69]
call fcn.140025f00
cmp qword [rbp - 9], 0
je 0x140059129
lea rcx, [rbp - 0x19]
cmp qword [rbp - 1], 7
cmova rcx, qword [rbp - 0x19]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x140059129
test al, 0x10
jne 0x140059129
lea rdx, [rbp - 0x19]
lea rcx, [rsp + 0x30]
call fcn.140025a50
mov rdx, rax
mov rcx, rsi
call fcn.14004fe90
mov rdi, qword [rbp + 0x67]
mov r14, qword [rdi + 0x10]
test r14, r14
je 0x140058fb7
cmp qword [rdi + 0x18], 7
jbe 0x140058f21
mov rdi, qword [rdi]
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], r14
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
lea rdx, [rsp + 0x20]
mov rcx, rsi
call fcn.140031be0
test rax, rax
jne 0x140058f99
lea rax, [rbp - 0x39]
mov qword [rbp - 0x79], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x29], r12
mov qword [rbp - 0x21], 7
mov word [rbp - 0x39], r12w
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], r12
mov r8, r14
mov rdx, rdi
lea rcx, [rsp + 0x30]
call fcn.140025740
nop
lea r8, [rbp - 0x39]
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.14004fd50
cmp rax, rbx
je 0x140058fb7
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 7
jbe 0x140058fac
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, rax
call fcn.140025db0
cmp byte [rbp + 0x77], 0
je 0x140059049
lea rbx, str.silent
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], 6
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
lea rdx, [rsp + 0x20]
mov rcx, rsi
call fcn.140031be0
test rax, rax
jne 0x140059049
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], 7
mov word [rsp + 0x30], r12w
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x29], r12
mov qword [rbp - 0x21], r12
mov r8d, 6
mov rdx, rbx
lea rcx, [rbp - 0x39]
call fcn.140025740
nop
lea r8, [rsp + 0x30]
lea rdx, [rbp - 0x39]
mov rcx, rsi
call fcn.14004fd50
mov byte [r15 + 0x20], 0
cmp byte [rsi + 0x20], 0
je 0x140059088
xorps xmm0, xmm0
movups xmmword [r15], xmm0
mov qword [r15 + 0x10], r12
mov qword [r15 + 0x18], r12
movups xmm0, xmmword [rsi]
movups xmmword [r15], xmm0
movups xmm1, xmmword [rsi + 0x10]
movups xmmword [r15 + 0x10], xmm1
mov qword [rsi + 0x10], r12
mov qword [rsi + 0x18], 7
mov word [rsi], r12w
mov byte [r15 + 0x20], 1
mov rdx, qword [rsi + 0x38]
mov qword [rsi + 0x38], r12
mov rcx, qword [rsi + 0x30]
mov qword [rsi + 0x30], r12
mov rax, qword [rsi + 0x28]
mov qword [rsi + 0x28], r12
mov qword [r15 + 0x28], rax
mov qword [r15 + 0x30], rcx
mov qword [r15 + 0x38], rdx
mov r8, qword [rsi + 0x50]
mov qword [rsi + 0x50], r12
mov rdx, qword [rsi + 0x48]
mov qword [rsi + 0x48], r12
mov rax, qword [rsi + 0x40]
mov qword [rsi + 0x40], r12
mov qword [r15 + 0x40], rax
mov qword [r15 + 0x48], rdx
mov qword [r15 + 0x50], r8
lea rcx, [rbp - 0x19]
call fcn.140025f00
nop
lea rcx, [rsi + 0x40]
call fcn.140025680
lea rcx, [rsi + 0x28]
call fcn.14004fca0
cmp byte [rsi + 0x20], 0
je 0x1400590fa
mov rcx, rsi
call fcn.140025f00
mov rax, r15
mov rcx, qword [rbp + 7]
xor rcx, rsp
call fcn.140144310
add rsp, 0xe0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
add r8, 0x20
cmp r8, r10
je 0x140059168
jmp 0x140058e40
lea rax, str.File_not_found.
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], reloc.WS2_32.dll_send
lea r9, [rbp - 0x19]
lea r8, [rsp + 0x20]
mov edx, 2
lea rcx, [rsp + 0x30]
call fcn.140058a80
lea rdx, [0x14023da00]
lea rcx, [rsp + 0x30]
call fcn.14015a550
nop
lea rax, str.Product_ID__is_invalid.
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0x1b
mov r9, rbx
lea r8, [rsp + 0x20]
mov edx, 0xb001
lea rcx, [rbp - 0x69]
call fcn.140058a80
lea rdx, [0x14023da00]
lea rcx, [rbp - 0x69]
call fcn.14015a550
int3