Function at 0x140001c70
Capabilities:
Get file version info

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov r12, rdx
mov r14, rcx
mov dword [rbp + 0x50], 1
call fcn.140001f50
mov rcx, rax
test rax, rax
je 0x140001f2e
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [r14], rax
mov dword [rbp + 0x50], 1
xor edx, edx
mov rcx, qword [r12]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov r15d, eax
test eax, eax
jne 0x140001d48
lea rax, [rbp - 0x40]
mov qword [rbp - 0x30], rax
call fcn.140001f50
mov rcx, rax
test rax, rax
je 0x140001f39
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x40], rax
lea rdx, [0x140060a04]
cmp rdx, 0x10000
jae 0x140001d15
movzx edx, dx
lea rcx, [rbp - 0x40]
call fcn.140002180
jmp 0x140001d35
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x140001d20
lea rcx, [rbp - 0x40]
call fcn.1400025b0
nop
lea r8, [rbp - 0x40]
xor edx, edx
lea ecx, [rdx + 1]
call fcn.1400026f0
jmp 0x140001f08
xor r13d, r13d
mov ebx, r13d
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x18], r13
mov dword [rbp - 0x10], r13d
test eax, eax
jne 0x140001d6f
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x18], r13
mov esi, r13d
jmp 0x140001d9e
mov edx, 1
mov rcx, r15
call fcn.140016184
mov rbx, rax
mov rsi, rax
mov qword [rbp - 0x28], rax
test rax, rax
je 0x140001d9e
mov qword [rbp - 0x18], r15
mov rdx, r15
mov rcx, rax
call fcn.1400016f0
mov qword [rbp - 0x20], r15
mov r9, rbx
mov r8d, r15d
xor edx, edx
mov rcx, qword [r12]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
jne 0x140001e2e
lea rax, [rbp - 0x40]
mov qword [rbp - 0x30], rax
call fcn.140001f50
mov rcx, rax
test rax, rax
je 0x140001f44
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x40], rax
lea rdx, [0x140060a04]
cmp rdx, 0x10000
jae 0x140001df8
movzx edx, dx
lea rcx, [rbp - 0x40]
call fcn.140002180
jmp 0x140001e15
mov r8, 0xffffffffffffffff
nop
inc r8
cmp word [rdx + r8*2], 0
jne 0x140001e00
lea rcx, [rbp - 0x40]
call fcn.1400025b0
nop
lea r8, [rbp - 0x40]
mov edx, 1
mov ecx, edx
call fcn.1400026f0
nop
test rbx, rbx
jmp 0x140001efd
mov dword [rbp + 0x58], r13d
mov qword [rbp - 0x38], r13
lea r9, [rbp + 0x58]
lea r8, [rbp - 0x38]
lea rdx, [0x140060a00]
mov rcx, rbx
call sub.VERSION.dll_VerQueryValueW
test eax, eax
jne 0x140001ecc
lea rax, [rbp - 0x40]
mov qword [rbp - 0x30], rax
call fcn.140001f50
mov rcx, rax
test rax, rax
je 0x140001f23
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rbp - 0x40], rax
lea rdx, [0x140060a04]
cmp rdx, 0x10000
jae 0x140001e96
movzx edx, dx
lea rcx, [rbp - 0x40]
call fcn.140002180
jmp 0x140001eb5
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x140001ea0
lea rcx, [rbp - 0x40]
call fcn.1400025b0
nop
lea r8, [rbp - 0x40]
mov edx, 2
lea ecx, [rdx - 1]
call fcn.1400026f0
nop
test rbx, rbx
jmp 0x140001efd
mov rax, qword [rbp - 0x38]
movzx r8d, word [rax + 0x12]
movzx r9d, word [rax + 0x10]
movzx ecx, word [rax + 0x16]
movzx eax, word [rax + 0x14]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
lea rdx, str._d._d._d._d
mov rcx, r14
call fcn.1400018a0
nop
test rsi, rsi
je 0x140001f08
mov rcx, rbx
call fcn.14001618c
nop
mov rax, r14
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80004005
call fcn.1400016c0
nop
mov ecx, 0x80004005
call fcn.1400016c0
nop
mov ecx, 0x80004005
call fcn.1400016c0
nop
mov ecx, 0x80004005
call fcn.1400016c0
int3