Function at 0x403280
Capabilities:
Get file version info

Disassembly:
sub esp, 0xc
mov ecx, dword [0x4410d0]
push ebx
push ebp
mov ebp, dword [esp + 0x18]
push esi
mov esi, dword [0x4410b4]
mov eax, 0x3307af59
imul esi, esi, 0x53a0f
imul ecx
mov ecx, dword [0x4410b8]
imul ecx, ecx, 0xff4b
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add esi, edx
push edi
lea edx, [esp + 0x14]
add eax, esi
push edx
sub eax, ecx
xor ebx, ebx
push ebp
mov dword [esp + 0x1c], ebx
mov dword [0x4410b4], eax
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov edi, eax
cmp edi, ebx
je 0x4034bd
mov ecx, dword [0x4410c8]
mov esi, dword [0x4410b8]
mov eax, 0x61f4f3e1
imul esi, esi, 0xd454
imul ecx
mov ecx, dword [0x4410c0]
sar edx, 0x11
imul ecx, ecx, 0xa081a
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
sub esi, ecx
push edi
mov dword [0x4410b8], esi
call fcn.004278df
add esp, 4
mov esi, eax
push esi
push edi
push ebx
push ebp
call sub.VERSION.dll_GetFileVersionInfoA
test eax, eax
je 0x40345e
mov ecx, dword [0x4410bc]
mov eax, 0x61f4f3e1
imul ecx
mov ecx, dword [0x4410b8]
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, eax
mov eax, 0xa0c15
cdq
idiv ecx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x18], ebx
mov ebp, eax
mov eax, 0x1984ece9
imul ecx
sar edx, 0x10
mov ecx, edx
sub ebp, edi
add ebp, edx
shr ecx, 0x1f
add ecx, ebp
mov dword [str._r_____r____], ecx
mov ecx, dword [0x4410c8]
mov eax, 0x3307af59
imul ecx
imul ecx, ecx, 0xff4b
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x4410c4]
mov edi, eax
mov eax, 0x1984ece9
imul edx
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
sub edi, ecx
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x14]
push edx
push 0x435808
push esi
mov dword [0x4410d0], edi
call sub.VERSION.dll_VerQueryValueA
test eax, eax
je 0x403426
mov ecx, dword [0x4410bc]
mov eax, 0x61f4f3e1
imul ecx
mov ecx, dword [0x4410b8]
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edi, eax
mov eax, 0xa0c15
cdq
idiv ecx
mov ebx, eax
mov eax, 0x1984ece9
imul ecx
sar edx, 0x10
sub ebx, edi
mov ecx, edx
add ebx, edx
mov edx, dword [esp + 0x10]
shr ecx, 0x1f
add ecx, ebx
mov dword [str._r_____r____], ecx
mov bx, word [edx + 0x14]
jmp 0x40342c
mov ecx, dword [str._r_____r____]
mov edx, dword [0x4410d0]
imul ecx, ecx, 0x181cd
mov edi, dword [0x4410c4]
mov eax, 0xccf850a7
imul edi, edi, 0x3bf27
imul edx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, edi
add eax, ecx
mov dword [0x4410bc], eax
push esi
call fcn.004278e4
mov esi, dword [0x4410b4]
mov eax, 0x88a76c3f
imul esi
add edx, esi
sar edx, 0x11
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edi, ecx
mov ecx, dword [0x4410c0]
mov eax, 0x61f4f3e1
imul ecx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x4410d4]
mov ebp, eax
mov eax, 0x402d6015
imul edx
sar edx, 0xe
sub ebp, edi
mov eax, edx
shr eax, 0x1f
add ebp, edx
add esp, 4
add eax, ebp
mov dword [0x4410c8], eax
jmp 0x4034c9
mov esi, dword [0x4410b4]
mov ecx, dword [0x4410c0]
mov edx, dword [0x4410bc]
imul ecx, ecx, 0x53a0f
imul edx, edx, 0xa0c15
sub ecx, edx
mov eax, 0x3307af59
imul esi
sar edx, 0x11
mov eax, edx
pop edi
shr eax, 0x1f
add ecx, edx
add eax, ecx
pop esi
mov dword [0x4410d4], eax
pop ebp
mov ax, bx
pop ebx
add esp, 0xc
ret