Function at 0x14008d750
Capabilities:
Get file version info

Disassembly:
sub rsp, 0x2f8
mov rax, qword [0x1401cf518]
xor rax, rsp
mov qword [rsp + 0x2e0], rax
lea rdx, [0x1401551c0]
lea rcx, [rsp + 0x78]
call fcn.140003570
nop
lea rdx, [rsp + 0x78]
lea rcx, [0x1401d7c10]
call fcn.1400bc030
mov byte [rsp + 0x30], al
lea rcx, [rsp + 0x78]
call fcn.140003860
movzx eax, byte [rsp + 0x30]
test eax, eax
je 0x14008d7af
lea rcx, str._nPrintBanner
call fcn.14000ad70
mov ecx, 0xa
call fcn.14007a320
lea rcx, [0x1401d7390]
call fcn.1400b3ed0
mov rdx, rax
lea rcx, [0x1401551e0]
call fcn.14000ad70
mov dword [rsp + 0xc0], 0
mov dword [rsp + 0xc4], 0
mov qword [rsp + 0xb8], 0
mov r8d, 0x104
lea rdx, [rsp + 0xd0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0xd0]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [rsp + 0x44], eax
cmp dword [rsp + 0x44], 0
je 0x14008da38
mov eax, dword [rsp + 0x44]
mov ecx, eax
call fcn.140102250
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x48], rax
mov r9, qword [rsp + 0x48]
mov r8d, dword [rsp + 0x44]
mov edx, dword [rsp + 0xc0]
lea rcx, [rsp + 0xd0]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x14008d9fe
lea r9, [rsp + 0xc4]
lea r8, [rsp + 0xb8]
lea rdx, [0x1401551ec]
mov rcx, qword [rsp + 0x48]
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x14008d9fe
cmp dword [rsp + 0xc4], 0
je 0x14008d9fe
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x38]
cmp dword [rax], 0xfeef04bd
jne 0x14008d9fe
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
and eax, 0xffff
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 0xc]
shr ecx, 0x10
and ecx, 0xffff
mov rdx, qword [rsp + 0x38]
mov edx, dword [rdx + 8]
and edx, 0xffff
mov r8, qword [rsp + 0x38]
mov r8d, dword [r8 + 8]
shr r8d, 0x10
and r8d, 0xffff
mov dword [rsp + 0x50], r8d
mov dword [rsp + 0x20], eax
mov r9d, ecx
mov r8d, edx
mov eax, dword [rsp + 0x50]
mov edx, eax
lea rcx, str.File_Version:__d._d._d._d_n
call fcn.14000ad70
lea rdx, [0x140155218]
lea rcx, [rsp + 0x98]
call fcn.140003570
nop
lea rdx, [rsp + 0x98]
lea rcx, [0x1401d7c10]
call fcn.1400bc030
mov byte [rsp + 0x31], al
lea rcx, [rsp + 0x98]
call fcn.140003860
movzx eax, byte [rsp + 0x31]
test eax, eax
je 0x14008d9fe
mov r8d, 0x1000
xor edx, edx
lea rcx, [0x1401d1a00]
call fcn.1401044f0
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0xc]
and eax, 0xffff
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 0xc]
shr ecx, 0x10
and ecx, 0xffff
mov rdx, qword [rsp + 0x38]
mov edx, dword [rdx + 8]
and edx, 0xffff
mov r8, qword [rsp + 0x38]
mov r8d, dword [r8 + 8]
shr r8d, 0x10
and r8d, 0xffff
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov r9d, edx
lea rdx, str._p_File_Version:__d._d._d._d__p_
lea rcx, [0x1401d1a00]
call fcn.14002e760
lea rdx, [0x1401d1a00]
lea rcx, [0x1401d7940]
call fcn.14000f800
lea rcx, [0x1401d7940]
call fcn.1400bc980
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x58]
call fcn.140101c84
cmp qword [rsp + 0x58], 0
jne 0x14008da25
mov qword [rsp + 0x68], 0
jmp 0x14008da38
mov qword [rsp + 0x48], 0x8123
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x68], rax
movzx eax, word [0x1401d2a18]
mov word [rsp + 0x40], ax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov qword [rsp + 0x70], rax
movzx edx, word [rsp + 0x40]
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rcx, qword [rsp + 0x2e0]
xor rcx, rsp
call fcn.140101e00
add rsp, 0x2f8
ret