Function at 0x471604
Capabilities:
Get file version info

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffb8
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00404d48
xor eax, eax
push ebp
push 0x47188e
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x471832
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0xc]
push eax
mov eax, dword [ebp - 4]
call fcn.00404d58
mov ebx, eax
push ebx
call fcn.00407290
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jbe 0x471819
mov eax, dword [ebp - 0xc]
call fcn.0040b1d0
mov dword [ebp - 0x14], eax
xor eax, eax
push ebp
push 0x471812
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x2c]
call fcn.0040b938
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x28]
mov edx, 0x4718a4
call fcn.00404ba4
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 8]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0xc]
push eax
push 0
push ebx
call fcn.00407288
test eax, eax
je 0x4717f4
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
push 0x4718b8
mov eax, dword [ebp - 0x14]
push eax
call fcn.00407298
test eax, eax
je 0x471713
mov ebx, dword [ebp - 0x10]
shr ebx, 2
push ebx
lea eax, [ebp - 0x1c]
mov ecx, 1
mov edx, dword [0x4715dc]
call fcn.00405e90
add esp, 4
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
call fcn.00402ff0
jmp 0x471718
mov ebx, 1
dec ebx
test ebx, ebx
jb 0x4717f9
inc ebx
mov dword [ebp - 0x24], ebx
xor edi, edi
lea eax, [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + edi*4]
mov dword [ebp - 0x3c], eax
mov byte [ebp - 0x38], 0
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + edi*4 + 2]
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0
lea edx, [ebp - 0x3c]
mov ecx, 1
mov eax, 0x4718dc
call fcn.0040c844
lea eax, [ebp - 0x40]
mov ecx, dword [ebp - 0x20]
mov edx, 0x4718f0
call fcn.00404ba4
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 8]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov esi, 0xa
mov ebx, 0x4976f8
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x18]
push eax
push 0x471908
push dword [ebp - 0x20]
push 0x471924
push dword [ebx]
lea eax, [ebp - 0x44]
mov edx, 4
call fcn.00404c18
mov eax, dword [ebp - 0x44]
call fcn.00404d58
push eax
mov eax, dword [ebp - 0x14]
push eax
call fcn.00407298
test eax, eax
je 0x4717d3
lea eax, [ebp - 0x48]
mov edx, dword [ebp - 0x18]
call fcn.00404a90
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 8]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x38]
add ebx, 4
dec esi
jne 0x471781
mov eax, dword [ebp - 8]
mov eax, dword [eax]
mov edx, 0x471930
mov ecx, dword [eax]
call dword [ecx + 0x38]
inc edi
dec dword [ebp - 0x24]
jne 0x471727
jmp 0x4717f9
call fcn.004070c0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x471828
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x14]
call fcn.00402d98
ret
mov eax, dword [ebp - 8]
mov eax, dword [eax]
mov edx, 0x471940
mov ecx, dword [eax]
call dword [ecx + 0x38]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x471848
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x471895
lea eax, [ebp - 0x48]
mov edx, 3
call fcn.004048ac
lea eax, [ebp - 0x2c]
mov edx, 2
call fcn.004048ac
lea eax, [ebp - 0x20]
call fcn.00404888
lea eax, [ebp - 0x1c]
mov edx, dword [0x4715dc]
call fcn.00405e9c
lea eax, [ebp - 4]
call fcn.00404888
ret