Function at 0x1108c4d0
Capabilities:
Get file version info

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xf0
mov eax, dword [0x11279148]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov edi, dword [ebp + 8]
mov esi, ecx
mov dword [ebp - 0xec], esi
mov dword [ebp - 0xe8], edi
test edi, edi
je 0x1108c749
cmp word [edi], 0
je 0x1108c749
mov eax, dword [esi + 0x108]
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
push 0x5c
push edi
call dword [sym.imp.MSVCR100.dll_wcsrchr]
add esp, 0xc
push 0
test eax, eax
je 0x1108c52c
add eax, 2
push eax
jmp 0x1108c52d
push edi
call fcn.111b7990
add esp, 8
mov dword [esi + 0x108], eax
call fcn.111babb0
test al, al
je 0x1108c703
push ebx
lea ecx, [ebp - 0xf0]
push ecx
push edi
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xdc], 0
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov ebx, eax
test ebx, ebx
je 0x1108c702
push ebx
call fcn.11170a40
mov edx, dword [ebp - 0xf0]
add esp, 4
push eax
push ebx
push edx
push edi
mov dword [ebp - 0xd8], eax
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1108c6a4
mov edx, dword [ebp - 0xd8]
lea eax, [ebp - 0xe0]
push eax
lea ecx, [ebp - 0xd4]
push ecx
push str.VarFileInfoTranslation
push edx
call sub.VERSION.dll_VerQueryValueW
mov eax, dword [ebp - 0xd4]
mov eax, dword [eax]
mov ebx, dword [sym.imp.USER32.dll_wsprintfW]
mov dword [ebp - 0xe4], 2
mov esi, eax
movzx edi, ax
shr esi, 0x10
push esi
push edi
lea ecx, [ebp - 0xcc]
push str.StringFileInfo_04X_04XCompanyName
push ecx
call ebx
add esp, 0x10
cmp dword [ebp - 0xd0], 0
jne 0x1108c630
lea edx, [ebp - 0xe0]
push edx
mov edx, dword [ebp - 0xd8]
lea eax, [ebp - 0xd4]
push eax
lea ecx, [ebp - 0xcc]
push ecx
push edx
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1108c630
mov eax, dword [ebp - 0xd4]
push eax
call dword [sym.imp.MSVCR100.dll__wcsdup]
add esp, 4
mov dword [ebp - 0xd0], eax
push esi
push edi
lea ecx, [ebp - 0xcc]
push str.StringFileInfo_04X_04XFileDescription
push ecx
call ebx
add esp, 0x10
cmp dword [ebp - 0xdc], 0
jne 0x1108c687
lea edx, [ebp - 0xe0]
push edx
mov edx, dword [ebp - 0xd8]
lea eax, [ebp - 0xd4]
push eax
lea ecx, [ebp - 0xcc]
push ecx
push edx
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1108c687
mov eax, dword [ebp - 0xd4]
push eax
call dword [sym.imp.MSVCR100.dll__wcsdup]
add esp, 4
mov dword [ebp - 0xdc], eax
dec dword [ebp - 0xe4]
mov eax, 0x4e40409
jne 0x1108c5d1
mov edi, dword [ebp - 0xe8]
mov esi, dword [ebp - 0xec]
mov ecx, dword [ebp - 0xd8]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
mov ebx, dword [ebp - 0xdc]
add esp, 4
cmp dword [ebp - 0xd0], 0
je 0x1108c6ed
test ebx, ebx
je 0x1108c6ed
mov edx, dword [esi + 0x108]
push edx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
mov eax, dword [ebp - 0xd0]
push ebx
push eax
push 0x11204c08
call fcn.111be4a0
add esp, 0x10
mov dword [esi + 0x108], eax
mov ecx, dword [ebp - 0xd0]
push ecx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
push ebx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 8
pop ebx
push 0
push edi
call fcn.110fe3d0
push eax
call dword [sym.imp.SHELL32.dll_ExtractIconW]
mov edx, dword [esi + 0x108]
push edx
mov edi, eax
mov eax, dword [esi + 0xc]
push 0x471
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov edx, dword [esi]
mov eax, dword [edx + 8]
push 0
push edi
push 0x170
push 0x473
mov ecx, esi
call eax
push edi
call dword [sym.imp.USER32.dll_DestroyIcon]
jmp 0x1108c771
mov ecx, dword [esi + 0xc]
push 0
push 0x471
push ecx
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov edx, dword [esi]
mov eax, dword [edx + 8]
push 0
push 0
push 0x170
push 0x473
mov ecx, esi
call eax
cmp dword [esi + 0xc], 0
jne 0x1108c78e
push 0x139
push str.e:_nsmsrc_nsm14101410fctl32wndclass.h
push 0x111f761c
call fcn.11067750
add esp, 0xc
mov ecx, dword [esi + 0xc]
push ecx
call dword [sym.imp.USER32.dll_UpdateWindow]
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.111d9022
mov esp, ebp
pop ebp
ret 4