Function at 0x464619
Capabilities:
Check if file exists

Disassembly:
push 0x11c
mov eax, 0x5e34c5
call fcn.0046dcba
mov esi, dword [ebp + 0xc]
lea ecx, [ebp - 0x108]
mov ebx, dword [ebp + 8]
xor edi, edi
push esi
mov dword [ebp - 0x10c], ebx
mov dword [ebp - 0x118], esi
mov dword [ebp - 0x128], edi
call fcn.00404060
xor eax, eax
mov dword [ebp - 4], edi
mov dword [ebp - 0xdc], 7
mov dword [ebp - 0xe0], edi
mov word [ebp - 0xf0], ax
push 0xc8
lea eax, [ebp - 0xd8]
mov byte [ebp - 4], 1
push edi
push eax
call fcn.00480620
add esp, 0xc
call fcn.00451fed
test al, al
je 0x4646a8
aas
ljmp 0xdb70
cmp dword [ebp - 0xf8], 0
je 0x464906
cmp dword [ebp - 0xf4], 8
lea eax, [ebp - 0x108]
cmovae eax, dword [ebp - 0x108]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x464906
lea eax, [ebp - 0x120]
mov dword [ebp - 0x11c], edi
push eax
push esi
mov dword [ebp - 0x120], edi
mov dword [ebp - 0x124], edi
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [ebp - 0x114], eax
test eax, eax
jne 0x464732
lea eax, [ebp - 0xf0]
mov ecx, ebx
push eax
call fcn.00452e8f
push edi
push 1
lea ecx, [ebp - 0xf0]
call fcn.0041ece0
push edi
push 1
lea ecx, [ebp - 0x108]
call fcn.0041ece0
mov eax, ebx
jmp 0x46495b
inc eax
push eax
call fcn.0046d813
mov dword [ebp - 0x110], eax
pop ecx
test eax, eax
je 0x464701
call [ecx - 0x7b]
sal byte [ebp + edi*4 - 0x18], 0x11
invalid
call fcn.0045225a
test al, al
je 0x46475d
cmp edi, dword [edi - 0x75]
inc edi
fisub dword [edi - 0x3722b0cd]
movsd dword es:[edi], dword [esi]
dec eax
scasb al, byte es:[edi]
push esi
sub ebp, eax
jns 0x46473e
call fcn.004525db
test al, al
je 0x464786
invalid
dec edx
enter 0xfffffffffffff102, 7
and ecx, dword [ecx + edx*4 - 0x59fb9541]
cmp eax, 0xa547a8ce
int 0x4c
ficom dword [edi + eax*4]
push ds
or eax, 0xf87c7882
arpl word [esi], cx
fnstsw ax
call fcn.00451fed
test al, al
je 0x4647ad
jmp 0x3925d661
mov edi, dword [ebp - 0x110]
mov ebp, 0xfffffef0
xor ebx, ebx
push edi
push dword [ebp - 0x114]
push ebx
push dword [ebp - 0x118]
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
jne 0x4647f9
push edi
call fcn.0046d81c
pop ecx
mov ecx, dword [ebp - 0x10c]
lea eax, [ebp - 0xf0]
push eax
call fcn.00452e8f
push ebx
push 1
lea ecx, [ebp - 0xf0]
call fcn.0041ece0
push ebx
jmp 0x464948
call fcn.004524c7
test al, al
je 0x464815
sbb byte [esp + edi*4 - 0x433c1523], cl
mov bh, 0xc1
xchg esp, eax
push eax
add al, 0xc8
js 0x4647ae
mov al, 0xdd
xor ebx, ebx
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp - 0x11c]
push eax
push 0x5e6bac
push edi
call sub.VERSION.dll_VerQueryValueW
push edi
test eax, eax
je 0x4647cd
mov ecx, dword [ebp - 0x11c]
mov eax, dword [ecx + 8]
mov ebx, eax
movzx eax, ax
mov dword [ebp - 0x110], eax
movzx eax, word [ecx + 0xe]
shr ebx, 0x10
mov dword [ebp - 0x118], ebx
mov dword [ebp - 0x114], eax
call fcn.0046d81c
pop ecx
call fcn.0045243d
test al, al
je 0x46488c
mov al, byte [0xf9c9c17f]
xchg ebp, eax
mov edi, 0xccf22e85
sub ch, byte [eax - 0x3e]
invalid
call fcn.00452215
test al, al
je 0x4648b5
inc ecx
pushal
pop ebx
cmp al, 0x11
adc ebp, dword [esi]
pop ebp
and ebp, edx
inc eax
adc dword fs:[edx], esp
nop
insd dword es:[edi], dx
adc eax, ecx
inc ecx
imul edx, dword [esi + 0x36], 0xffffff80
xchg dword [ebx - 0x21d9e82e], edi
add eax, 0xecb5fff4
invalid
push dword [ebp - 0x114]
lea eax, [ebp - 0xd8]
push 1
push dword [ebp - 0x110]
push ebx
push 0x5ede18
push eax
call fcn.00407df0
add esp, 0x18
cmp word [ebp - 0xd8], 0
jne 0x4648e6
xor eax, eax
jmp 0x4648f3
lea eax, [ebp - 0xd8]
push eax
call fcn.0048ed77
pop ecx
push eax
lea eax, [ebp - 0xd8]
push eax
lea ecx, [ebp - 0xf0]
call fcn.00402ac0
call fcn.00452596
test al, al
je 0x464925
jp 0x464950
stc
inc eax
aad 0x64
fadd st(3)
dec ebp
in al, 0xab
wait
jl 0x464917
ret 0xc426
mov ecx, dword [ebp - 0x10c]
lea eax, [ebp - 0xf0]
push eax
call fcn.00452e8f
push 0
push 1
lea ecx, [ebp - 0xf0]
call fcn.0041ece0
push 0
push 1
lea ecx, [ebp - 0x108]
call fcn.0041ece0
mov eax, dword [ebp - 0x10c]
call fcn.0046dc64
ret