Function at 0x473172
Capabilities:
Check if file exists
Get file version info

Disassembly:
push 0x28
mov eax, 0x515a2f
call fcn.004b9729
mov eax, dword [ebp + 0xc]
xor ebx, ebx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ebx
push dword [ebp + 8]
mov dword [ebp - 4], ebx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x473361
lea eax, [ebp - 0x18]
push eax
push dword [ebp + 8]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov esi, eax
test esi, esi
je 0x473361
push esi
call fcn.0049a720
pop ecx
mov edi, eax
push edi
push esi
push dword [ebp - 0x18]
push dword [ebp + 8]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x47334a
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x1c]
push eax
push ebx
push ecx
mov ecx, esp
push str.Bbz7pKQe08A3LNlaxEQbdhBPGGFBK8_XYB_HgYhNTw9JR46PzUTODwgC2NtdndzfTZ5DgQlPTQ8ISEDIicgKzc9HGQxexsYOAN0M38RHQM8AGA2KhlADsnICJgdQw8MCAxGht3J2Y7CTgPFiQwEycFJzIIJhofDDEjDhowfhYeYmgGIAoUCDkXGDo_BAEEAhc4GiQEHmQeDC0xKzccHgV8PTg4ECYaAwx5YTAAOgARHTBiIw1qKz4BMQIeJyAAAAB9KG2Ja_eNIrZWqkpfHx
call fcn.00466d59
lea eax, [ebp - 0x34]
push eax
call fcn.00470f89
pop ecx
pop ecx
inc ebx
mov ecx, eax
mov byte [ebp - 4], bl
mov dword [ebp - 0x24], ebx
call fcn.0046929c
push eax
push edi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x473214
cmp dword [ebp - 0x14], 0
mov byte [ebp - 0x1d], bl
jne 0x473218
mov byte [ebp - 0x1d], 0
and dword [ebp - 4], 0
lea ecx, [ebp - 0x34]
call fcn.004690f8
cmp byte [ebp - 0x1d], 0
jne 0x473288
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x1c]
push eax
push 0
push ecx
mov ecx, esp
push str.H9QMwJTmydwwzGK5wmzof_m4frugcwb3yZ0HgYhNTw9JR46PzUTODwgC2Npdn5zeWQrDgQlPTQ8ISEDIicgKzc9JAYvZz16PjQ9Jwg5HDIPBAVayUfOiMbJC0EdToMI2M0EykHBycNIgR1OmEhOAN6JQMECz8xHzgaLmlgMQEAAAAKg4JV5g1hp2gpU22gA
call fcn.00466d59
lea eax, [ebp - 0x34]
push eax
call fcn.00470f89
pop ecx
pop ecx
mov ecx, eax
mov byte [ebp - 4], 2
mov dword [ebp - 0x24], 2
call fcn.0046929c
push eax
push edi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x473272
cmp dword [ebp - 0x14], 0
mov byte [ebp - 0x1d], bl
jne 0x473276
mov byte [ebp - 0x1d], 0
and dword [ebp - 4], 0
lea ecx, [ebp - 0x34]
call fcn.004690f8
cmp byte [ebp - 0x1d], 0
je 0x47329b
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x28]
push dword [ebp - 0x1c]
call fcn.004689b5
jmp 0x47334a
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x1c]
push eax
push 0
push ecx
mov ecx, esp
push str.squ6yRrK0PEMawnu4UF93y3hjbxiVEtlorxHmcmEQo0Dm4QazoISI2LxRrCSgTcD4iOD4zKyBwDTw3BWwACSAwYjsAZRI3NQYtNA0EfSIcKD8YCjZ4ITAKJWwREyJlEjFiOmkdBDsBMiQhfhYKYww1Gx4qBSMDf2wrDTA2DCAZDignYRwhBCQiDxwaEQwyFH0AAAB2TNW0vuFjA1lYbEIKDe
call fcn.00466d59
lea eax, [ebp - 0x34]
push eax
call fcn.00470f89
pop ecx
pop ecx
mov ecx, eax
mov byte [ebp - 4], 3
mov dword [ebp - 0x24], 4
call fcn.0046929c
push eax
push edi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x4732e0
cmp dword [ebp - 0x14], 0
jne 0x4732e2
xor bl, bl
and dword [ebp - 4], 0
lea ecx, [ebp - 0x34]
call fcn.004690f8
test bl, bl
je 0x47334a
mov ecx, dword [ebp - 0x1c]
cmp dword [ecx], 0xfeef04bd
jne 0x47334a
movzx eax, word [ecx + 0xc]
push eax
movzx eax, word [ecx + 0xe]
push eax
movzx eax, word [ecx + 8]
push eax
movzx eax, word [ecx + 0xa]
push eax
push 0
push ecx
mov ecx, esp
push str.JbGs_SO8uIQ0bojZoejXmyxJtTIslx8YsXUZzF7YjF9Zzx9djRuDj4JMD0WHismEBIuEBctPBJ8KiAHKwAQMS0XYgEuAS0OMj8hHDwZcRkINyUUMGUeego7LRoJISALIGQRZQ0OJhUhHggmLxEZBQAkDSoKGh87cy0CBS9nFygKGT0MD2JvCgcaBiY_ODwnEyA5di88dzgmLDEaKhw8OzUbLjw6CRQ3Hhh4IAJnNBkaMR8kBB4hFhsmIzM3ZDIAAACZ2s_djVww7LY608Qa0G
call fcn.00466d59
lea eax, [ebp - 0x34]
push eax
call fcn.00470f89
pop ecx
pop ecx
mov ecx, eax
mov byte [ebp - 4], 4
call fcn.0046929c
push eax
push dword [ebp - 0x28]
call fcn.004706b3
add esp, 0x18
lea ecx, [ebp - 0x34]
call fcn.004690f8
cmp dword [ebp - 0x18], 0
je 0x47335a
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push edi
call fcn.004b8805
pop ecx
mov ecx, dword [ebp + 8]
lea ecx, [ecx - 0x10]
call fcn.0040ce73
call fcn.004b96d8
ret