Function at 0x14014399d
Capabilities:
Get file version info

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov r15, r9
mov r14, r8
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x14028f028]
xor rax, rsp
mov qword [rsp + 0x60], rax
cmp byte [rdx + 0x17], 0
jns 0x1401439db
mov qword [rdi + 8], 6
mov rax, qword [rdi]
jmp 0x1401439e2
mov byte [rdi + 0x17], 6
mov rax, rdi
mov ecx, dword [0x14025eaa2]
mov dword [rax + 8], ecx
mov rcx, qword [str.MSEdge]
mov qword [rax], rcx
mov word [rax + 0xc], 0
lea rdx, str.0.0.0.0_devel
mov r8d, 0xd
mov rcx, r14
call fcn.14000da98
cmp byte [r15 + 0x17], 0
js 0x140143cbb
mov word [r15], 0
mov byte [r15 + 0x17], 0
mov dword [rsp + 0x5c], 0
cmp byte [rsi + 0x17], 0
mov rcx, rsi
jns 0x140143a3a
mov rcx, qword [rsi]
mov r12, qword [rsp + 0xd0]
lea rdx, [rsp + 0x5c]
call sub.VERSION.dll_GetFileVersionInfoSizeW
test eax, eax
je 0x140143c40
mov ebp, eax
mov ecx, eax
call fcn.1400ca15c
mov rbx, rax
mov edx, dword [rsp + 0x5c]
cmp byte [rsi + 0x17], 0
jns 0x140143a6d
mov rsi, qword [rsi]
mov rcx, rsi
mov r8d, ebp
mov r9, rbx
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x140143c33
movabs r13, 0x8000000000000010
mov ecx, 0x20
call fcn.1400c9cbc
lea rsi, [rsp + 0x40]
mov qword [rsi], rax
mov qword [rsi + 0x10], r13
mov qword [rsi + 8], 0xe
movups xmm0, xmmword [0x14025ca42]
movups xmmword [rax + 0xc], xmm0
movups xmm0, xmmword [0x14025ca36]
movups xmmword [rax], xmm0
mov word [rax + 0x1c], 0
mov rcx, rbx
mov rdx, rsi
mov r8, r14
call fcn.140143ced
cmp byte [rsi + 0x17], 0
jns 0x140143ae4
mov rcx, qword [rsp + 0x40]
call fcn.1400c9cac
xorps xmm0, xmm0
lea rsi, [rsp + 0x40]
movaps xmmword [rsi], xmm0
mov qword [rsi + 0x10], 0
mov ecx, 0x20
call fcn.1400c9cbc
lea rbp, [rsp + 0x28]
mov qword [rbp], rax
mov qword [rbp + 0x10], r13
mov qword [rbp + 8], 0xe
movups xmm0, xmmword [0x14025ea06]
movups xmmword [rax + 0xc], xmm0
movups xmm0, xmmword [0x14025e9fa]
movups xmmword [rax], xmm0
mov word [rax + 0x1c], 0
mov rcx, rbx
mov rdx, rbp
mov r8, rsi
call fcn.140143ced
cmp byte [rbp + 0x17], 0
jns 0x140143b4f
mov rcx, qword [rsp + 0x28]
call fcn.1400c9cac
movzx eax, byte [rsp + 0x57]
test al, al
jns 0x140143b5d
mov rax, qword [rsp + 0x48]
cmp rax, 1
je 0x140143c8b
lea rdx, [0x14025ea18]
mov rcx, r14
call fcn.140099f6e
mov ecx, 0x30
call fcn.1400c9cbc
lea rsi, [rsp + 0x28]
mov qword [rsi], rax
lea rcx, [r13 + 8]
mov qword [rsi + 0x10], rcx
mov qword [rsi + 8], 0x10
movups xmm0, xmmword [0x14025ca24]
movups xmmword [rax + 0x10], xmm0
movups xmm0, xmmword [0x14025ca14]
movups xmmword [rax], xmm0
mov word [rax + 0x20], 0
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
call fcn.140143ced
cmp byte [rsi + 0x17], 0
jns 0x140143bd1
mov rcx, qword [rsp + 0x28]
call fcn.1400c9cac
mov ecx, 0x20
call fcn.1400c9cbc
lea rsi, [rsp + 0x28]
mov qword [rsi], rax
mov qword [rsi + 0x10], r13
mov qword [rsi + 8], 0xc
mov rcx, qword [0x14025cabe]
mov qword [rax + 0x10], rcx
movups xmm0, xmmword [str.SpecialBuild]
movups xmmword [rax], xmm0
mov word [rax + 0x18], 0
mov rcx, rbx
mov rdx, rsi
mov r8, r15
call fcn.140143ced
cmp byte [rsi + 0x17], 0
jns 0x140143c28
mov rcx, qword [rsp + 0x28]
call fcn.1400c9cac
cmp byte [rsp + 0x57], 0
js 0x140143cd0
test rbx, rbx
je 0x140143c40
mov rcx, rbx
call fcn.1400c9cb4
lea rcx, [rsp + 0x40]
mov dl, 1
call fcn.14013f24d
cmp byte [r12 + 0x17], 0
js 0x140143cdf
mov rax, qword [rsp + 0x50]
mov qword [r12 + 0x10], rax
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [r12], xmm0
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1400ccfe0
nop
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x20], 1
lea r9, [0x14025729a]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8, 0xffffffffffffffff
call fcn.1400a0fe2
test eax, eax
jne 0x140143b67
jmp 0x140143b76
mov rax, qword [r15]
mov word [rax], 0
mov qword [r15 + 8], 0
jmp 0x140143a26
mov rcx, qword [rsp + 0x40]
call fcn.1400c9cac
jmp 0x140143c33
mov rcx, qword [r12]
call fcn.1400c9cac
jmp 0x140143c58