Function at 0x140018530
Capabilities:
Get file version info

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x2b0]
sub rsp, 0x3b0
mov rax, qword [0x1400b1080]
xor rax, rsp
mov qword [rbp + 0x2a0], rax
xor r15d, r15d
mov dword [rsp + 0x20], r15d
call fcn.140018380
mov r8d, eax
xor edx, edx
mov ecx, 0x410
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rdi, rax
test rax, rax
je 0x14001884d
mov r9d, 0x104
lea r8, [rbp + 0x90]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_K32GetModuleFileNameExW]
mov ebx, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x14001884d
xor edx, edx
lea rcx, [rbp + 0x90]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov esi, eax
test eax, eax
je 0x14001884d
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], r15
cmp rsi, 0x1000
jb 0x140018614
lea rcx, [rsi + 0x27]
cmp rcx, rsi
jbe 0x140018881
call fcn.140054fb0
mov rcx, rax
test rax, rax
je 0x14001887b
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14001861c
mov rcx, rsi
call fcn.140054fb0
mov qword [rsp + 0x68], rax
lea rbx, [rax + rsi]
mov qword [rsp + 0x78], rbx
mov r8, rsi
xor edx, edx
mov rcx, rax
call fcn.140082030
mov qword [rsp + 0x70], rbx
mov r9, qword [rsp + 0x68]
mov r8d, esi
xor edx, edx
lea rcx, [rbp + 0x90]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x14001880e
mov qword [rsp + 0x60], r15
lea r9, [rbp - 0x80]
lea r8, [rsp + 0x60]
lea rdx, str.._
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x14001880e
mov rax, qword [rsp + 0x60]
mov edi, dword [rax + 0x10]
mov r14d, dword [rax + 0x14]
mov ebx, edi
shr ebx, 0x10
mov esi, r14d
shr esi, 0x10
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp - 0x70]
call fcn.140082030
lea rcx, [rbp - 0x70]
call fcn.140019720
nop
movzx edx, bx
lea rcx, [rbp - 0x60]
call fcn.140019980
mov rcx, rax
call fcn.14001b920
movzx edx, di
mov rcx, rax
call fcn.140019980
mov rcx, rax
call fcn.14001b920
movzx edx, si
mov rcx, rax
call fcn.140019980
mov rcx, rax
call fcn.14001b920
movzx edx, r14w
mov rcx, rax
call fcn.140019980
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x40], 7
mov word [rsp + 0x28], r15w
mov dword [rsp + 0x20], 2
mov rcx, qword [rbp + 0x18]
mov eax, ecx
and al, 0x22
cmp al, 2
je 0x14001874d
mov rax, qword [rbp - 0x18]
mov rdx, qword [rax]
test rdx, rdx
je 0x14001874d
mov rax, qword [rbp - 0x38]
mov r9, qword [rax]
cmp rdx, qword [rbp + 0x10]
cmovb rdx, qword [rbp + 0x10]
sub rdx, r9
jmp 0x140018775
test cl, 4
jne 0x1400187ad
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax]
test rcx, rcx
je 0x1400187ad
mov rax, qword [rbp - 0x40]
mov r9, qword [rax]
mov rax, qword [rbp - 8]
movsxd rdx, dword [rax]
add rdx, rdx
sub rdx, r9
add rdx, rcx
mov rax, r9
sar rdx, 1
test rax, rax
je 0x1400187ad
lea rcx, [rsp + 0x28]
cmp rdx, 7
ja 0x1400187a7
mov qword [rsp + 0x38], rdx
lea rbx, [rdx + rdx]
mov r8, rbx
mov rdx, r9
call fcn.140081990
mov word [rsp + rbx + 0x28], r15w
jmp 0x1400187ad
call fcn.140016510
nop
lea rdx, [rsp + 0x28]
lea rcx, [0x1400b20f8]
call fcn.140015700
mov rdx, qword [rsp + 0x40]
cmp rdx, 7
jbe 0x140018801
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400187fb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140018887
call fcn.140054fec
nop
lea rcx, [rbp - 0x70]
call fcn.140018890
mov bl, 1
jmp 0x140018810
xor bl, bl
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140018848
mov rdx, qword [rsp + 0x78]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018843
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001887b
call fcn.140054fec
movzx eax, bl
jmp 0x14001884f
xor al, al
mov rcx, qword [rbp + 0x2a0]
xor rcx, rsp
call fcn.140054f90
lea r11, [rsp + 0x3b0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.14005bdf8
int3
call fcn.1400058d0
nop
call fcn.14005bdf8
nop
int3