Function at 0x44c6b0
Capabilities:
Get file version info

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5c403e
mov eax, dword fs:[0]
push eax
sub esp, 0x4b4
mov eax, dword [0x6b20c8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x384]
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x404], eax
call fcn.00463c96
lea ecx, [ebp - 0x3cc]
mov dword [ebp - 4], 0
push ecx
mov ecx, eax
call fcn.00462e8b
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x370]
cmp edx, 8
jb 0x44c750
mov ecx, dword [ebp - 0x384]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44c746
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44d17c
push edx
push ecx
call fcn.0048fd5c
add esp, 8
xor eax, eax
mov dword [ebp - 0x374], 0
cmp dword [ebp - 0x3b8], 8
lea edx, [ebp - 0x3cc]
mov dword [ebp - 0x370], 7
cmovae edx, dword [ebp - 0x3cc]
mov ecx, edx
mov word [ebp - 0x384], ax
mov dword [ebp - 0x35c], eax
mov dword [ebp - 0x358], 7
mov word [ebp - 0x36c], ax
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x44c7a0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x36c]
call fcn.00457aa0
push 0x1c98
mov byte [ebp - 4], 3
call fcn.0048f9b1
mov edi, eax
mov dword [ebp - 0x40c], edi
mov byte [ebp - 4], 4
lea eax, [edi + 0x28]
cmp dword [ebp - 0x358], 8
lea esi, [ebp - 0x36c]
push 0x410
cmovae esi, dword [ebp - 0x36c]
push 0
push eax
call fcn.0058a1a0
add esp, 0x10
test esi, esi
je 0x44c819
cmp word [esi], 0
je 0x44c819
push 0x40f
push esi
lea esi, [edi + 0x28]
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
jmp 0x44c81c
lea esi, [edi + 0x28]
mov dword [edi], 0
lea eax, [edi + 0x10]
mov dword [edi + 4], 0
mov ecx, 4
xor edx, edx
lea eax, [eax + 2]
mov word [eax - 0xa], dx
mov word [eax - 2], dx
sub ecx, 1
jne 0x44c831
push 0x410
lea eax, [edi + 0x438]
mov dword [edi + 0x18], edx
push ecx
push eax
mov dword [edi + 0x1c], edx
mov dword [edi + 0x20], edx
mov dword [edi + 0x24], edx
call fcn.0058a1a0
push 0x410
lea eax, [edi + 0x848]
push 0
push eax
call fcn.0058a1a0
push 0x410
lea eax, [edi + 0xc58]
push 0
push eax
call fcn.0058a1a0
push 0x410
lea eax, [edi + 0x1068]
push 0
push eax
call fcn.0058a1a0
push 0x410
lea eax, [edi + 0x1478]
push 0
push eax
call fcn.0058a1a0
push 0x410
lea eax, [edi + 0x1888]
push 0
push eax
call fcn.0058a1a0
add esp, 0x48
lea eax, [ebp - 0x404]
push eax
push esi
call dword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov dword [ebp - 0x408], eax
test eax, eax
je 0x44ca47
lea esi, [eax + 1]
push esi
call fcn.0048fd95
push esi
push 0
push eax
mov dword [edi], eax
call fcn.0058a1a0
add esp, 0x10
lea eax, [edi + 0x28]
push dword [edi]
push dword [ebp - 0x408]
push dword [ebp - 0x404]
push eax
call dword [sym.imp.VERSION.dll_GetFileVersionInfoW]
test eax, eax
je 0x44ca47
mov eax, dword [edi]
mov dword [ebp - 0x408], 0
test eax, eax
je 0x44ca47
lea ecx, [ebp - 0x40c]
push ecx
lea ecx, [ebp - 0x408]
push ecx
push 0x6a066c
push eax
call dword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x44ca47
push 0x34
push dword [ebp - 0x408]
lea eax, [ebp - 0x400]
push eax
call fcn.005896a0
mov ecx, dword [ebp - 0x3f8]
add esp, 0xc
mov eax, ecx
mov word [edi + 0xa], cx
mov ecx, dword [ebp - 0x3f4]
shr eax, 0x10
mov word [edi + 8], ax
mov eax, ecx
shr eax, 0x10
mov word [edi + 0xc], ax
mov word [edi + 0xe], cx
mov ecx, dword [ebp - 0x3f0]
mov eax, ecx
shr eax, 0x10
mov word [edi + 0x10], ax
mov word [edi + 0x12], cx
mov ecx, dword [ebp - 0x3ec]
mov eax, ecx
shr eax, 0x10
mov word [edi + 0x14], ax
mov eax, dword [ebp - 0x3e4]
mov word [edi + 0x16], cx
mov ecx, edi
mov dword [edi + 0x18], eax
mov eax, dword [ebp - 0x3e0]
mov dword [edi + 0x1c], eax
mov eax, dword [ebp - 0x3dc]
mov dword [edi + 0x20], eax
mov eax, dword [ebp - 0x3d8]
mov dword [edi + 0x24], eax
lea eax, [edi + 0x438]
push eax
push 0x6a186c
call fcn.0046fdda
lea eax, [edi + 0x848]
mov ecx, edi
push eax
push 0x6a1884
call fcn.0046fdda
lea esi, [edi + 0xc58]
mov ecx, edi
push esi
push 0x6a189c
call fcn.0046fdda
lea eax, [edi + 0x1068]
mov ecx, edi
push eax
push 0x6a18bc
call fcn.0046fdda
lea eax, [edi + 0x1478]
mov ecx, edi
push eax
push 0x6a18dc
call fcn.0046fdda
lea eax, [edi + 0x1888]
mov ecx, edi
push eax
push 0x6a18f4
call fcn.0046fdda
jmp 0x44ca4d
lea esi, [edi + 0xc58]
mov dword [ebp - 0x40c], edi
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x358]
cmp edx, 8
jb 0x44ca97
mov ecx, dword [ebp - 0x36c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44ca8d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44d181
push edx
push ecx
call fcn.0048fd5c
add esp, 8
xor eax, eax
mov dword [ebp - 0x38c], 0
mov dword [ebp - 0x388], 7
mov word [ebp - 0x39c], ax
push 0x18f
push eax
lea eax, [ebp - 0x1ac]
mov byte [ebp - 4], 7
push eax
call fcn.0058a1a0
add esp, 0xc
lea eax, [ebp - 0x1ac]
push 0x18e
push esi
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpynW]
push eax
call esi
lea ecx, [ebp - 0x1ac]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x44caf0
sub ecx, edx
lea eax, [ebp - 0x1ac]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x39c]
call fcn.00457aa0
xor eax, eax
mov dword [ebp - 0x344], 0
mov dword [ebp - 0x340], 7
mov word [ebp - 0x354], ax
push 0x18f
push eax
lea eax, [ebp - 0x33c]
mov byte [ebp - 4], 8
push eax
call fcn.0058a1a0
add esp, 0xc
lea eax, [edi + 0x1068]
push 0x18e
push eax
lea eax, [ebp - 0x33c]
push eax
call esi
lea ecx, [ebp - 0x33c]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x44cb66
sub ecx, edx
lea eax, [ebp - 0x33c]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x354]
call fcn.00457aa0
movq xmm0, qword [edi + 8]
lea ecx, [ebp - 0x4c0]
sub esp, 8
movq qword [ebp - 0x1c], xmm0
call fcn.0044fd40
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x384]
push 3
xor eax, eax
mov dword [ebp - 0x374], 0
push 0x63638c
mov dword [ebp - 0x370], 7
mov word [ebp - 0x384], ax
call fcn.00457aa0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x36c]
push 1
xor eax, eax
mov dword [ebp - 0x35c], 0
push 0x636394
mov dword [ebp - 0x358], 7
mov word [ebp - 0x36c], ax
call fcn.00457aa0
push 1
lea eax, [ebp - 0x384]
mov byte [ebp - 4], 0xb
push eax
sub esp, 0x18
lea eax, [ebp - 0x354]
mov ecx, esp
lea esi, [ebp - 0x36c]
push eax
call fcn.00457d60
mov edx, esi
lea ecx, [ebp - 0x3b4]
call fcn.0044d270
mov esi, eax
add esp, 0x20
lea eax, [ebp - 0x354]
cmp eax, esi
je 0x44cc77
mov ecx, eax
call fcn.0044a340
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0x354], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x344], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x3a0]
cmp edx, 8
jb 0x44ccb7
mov ecx, dword [ebp - 0x3b4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44ccad
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44d186
push edx
push ecx
call fcn.0048fd5c
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xa
mov edx, dword [ebp - 0x358]
mov dword [ebp - 0x3a4], 0
mov dword [ebp - 0x3a0], 7
mov word [ebp - 0x3b4], ax
cmp edx, 8
jb 0x44cd18
mov ecx, dword [ebp - 0x36c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44cd0e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44d18b
push edx
push ecx
call fcn.0048fd5c
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x370]
cmp edx, 8
jb 0x44cd5c
mov ecx, dword [ebp - 0x384]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44cd52
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44d190
push edx
push ecx
call fcn.0048fd5c
add esp, 8
push 3
xor eax, eax
mov dword [ebp - 0x35c], 0
push 0x636398
lea ecx, [ebp - 0x36c]
mov dword [ebp - 0x358], 7
mov word [ebp - 0x36c], ax
call fcn.00457aa0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x384]
push 1
xor eax, eax
mov dword [ebp - 0x374], 0
push 0x6363a0
mov dword [ebp - 0x370], 7
mov word [ebp - 0x384], ax
call fcn.00457aa0
push 1
lea eax, [ebp - 0x36c]
mov byte [ebp - 4], 0xd
push eax
sub esp, 0x18
lea eax, [ebp - 0x354]
mov ecx, esp
lea esi, [ebp - 0x384]
push eax
call fcn.00457d60
mov edx, esi
lea ecx, [ebp - 0x3b4]
call fcn.0044d270
mov esi, eax
add esp, 0x20
lea eax, [ebp - 0x354]
cmp eax, esi
je 0x44ce2f
mov ecx, eax
call fcn.0044a340
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0x354], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x344], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x3a0]
cmp edx, 8
jb 0x44ce6f
mov ecx, dword [ebp - 0x3b4]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44ce65
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44d195
push edx
push ecx
call fcn.0048fd5c
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0xc
mov edx, dword [ebp - 0x370]
mov dword [ebp - 0x3a4], 0
mov dword [ebp - 0x3a0], 7
mov word [ebp - 0x3b4], ax
cmp edx, 8
jb 0x44ced0
mov ecx, dword [ebp - 0x384]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44cec6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44d19a
push edx
push ecx
call fcn.0048fd5c
add esp, 8
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x358]
cmp edx, 8
jb 0x44cf14
mov ecx, dword [ebp - 0x36c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44cf0a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44d19f
push edx
push ecx
call fcn.0048fd5c
add esp, 8
mov edx, dword [ebp - 0x340]
lea eax, [ebp - 0x354]
mov esi, dword [ebp - 0x354]
cmp edx, 8
mov ecx, dword [ebp - 0x344]
cmovae eax, esi
cmp word [eax + ecx*2 - 2], 0x2e
je 0x44cf77
cmp ecx, edx
jae 0x44cf5c
lea eax, [ecx + 1]
cmp edx, 8
mov dword [ebp - 0x344], eax
lea eax, [ebp - 0x354]
cmovae eax, esi
mov dword [eax + ecx*2], 0x2e
jmp 0x44cf77
push 0x2e
mov byte [ebp - 0x404], 0
push dword [ebp - 0x404]
push ecx
lea ecx, [ebp - 0x354]
call fcn.00457620
cmp dword [ebp - 0x388], 8
lea edx, [ebp - 0x39c]
push dword [ebp - 0x38c]
cmovae edx, dword [ebp - 0x39c]
lea ecx, [ebp - 0x4b0]
call fcn.004547c0
add esp, 4
mov edx, 0x6363a8
mov ecx, eax
call fcn.00452fb0
push dword [ebp - 0x1c]
mov ecx, eax
call fcn.00450510
mov edx, 0x6363a4
mov ecx, eax
call fcn.00452fb0
push dword [ebp - 0x1a]
mov ecx, eax
call fcn.00450510
mov edx, 0x6363a4
mov ecx, eax
call fcn.00452fb0
push dword [ebp - 0x18]
mov ecx, eax
call fcn.00450510
mov edx, 0x6363a4
mov ecx, eax
call fcn.00452fb0
push dword [ebp - 0x16]
mov ecx, eax
call fcn.00450510
push eax
call fcn.00453210
cmp dword [ebp - 0x340], 8
lea edx, [ebp - 0x354]
push dword [ebp - 0x344]
cmovae edx, dword [ebp - 0x354]
mov ecx, eax
call fcn.004547c0
push eax
call fcn.00453210
mov esi, dword [ebp - 0x410]
lea ecx, [ebp - 0x4a8]
add esp, 0xc
push esi
call fcn.00451850
lea ecx, [ebp - 0x4c0]
call fcn.0044d860
mov edx, dword [ebp - 0x340]
cmp edx, 8
jb 0x44d084
mov ecx, dword [ebp - 0x354]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44d07a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44d1a4
push edx
push ecx
call fcn.0048fd5c
add esp, 8
mov edx, dword [ebp - 0x388]
xor eax, eax
mov dword [ebp - 0x344], 0
mov dword [ebp - 0x340], 7
mov word [ebp - 0x354], ax
cmp edx, 8
jb 0x44d0e1
mov ecx, dword [ebp - 0x39c]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44d0d7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44d1a9
push edx
push ecx
call fcn.0048fd5c
add esp, 8
xor eax, eax
mov dword [ebp - 0x38c], 0
mov dword [ebp - 0x388], 7
mov word [ebp - 0x39c], ax
mov eax, dword [edi]
test eax, eax
je 0x44d10d
push eax
call fcn.0048fd9e
add esp, 4
push 0x1c98
push edi
mov dword [edi], 0
call fcn.0048fd5c
mov edx, dword [ebp - 0x3b8]
add esp, 8
cmp edx, 8
jb 0x44d15d
mov ecx, dword [ebp - 0x3cc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x44d153
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x44d1ae
push edx
push ecx
call fcn.0048fd5c
add esp, 8
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0048f6ef
mov esp, ebp
pop ebp
ret 4
call fcn.00592e1e
call fcn.00592e1e
call fcn.00592e1e
call fcn.00592e1e
call fcn.00592e1e
call fcn.00592e1e
call fcn.00592e1e
call fcn.00592e1e
call fcn.00592e1e
call fcn.00592e1e
call fcn.00592e1e
int3