Function at 0x14000daa0
Capabilities:
Get file version info

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x40]
sub rsp, 0x140
mov rax, qword [0x140083030]
xor rax, rsp
mov qword [rbp + 0x30], rax
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], rdx
xor r15d, r15d
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x34], r15d
mov qword [rsp + 0x38], r15
mov rcx, rdx
cmp qword [rdx + 0x18], 8
jb 0x14000daf5
mov rcx, qword [rdx]
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov esi, eax
mov qword [rdi], r15
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
xor r8d, r8d
lea rdx, [0x14007806e]
mov rcx, rdi
call fcn.1400038c0
mov dword [rsp + 0x30], 1
test esi, esi
je 0x14000e069
mov ecx, esi
call fcn.14003b900
mov r14, rax
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x14000db4a
mov rcx, qword [rbx]
mov r9, r14
mov r8d, esi
xor edx, edx
call qword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x14000e060
lea r9, [rsp + 0x34]
lea r8, [rsp + 0x38]
lea rdx, [0x14007827c]
mov rcx, r14
call qword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x14000e060
cmp dword [rsp + 0x34], 0
je 0x14000e060
mov rsi, qword [rsp + 0x38]
cmp dword [rsi], 0xfeef04bd
jne 0x14000e060
movzx r8d, word [rsi + 0xe]
lea r9, [rbp - 0x5b]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14000dbb0
mov qword [rbp - 0x10], r15
mov qword [rbp], r15
mov qword [rbp + 8], 0xf
mov byte [rbp - 0x10], dl
lea rax, [rbp - 0x5b]
cmp r9, rax
je 0x14000dc09
lea r8, [rbp - 0x5b]
sub r8, r9
mov rdx, r9
lea rcx, [rbp - 0x10]
call fcn.1400038c0
mov dword [rsp + 0x30], 7
movzx r8d, word [rsi + 8]
lea r9, [rbp - 0x3b]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14000dc20
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], dl
lea rax, [rbp - 0x3b]
cmp r9, rax
je 0x14000dc79
lea r8, [rbp - 0x3b]
sub r8, r9
mov rdx, r9
lea rcx, [rbp - 0x30]
call fcn.1400038c0
mov dword [rsp + 0x30], 0x1f
movzx r8d, word [rsi + 0xa]
lea r9, [rbp - 0x5b]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14000dc90
mov qword [rsp + 0x50], r15
mov rdx, r15
mov qword [rsp + 0x60], rdx
mov r8d, 0xf
mov qword [rsp + 0x68], r8
mov byte [rsp + 0x50], dl
lea rax, [rbp - 0x5b]
cmp r9, rax
je 0x14000dcfd
lea r8, [rbp - 0x5b]
sub r8, r9
mov rdx, r9
lea rcx, [rsp + 0x50]
call fcn.1400038c0
mov r8, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x60]
mov dword [rsp + 0x30], 0x7f
mov rax, r8
sub rax, rdx
lea rcx, [rsp + 0x50]
cmp rax, 1
jb 0x14000dd3f
lea rax, [rdx + 1]
mov qword [rsp + 0x60], rax
cmp r8, 0x10
cmovae rcx, qword [rsp + 0x50]
movzx eax, byte [0x14007912c]
mov byte [rcx + rdx], al
mov byte [rcx + rdx + 1], 0
lea rax, [rsp + 0x50]
jmp 0x14000dd59
mov qword [rsp + 0x20], 1
lea r9, [0x14007912c]
mov edx, 1
call fcn.14000c520
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x10], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x20], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov dword [rsp + 0x30], 0xff
lea r9, [rbp - 0x30]
lea r8, [rbp + 0x10]
lea rcx, [rsp + 0x70]
call fcn.14000c040
mov dword [rsp + 0x30], 0x1ff
mov rdx, qword [rbp - 0x80]
mov r8, qword [rbp - 0x78]
mov rax, r8
sub rax, rdx
lea rcx, [rsp + 0x70]
cmp rax, 1
jb 0x14000ddda
lea rax, [rdx + 1]
mov qword [rbp - 0x80], rax
cmp r8, 0x10
cmovae rcx, qword [rsp + 0x70]
movzx eax, byte [0x14007912c]
mov byte [rcx + rdx], al
mov byte [rcx + rdx + 1], 0
lea rax, [rsp + 0x70]
jmp 0x14000ddf4
mov qword [rsp + 0x20], 1
lea r9, [0x14007912c]
mov edx, 1
call fcn.14000c520
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x60], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov dword [rsp + 0x30], 0x3ff
lea r9, [rbp - 0x10]
lea r8, [rbp - 0x70]
lea rcx, [rbp - 0x50]
call fcn.14000c040
lea rax, [rbp - 0x50]
cmp rdi, rax
je 0x14000de93
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x14000de6e
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x14000de69
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14000e0e6
mov rcx, r8
call fcn.14003b67c
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
movups xmm0, xmmword [rbp - 0x50]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbp - 0x40]
movups xmmword [rdi + 0x10], xmm1
mov edx, 0xf
mov byte [rbp - 0x50], 0
jmp 0x14000de97
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x14000decf
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000dec9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000e0e6
call fcn.14003b67c
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14000df0b
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000df05
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000e0ec
call fcn.14003b67c
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x14000df47
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000df42
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000e0f2
call fcn.14003b67c
mov qword [rbp - 0x80], r15
mov qword [rbp - 0x78], 0xf
mov byte [rsp + 0x70], 0
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x14000df94
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000df8e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000e0f8
call fcn.14003b67c
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x14000dfd1
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000dfcc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000e0fe
call fcn.14003b67c
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], 0xf
mov byte [rsp + 0x50], 0
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x14000e020
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000e01a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000e104
call fcn.14003b67c
nop
mov rdx, qword [rbp + 8]
cmp rdx, 0x10
jb 0x14000e060
inc rdx
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000e056
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000e0da
call fcn.14003b67c
nop dword [rax + rax]
mov rcx, r14
call fcn.14003b67c
nop
mov rdx, qword [rbx + 0x18]
cmp rdx, 8
jb 0x14000e0a4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x14000e09f
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14000e0e0
mov rcx, r8
call fcn.14003b67c
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 7
mov word [rbx], r15w
mov rax, rdi
mov rcx, qword [rbp + 0x30]
xor rcx, rsp
call fcn.14003b550
mov rbx, qword [rsp + 0x180]
add rsp, 0x140
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.140047598
nop
call fcn.140047598
nop
call fcn.140047598
nop
call fcn.140047598
nop
call fcn.140047598
nop
call fcn.140047598
nop
call fcn.140047598
nop
call fcn.140047598
int3