Function at 0x416370
Capabilities:
Get file version info

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x3c
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
call fcn.00443940
sub esp, 4
call fcn.004438e0
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
lea eax, [esp + 0x50]
mov dword [esp], eax
call fcn.00443d50
sub esp, 8
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x10], 0
call fcn.00443980
call fcn.00443980
call fcn.004439d0
mov dword [esp + 4], eax
mov dword [esp], pe_nt_image_headers32
call fcn.00440f50
sub esp, 8
call fcn.004439d0
mov dword [esp + 4], eax
lea eax, [esp + 0x28]
mov dword [esp], eax
call fcn.00443b80
sub esp, 8
mov dword [esp + 4], 0x45a954
lea edi, [esp + 0x20]
mov dword [esp], edi
call fcn.00443ca0
sub esp, 8
mov eax, dword [esp + 0x50]
mov dword [esp], eax
call fcn.0043ab11
sub esp, 4
mov ecx, eax
xor eax, eax
cmp eax, ecx
sbb eax, edx
jge 0x4164be
lea eax, [esp + 0x18]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x50]
mov dword [esp], eax
call sub.VERSION.dll_GetFileVersionInfoSizeW
sub esp, 8
test ax, ax
jle 0x4164be
movsx ebx, ax
mov dword [esp], ebx
call fcn.004434e0
sub esp, 4
mov ebp, eax
test eax, eax
jle 0x4164be
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov eax, dword [esp + 0x50]
mov dword [esp], eax
call sub.VERSION.dll_GetFileVersionInfoW
sub esp, 0x10
test eax, eax
jne 0x416540
mov dword [esp], ebp
call fcn.00443500
sub esp, 4
call fcn.00443980
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
mov ebx, eax
mov eax, dword [esp + 0x14]
mov dword [esp], eax
call fcn.00443c70
sub esp, 4
mov eax, dword [esp + 0x50]
mov dword [esp], eax
call fcn.00443c70
sub esp, 4
mov eax, dword [esp + 0x1c]
mov dword [esp], eax
call fcn.00443c70
sub esp, 4
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00443c70
sub esp, 4
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.00443c70
sub esp, 4
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
call fcn.00443c70
sub esp, 4
mov eax, ebx
add esp, 0x3c
pop ebx
pop esi
pop edi
pop ebp
ret 0x10
mov dword [esp + 4], str.VarFileInfoTranslation
lea eax, [esp + 0x2c]
mov dword [esp], eax
call fcn.00443ca0
sub esp, 8
lea eax, [esp + 0x10]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x24]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov dword [esp], ebp
call sub.VERSION.dll_VerQueryValueW
sub esp, 0x10
test eax, eax
jne 0x416590
mov esi, 0xc
mov ebx, 1
jmp 0x41677b
call fcn.00443980
call fcn.00443980
call fcn.00443980
call fcn.00443980
mov eax, dword [esp + 0x24]
mov dword [esp], eax
call fcn.004436e0
sub esp, 4
mov ebx, eax
call fcn.004439d0
mov dword [esp + 8], eax
mov dword [esp], ebx
sar ebx, 0x1f
mov dword [esp + 4], ebx
call fcn.00442500
sub esp, 0xc
call fcn.00443ad0
mov ebx, eax
call fcn.004439d0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x457b3c
mov dword [esp + 4], 4
mov dword [esp], ebx
call fcn.004426a0
sub esp, 0x10
call fcn.00443980
call fcn.00443980
call fcn.00443980
call fcn.00443980
mov eax, dword [esp + 0x24]
add eax, 2
mov dword [esp], eax
call fcn.004436e0
sub esp, 4
mov ebx, eax
call fcn.004439d0
mov dword [esp + 8], eax
mov dword [esp], ebx
sar ebx, 0x1f
mov dword [esp + 4], ebx
call fcn.00442500
sub esp, 0xc
call fcn.00443ad0
mov ebx, eax
call fcn.004439d0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x457b3c
mov dword [esp + 4], 4
mov dword [esp], ebx
call fcn.004426a0
sub esp, 0x10
call fcn.004439d0
call fcn.004439d0
mov dword [esp + 4], eax
lea eax, [esp + 0x1c]
mov dword [esp], eax
call fcn.00443b80
sub esp, 8
mov eax, dword [esp + 0x24]
mov dword [esp], eax
call fcn.004436e0
sub esp, 4
mov dword [esp + 8], pe_nt_image_headers32
mov edx, dword [esp + 0x28]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.KERNEL32.dll_VerLanguageNameW
sub esp, 0xc
jmp 0x41657e
call fcn.00443980
mov dword [esp], 0x45324c
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
call fcn.004439d0
mov dword [esp + 4], eax
lea eax, [esp + 0x14]
mov dword [esp], eax
call fcn.00443b80
sub esp, 8
call fcn.00443980
mov dword [esp], str.StringFileInfo_
call fcn.00443c10
sub esp, 4
mov eax, dword [esp + 0x1c]
mov dword [esp], eax
call fcn.00443c10
sub esp, 4
mov dword [esp], 0x45787c
call fcn.00443c10
sub esp, 4
mov eax, dword [esp + 0x14]
mov dword [esp], eax
call fcn.00443c10
sub esp, 4
call fcn.004439d0
mov dword [esp + 4], eax
lea eax, [esp + 0x2c]
mov dword [esp], eax
call fcn.00443b80
sub esp, 8
lea eax, [esp + 0x10]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x24]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov dword [esp], ebp
call sub.VERSION.dll_VerQueryValueW
sub esp, 0x10
test eax, eax
jne 0x4169c0
add ebx, ebx
mov eax, esi
sub al, 1
mov esi, eax
je 0x416a80
test dword [esp + 0x54], ebx
je 0x41676d
call fcn.00443980
call fcn.00443980
call fcn.004439d0
mov dword [esp], eax
call fcn.00443940
sub esp, 4
cmp ebx, 1
je 0x4166b8
cmp ebx, 2
je 0x4169a0
cmp ebx, 4
je 0x416840
cmp ebx, 8
je 0x416860
cmp ebx, 0x10
je 0x416880
cmp ebx, 0x20
je 0x4168a0
cmp ebx, 0x40
je 0x4168c0
cmp ebx, 0x80
je 0x4168e0
cmp ebx, 0x100
je 0x416900
cmp ebx, 0x200
je 0x416920
cmp ebx, 0x400
je 0x41693e
cmp ebx, 0x800
je 0x41695c
cmp ebx, 0x1000
je 0x416980
call fcn.00443980
mov dword [esp], 0x4460ac
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], 0x454644
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], 0x4555c8
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], 0x4553a0
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], 0x452c2c
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], 0x454b68
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], 0x456d78
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], 0x4536e0
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], str.SpecialBuild
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], 0x45581c
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], str.Comments
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], str.Language
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
call fcn.00443980
mov dword [esp], 0x455aa0
call fcn.00443c10
sub esp, 4
call fcn.00443ad0
jmp 0x4166d1
mov eax, dword [esp + 0x20]
mov dword [esp + 4], eax
mov dword [esp], 0x45a954
call fcn.00443da0
test eax, eax
je 0x416a40
call fcn.00443980
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00443c10
sub esp, 4
call fcn.00443980
call fcn.00443980
call fcn.004439d0
mov ecx, eax
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x24]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004436f0
sub esp, 0xc
call fcn.004439d0
call fcn.004439d0
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.00443b80
sub esp, 8
jmp 0x41676d
call fcn.00443980
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00443c10
sub esp, 4
mov dword [esp], 0x4580d4
call fcn.00443c10
sub esp, 4
call fcn.004439d0
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.00443b80
sub esp, 8
jmp 0x4169d8
test dword [esp + 0x54], ebx
je 0x4164b3
mov eax, dword [esp + 0x20]
mov dword [esp + 4], eax
mov dword [esp], 0x45a954
call fcn.00443da0
test eax, eax
je 0x416ae0
call fcn.00443980
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00443c10
sub esp, 4
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.00443c10
sub esp, 4
call fcn.004439d0
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.00443b80
sub esp, 8
jmp 0x4164b3
call fcn.00443980
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00443c10
sub esp, 4
mov dword [esp], 0x4580d4
call fcn.00443c10
sub esp, 4
call fcn.004439d0
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.00443b80
sub esp, 8
jmp 0x416aa2