Function at 0x14001f8e4
Capabilities:
Get file version info

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x57]
sub rsp, 0xd0
xor r14d, r14d
mov r13, r9
and dword [rbp + 0x5f], r14d
mov r12, r8
cmp qword [rcx + 0x18], 0x10
mov r15, rdx
mov rbx, rcx
jb 0x14001f924
mov rcx, qword [rcx]
lea rdx, [rbp + 0x5f]
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov edi, eax
test eax, eax
je 0x14001fb7e
mov edx, edi
mov ecx, 0x40
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rsi, rax
test rax, rax
je 0x14001fb7e
and qword [rbp - 0x69], r14
lea rcx, [rbp - 0x51]
xor edx, edx
mov r8d, 0x80
call fcn.14003a5c0
cmp qword [rbx + 0x18], 0x10
jb 0x14001f971
mov rcx, qword [rbx]
jmp 0x14001f974
mov rcx, rbx
mov edx, dword [rbp + 0x5f]
mov r9, rsi
mov r8d, edi
call sub.VERSION.dll_GetFileVersionInfoA
test eax, eax
je 0x14001fb75
lea r9, [rbp - 0x61]
mov rcx, rsi
lea r8, [rbp - 0x59]
lea rdx, [0x14009db0c]
call sub.VERSION.dll_VerQueryValueA
test eax, eax
je 0x14001fb75
lea r9, [rbp - 0x5d]
mov rcx, rsi
lea r8, [rbp - 0x69]
lea rdx, str.VarFileInfoTranslation
call sub.VERSION.dll_VerQueryValueA
test eax, eax
je 0x14001fb75
test r15, r15
je 0x14001fa31
mov rax, qword [rbp - 0x69]
lea rdx, str.StringFileInfo_04x_04x_s
lea rcx, [rbp - 0x51]
movzx r9d, word [rax + 2]
movzx r8d, word [rax]
lea rax, [0x1400a0830]
mov qword [rsp + 0x20], rax
call fcn.1400055a4
xor r9d, r9d
lea r8, [rbp - 0x71]
lea rdx, [rbp - 0x51]
mov rcx, rsi
call sub.VERSION.dll_VerQueryValueA
test eax, eax
je 0x14001fa31
mov rdi, qword [rbp - 0x71]
cmp byte [rdi], r14b
jne 0x14001fa1b
mov rax, r14
jmp 0x14001fa23
mov rcx, rdi
call fcn.140045e50
mov r8, rax
mov rdx, rdi
mov rcx, r15
call fcn.140004d8c
test r12, r12
je 0x14001fa9a
mov rax, qword [rbp - 0x69]
lea rdx, str.StringFileInfo_04x_04x_s
lea rcx, [rbp - 0x51]
movzx r9d, word [rax + 2]
movzx r8d, word [rax]
lea rax, [0x1400a0860]
mov qword [rsp + 0x20], rax
call fcn.1400055a4
xor r9d, r9d
lea r8, [rbp - 0x71]
lea rdx, [rbp - 0x51]
mov rcx, rsi
call sub.VERSION.dll_VerQueryValueA
test eax, eax
je 0x14001fa9a
mov rdi, qword [rbp - 0x71]
cmp byte [rdi], r14b
jne 0x14001fa84
mov rax, r14
jmp 0x14001fa8c
mov rcx, rdi
call fcn.140045e50
mov r8, rax
mov rdx, rdi
mov rcx, r12
call fcn.140004d8c
test r13, r13
je 0x14001fb03
mov rax, qword [rbp - 0x69]
lea rdx, str.StringFileInfo_04x_04x_s
lea rcx, [rbp - 0x51]
movzx r9d, word [rax + 2]
movzx r8d, word [rax]
lea rax, [0x1400a0870]
mov qword [rsp + 0x20], rax
call fcn.1400055a4
xor r9d, r9d
lea r8, [rbp - 0x71]
lea rdx, [rbp - 0x51]
mov rcx, rsi
call sub.VERSION.dll_VerQueryValueA
test eax, eax
je 0x14001fb03
mov rdi, qword [rbp - 0x71]
cmp byte [rdi], r14b
jne 0x14001faed
mov rax, r14
jmp 0x14001faf5
mov rcx, rdi
call fcn.140045e50
mov r8, rax
mov rdx, rdi
mov rcx, r13
call fcn.140004d8c
mov r14, qword [rbp + 0x7f]
test r14, r14
je 0x14001fb6f
mov rax, qword [rbp - 0x69]
lea rdx, str.StringFileInfo_04x_04x_s
lea rcx, [rbp - 0x51]
movzx r9d, word [rax + 2]
movzx r8d, word [rax]
lea rax, [0x1400a0ab0]
mov qword [rsp + 0x20], rax
call fcn.1400055a4
xor r9d, r9d
lea r8, [rbp - 0x71]
lea rdx, [rbp - 0x51]
mov rcx, rsi
call sub.VERSION.dll_VerQueryValueA
test eax, eax
je 0x14001fb6f
mov rdi, qword [rbp - 0x71]
cmp byte [rdi], 0
jne 0x14001fb59
xor eax, eax
jmp 0x14001fb61
mov rcx, rdi
call fcn.140045e50
mov r8, rax
mov rdx, rdi
mov rcx, r14
call fcn.140004d8c
mov r14d, 1
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x14001fb99
mov rcx, qword [rbx]
inc rdx
mov r8d, 1
call fcn.140004554
mov qword [rbx + 0x18], reloc.WSOCK32.dll_ntohs
and qword [rbx + 0x10], 0
cmp qword [rbx + 0x18], 0x10
jb 0x14001fbb0
mov rbx, qword [rbx]
lea r11, [rsp + 0xd0]
mov byte [rbx], 0
mov rbx, qword [r11 + 0x38]
mov eax, r14d
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret