Function at 0x1400297e0
Capabilities:
Get file version info

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rax, qword [0x1400850b0]
xor rax, rsp
mov qword [rbp + 0x28], rax
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], rdx
xor r15d, r15d
mov dword [rsp + 0x20], r15d
mov dword [rsp + 0x24], r15d
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x30], r15
mov rcx, rdx
cmp qword [rdx + 0x18], 0x10
jb 0x14002983a
mov rcx, qword [rdx]
lea rdx, [rsp + 0x24]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoSizeA]
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, [0x14007204b]
mov rcx, rdi
call fcn.140007b00
mov dword [rsp + 0x20], 1
test esi, esi
je 0x140029cb9
mov ecx, esi
call fcn.140031f2c
mov r14, rax
mov rcx, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x140029892
mov rcx, qword [rbx]
mov r9, r14
mov r8d, esi
mov edx, dword [rsp + 0x24]
call qword [sym.imp.VERSION.dll_GetFileVersionInfoA]
test eax, eax
je 0x140029cb0
lea r9, [rsp + 0x28]
lea r8, [rsp + 0x30]
lea rdx, [0x1400792c8]
mov rcx, r14
call qword [sym.imp.VERSION.dll_VerQueryValueA]
test eax, eax
je 0x140029cb0
cmp dword [rsp + 0x28], 0
je 0x140029cb0
mov rsi, qword [rsp + 0x30]
cmp dword [rsi], 0xfeef04bd
jne 0x140029cb0
movzx r8d, word [rsi + 0xe]
lea r9, [rsp + 0x5d]
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 0x1400298f2
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x28], r15
mov qword [rbp - 0x20], 0xf
mov byte [rbp - 0x38], dl
lea rax, [rsp + 0x5d]
cmp r9, rax
je 0x14002994d
lea r8, [rsp + 0x5d]
sub r8, r9
mov rdx, r9
lea rcx, [rbp - 0x38]
call fcn.140007b00
mov dword [rsp + 0x20], 7
movzx r8d, word [rsi + 8]
lea r9, [rbp - 0x63]
nop
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 0x140029960
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x40], 0xf
mov byte [rbp - 0x58], dl
lea rax, [rbp - 0x63]
cmp r9, rax
je 0x1400299b9
lea r8, [rbp - 0x63]
sub r8, r9
mov rdx, r9
lea rcx, [rbp - 0x58]
call fcn.140007b00
mov dword [rsp + 0x20], 0x1f
movzx r8d, word [rsi + 0xa]
lea r9, [rsp + 0x5d]
nop dword [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 0x1400299d0
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], 0xf
mov byte [rsp + 0x68], dl
lea rax, [rsp + 0x5d]
cmp r9, rax
je 0x140029a2f
lea r8, [rsp + 0x5d]
sub r8, r9
mov rdx, r9
lea rcx, [rsp + 0x68]
call fcn.140007b00
mov dword [rsp + 0x20], 0x7f
mov r8d, 1
lea rdx, [0x1400720e0]
lea rcx, [rsp + 0x68]
call fcn.140007c60
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x48], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x58], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov dword [rsp + 0x20], 0xff
lea r9, [rbp - 0x58]
lea r8, [rsp + 0x48]
lea rcx, [rbp - 0x18]
call fcn.14000a030
mov dword [rsp + 0x20], 0x1ff
mov r8d, 1
lea rdx, [0x1400720e0]
lea rcx, [rbp - 0x18]
call fcn.140007c60
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x68], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov dword [rsp + 0x20], 0x3ff
lea r9, [rbp - 0x38]
lea r8, [rbp - 0x78]
lea rcx, [rbp + 8]
call fcn.14000a030
lea rdx, [rbp + 8]
mov rcx, rdi
call fcn.140006ad0
mov rdx, qword [rbp + 0x20]
cmp rdx, 0x10
jb 0x140029b25
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029b1f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029d30
call fcn.140031c90
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x140029b61
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029b5b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029d36
call fcn.140031c90
nop
mov rdx, qword [rbp]
cmp rdx, 0x10
jb 0x140029b9c
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029b97
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029d3c
call fcn.140031c90
mov qword [rbp - 8], r15
mov qword [rbp], 0xf
mov byte [rbp - 0x18], 0
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x140029bea
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029be4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029d42
call fcn.140031c90
nop
mov rdx, qword [rbp - 0x80]
cmp rdx, 0x10
jb 0x140029c26
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029c21
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029d48
call fcn.140031c90
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], 0xf
mov byte [rsp + 0x68], 0
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x140029c74
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029c6e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029d4e
call fcn.140031c90
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 0x10
jb 0x140029cb0
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140029ca6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140029d24
call fcn.140031c90
nop dword [rax + rax]
mov rcx, r14
call fcn.140031c90
nop
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x140029cef
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x140029cea
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140029d2a
mov rcx, r8
call fcn.140031c90
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rax, rdi
mov rcx, qword [rbp + 0x28]
xor rcx, rsp
call fcn.140031c70
mov rbx, qword [rsp + 0x170]
add rsp, 0x130
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.1400447c4
nop
call fcn.1400447c4
nop
call fcn.1400447c4
nop
call fcn.1400447c4
nop
call fcn.1400447c4
nop
call fcn.1400447c4
nop
call fcn.1400447c4
nop
call fcn.1400447c4
int3