Function at 0x47ff7c
Capabilities:
Get file version info

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff88
push ebx
push esi
push edi
lea ebx, [ebp - 0x64]
mov eax, 0x4c468c
call fcn.004aad94
mov dword [ebx + 0x1c], 1
lea edx, [ebp + 0xc]
lea eax, [ebp + 0xc]
call fcn.004b4e10
inc dword [ebx + 0x1c]
mov word [ebx + 0x10], 8
mov eax, dword [ebp + 0xc]
call fcn.00473c34
test al, al
jne 0x48001c
mov word [ebx + 0x10], 0x14
mov edx, 0x4c3c8a
lea eax, [ebp - 4]
call fcn.004b4dd8
inc dword [ebx + 0x1c]
lea edx, [ebp - 4]
mov eax, dword [ebp + 8]
call fcn.004b4f68
mov eax, dword [ebp + 8]
mov edx, 2
mov word [ebx + 0x10], 0x20
push eax
lea eax, [ebp - 4]
dec dword [ebx + 0x1c]
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp + 0xc]
mov edx, 2
call fcn.004b4f38
pop eax
mov word [ebx + 0x10], 0x14
inc dword [ebx + 0x1c]
mov edx, dword [ebx]
mov dword fs:[0], edx
jmp 0x480393
xor ecx, ecx
lea eax, [ebp - 0x68]
mov dword [ebp - 0x68], ecx
mov word [ebx + 0x10], 8
push eax
cmp dword [ebp + 0xc], 0
je 0x480036
mov edx, dword [ebp + 0xc]
jmp 0x48003b
mov edx, 0x4c3c8b
push edx
call sub.VERSION.DLL_GetFileVersionInfoSizeA
mov esi, eax
push esi
call fcn.004a8f14
pop ecx
mov edi, eax
push edi
push esi
push 0
cmp dword [ebp + 0xc], 0
je 0x48005b
mov eax, dword [ebp + 0xc]
jmp 0x480060
mov eax, 0x4c3c8c
push eax
call sub.VERSION.DLL_GetFileVersionInfoA
test eax, eax
jne 0x4800cd
mov word [ebx + 0x10], 0x2c
mov edx, 0x4c3c8d
lea eax, [ebp - 8]
call fcn.004b4dd8
inc dword [ebx + 0x1c]
lea edx, [ebp - 8]
mov eax, dword [ebp + 8]
call fcn.004b4f68
mov eax, dword [ebp + 8]
mov edx, 2
mov word [ebx + 0x10], 0x38
push eax
lea eax, [ebp - 8]
dec dword [ebx + 0x1c]
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp + 0xc]
mov edx, 2
call fcn.004b4f38
pop eax
mov word [ebx + 0x10], 0x2c
inc dword [ebx + 0x1c]
mov edx, dword [ebx]
mov dword fs:[0], edx
jmp 0x480393
lea ecx, [ebp - 0x70]
push ecx
lea eax, [ebp - 0x6c]
push eax
push 0x4c3c8e
push edi
call sub.VERSION.DLL_VerQueryValueA
test eax, eax
jne 0x480147
mov word [ebx + 0x10], 0x44
mov edx, 0x4c3c90
lea eax, [ebp - 0xc]
call fcn.004b4dd8
inc dword [ebx + 0x1c]
lea edx, [ebp - 0xc]
mov eax, dword [ebp + 8]
call fcn.004b4f68
mov eax, dword [ebp + 8]
mov edx, 2
mov word [ebx + 0x10], 0x50
push eax
lea eax, [ebp - 0xc]
dec dword [ebx + 0x1c]
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp + 0xc]
mov edx, 2
call fcn.004b4f38
pop eax
mov word [ebx + 0x10], 0x44
inc dword [ebx + 0x1c]
mov edx, dword [ebx]
mov dword fs:[0], edx
jmp 0x480393
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x6c]
mov eax, dword [ecx + 8]
mov edx, dword [edx + 0xc]
mov esi, eax
mov edi, eax
mov eax, edx
and dx, 0xffff
movzx edx, dx
shr eax, 0x10
movzx ecx, ax
and di, 0xffff
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x78], edx
xor eax, eax
shr esi, 0x10
lea edx, [ebp - 0x3c]
mov word [ebx + 0x10], 0x5c
movzx esi, si
movzx edi, di
mov dword [ebp - 0x3c], eax
inc dword [ebx + 0x1c]
mov eax, dword [ebp - 0x78]
call fcn.004739c4
lea edx, [ebp - 0x3c]
xor ecx, ecx
push edx
mov dword [ebp - 0x2c], ecx
inc dword [ebx + 0x1c]
lea edx, [ebp - 0x2c]
mov eax, dword [ebp - 0x74]
call fcn.004739c4
lea ecx, [ebp - 0x2c]
xor eax, eax
push ecx
mov dword [ebp - 0x1c], eax
inc dword [ebx + 0x1c]
mov eax, edi
lea edx, [ebp - 0x1c]
call fcn.004739c4
lea edx, [ebp - 0x1c]
xor ecx, ecx
push edx
mov dword [ebp - 0x10], ecx
inc dword [ebx + 0x1c]
lea edx, [ebp - 0x10]
mov eax, esi
call fcn.004739c4
lea ecx, [ebp - 0x10]
push ecx
mov edx, 0x4c3c91
lea eax, [ebp - 0x14]
call fcn.004b4dd8
inc dword [ebx + 0x1c]
xor eax, eax
mov dword [ebp - 0x18], eax
lea edx, [ebp - 0x14]
inc dword [ebx + 0x1c]
lea ecx, [ebp - 0x18]
pop eax
call fcn.004b4f90
lea eax, [ebp - 0x18]
xor edx, edx
mov dword [ebp - 0x20], edx
lea ecx, [ebp - 0x20]
inc dword [ebx + 0x1c]
pop edx
call fcn.004b4f90
lea eax, [ebp - 0x20]
push eax
mov edx, 0x4c3c93
lea eax, [ebp - 0x24]
call fcn.004b4dd8
inc dword [ebx + 0x1c]
xor eax, eax
mov dword [ebp - 0x28], eax
lea edx, [ebp - 0x24]
inc dword [ebx + 0x1c]
lea ecx, [ebp - 0x28]
pop eax
call fcn.004b4f90
lea eax, [ebp - 0x28]
xor edx, edx
mov dword [ebp - 0x30], edx
lea ecx, [ebp - 0x30]
inc dword [ebx + 0x1c]
pop edx
call fcn.004b4f90
lea eax, [ebp - 0x30]
push eax
mov edx, 0x4c3c95
lea eax, [ebp - 0x34]
call fcn.004b4dd8
inc dword [ebx + 0x1c]
xor eax, eax
mov dword [ebp - 0x38], eax
lea edx, [ebp - 0x34]
inc dword [ebx + 0x1c]
lea ecx, [ebp - 0x38]
pop eax
call fcn.004b4f90
lea eax, [ebp - 0x38]
xor edx, edx
mov dword [ebp - 0x40], edx
lea ecx, [ebp - 0x40]
inc dword [ebx + 0x1c]
pop edx
call fcn.004b4f90
lea edx, [ebp - 0x40]
mov eax, dword [ebp + 8]
call fcn.004b4f68
mov eax, dword [ebp + 8]
mov edx, 2
mov word [ebx + 0x10], 0x68
push eax
lea eax, [ebp - 0x40]
dec dword [ebx + 0x1c]
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x3c]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x38]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x34]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x30]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x2c]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x28]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x24]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x20]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x1c]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp - 0x10]
mov edx, 2
call fcn.004b4f38
dec dword [ebx + 0x1c]
lea eax, [ebp + 0xc]
mov edx, 2
call fcn.004b4f38
pop eax
mov word [ebx + 0x10], 0x5c
inc dword [ebx + 0x1c]
mov edx, dword [ebx]
mov dword fs:[0], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret