Function at 0x403ecb
Capabilities:
Check if file exists
Delete file
Get file attributes
Get file version info
Move file

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x11ec
call fcn.00452960
push ebx
push esi
push edi
mov dword [ebp - 0xbe4], 0
mov eax, dword [0x462284]
push eax
call fcn.0043a0f4
add esp, 4
cmp dword [0x45e03c], 0
je 0x403f18
mov eax, dword [0x462284]
push eax
push 0x9a3940
push str._r_nINIT01:_IPATH__s_._d
call fcn.00452380
add esp, 0xc
push 0x9a3940
call fcn.00403cd6
add esp, 4
mov edi, 0x9a3940
mov ecx, 0xffffffff
sub eax, eax
repne scasb al, byte es:[edi]
not ecx
lea eax, [ecx - 1]
mov dword [ebp - 0xbe8], eax
dec dword [ebp - 0xbe8]
mov eax, dword [ebp - 0xbe8]
mov dword [ebp - 4], eax
mov eax, 0x4601a0
mov ecx, 0x4601a4
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push 0x4601a8
push 0x200
lea eax, [ebp - 0xbd8]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0xbd8]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x40407a
mov eax, 0x4601bc
mov ecx, 0x4601c0
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push 0x4601c4
push 0x200
lea eax, [ebp - 0xde8]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0xde8]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0xbe8], eax
cmp dword [0x45e03c], 0
je 0x40402f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [ebp - 0xbe8]
push eax
lea eax, [ebp - 0xde8]
push eax
push 0x4601d8
call fcn.00452380
add esp, 0x10
push 3
lea eax, [ebp - 0xde8]
push eax
lea eax, [ebp - 0xbd8]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExA]
mov dword [ebp - 0xbe8], eax
cmp dword [0x45e03c], 0
je 0x40407a
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [ebp - 0xbe8]
push eax
lea eax, [ebp - 0xbd8]
push eax
push 0x4601f0
call fcn.00452380
add esp, 0x10
mov eax, dword [ebp - 4]
mov dword [ebp - 0xbe8], eax
cmp dword [0x462284], 0
je 0x4041d6
mov edi, 0x9a3940
mov ecx, 0xffffffff
sub eax, eax
repne scasb al, byte es:[edi]
not ecx
lea eax, [ecx - 1]
mov dword [ebp - 0xbe8], eax
mov eax, 0x460204
mov ecx, 0x460208
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push 0x46020c
push 0x200
lea eax, [ebp - 0xbd8]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0xbd8]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x4041d6
mov eax, 0x460220
mov ecx, 0x460224
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push 0x460228
push 0x200
lea eax, [ebp - 0xde8]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0xde8]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0xbe8], eax
cmp dword [0x45e03c], 0
je 0x40418b
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [ebp - 0xbe8]
push eax
lea eax, [ebp - 0xde8]
push eax
push 0x46023c
call fcn.00452380
add esp, 0x10
push 3
lea eax, [ebp - 0xde8]
push eax
lea eax, [ebp - 0xbd8]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExA]
mov dword [ebp - 0xbe8], eax
cmp dword [0x45e03c], 0
je 0x4041d6
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [ebp - 0xbe8]
push eax
lea eax, [ebp - 0xbd8]
push eax
push 0x460254
call fcn.00452380
add esp, 0x10
mov eax, dword [ebp - 4]
mov dword [ebp - 0xbe8], eax
mov eax, 0x460268
mov ecx, 0x46026c
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push str._s_sLWATRAY.NEW
push 0x200
lea eax, [ebp - 0xbd8]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0xbd8]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x40430c
mov eax, 0x460280
mov ecx, 0x460284
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push 0x460288
push 0x200
lea eax, [ebp - 0xde8]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0xde8]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0xbe8], eax
cmp dword [0x45e03c], 0
je 0x4042c1
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [ebp - 0xbe8]
push eax
lea eax, [ebp - 0xde8]
push eax
push 0x460298
call fcn.00452380
add esp, 0x10
push 3
lea eax, [ebp - 0xde8]
push eax
lea eax, [ebp - 0xbd8]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExA]
mov dword [ebp - 0xbe8], eax
cmp dword [0x45e03c], 0
je 0x40430c
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [ebp - 0xbe8]
push eax
lea eax, [ebp - 0xbd8]
push eax
push 0x4602b0
call fcn.00452380
add esp, 0x10
mov edi, 0x9a3940
mov ecx, 0xffffffff
sub eax, eax
repne scasb al, byte es:[edi]
not ecx
lea eax, [ecx - 1]
mov dword [ebp - 0xbe8], eax
mov eax, 0x4602c4
mov ecx, 0x4602c8
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push 0x4602cc
push 0x200
lea eax, [ebp - 0xfec]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0xfec]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x404452
mov eax, 0x4602e0
mov ecx, 0x4602e4
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push 0x4602e8
push 0x200
lea eax, [ebp - 0x11ec]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0x11ec]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [ebp - 0xbe8], eax
cmp dword [0x45e03c], 0
je 0x404407
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [ebp - 0xbe8]
push eax
lea eax, [ebp - 0x11ec]
push eax
push 0x4602fc
call fcn.00452380
add esp, 0x10
push 3
lea eax, [ebp - 0x11ec]
push eax
lea eax, [ebp - 0xfec]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExA]
mov dword [ebp - 0xbe8], eax
cmp dword [0x45e03c], 0
je 0x404452
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov eax, dword [ebp - 0xbe8]
push eax
lea eax, [ebp - 0xfec]
push eax
push 0x460314
call fcn.00452380
add esp, 0x10
mov eax, dword [ebp - 4]
mov dword [ebp - 0xbe8], eax
mov eax, 0x460328
mov ecx, 0x46032c
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push str._s_sLWATRAY.EXE
push 0x200
lea eax, [ebp - 0xfec]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0xfec]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x4044f4
cmp dword [0x45e03c], 0
je 0x4044d7
lea eax, [ebp - 0xfec]
push eax
push str._r_nINITTRAY:_NOT_FOUND:_PATH__s_
call fcn.00452380
add esp, 8
mov edi, 0x5ad600
xor eax, eax
mov ecx, 0xb2
rep stosd dword es:[edi], eax
mov dword [0x462160], 1
jmp 0x404532
lea edi, [ebp - 0xfec]
mov ecx, 0xffffffff
sub eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov edx, edi
mov edi, 0x5ad600
mov esi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [0x46215c], 1
mov dword [0x462160], 1
mov eax, dword [ebp - 4]
mov dword [ebp - 0xbe8], eax
mov eax, 0x460360
mov ecx, 0x460364
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push 0x460368
push 0x200
lea eax, [ebp - 0xfec]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0xfec]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x4045c6
cmp dword [0x45e03c], 0
je 0x4045b7
lea eax, [ebp - 0xfec]
push eax
push str._r_nINIT02:_ABORTING_NOT_FOUND:_PATH__s_
call fcn.00452380
add esp, 8
mov eax, 1
jmp 0x404e83
lea eax, [ebp - 0x9d8]
push eax
push 0x9d0
push 0
lea eax, [ebp - 0xfec]
push eax
call sub.VERSION.dll_GetFileVersionInfoA
mov dword [ebp - 0xbdc], eax
cmp dword [ebp - 0xbdc], 0
jne 0x404625
cmp dword [0x45e03c], 0
je 0x40461b
lea eax, [ebp - 0xfec]
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str._r_nINIT03:_ABORTING_ERROR_OBTAINING_VERSION__d___s_
call fcn.00452380
add esp, 0xc
mov eax, 1
jmp 0x404e83
mov dword [ebp - 8], 0
lea eax, [ebp - 0xbdc]
push eax
lea eax, [ebp - 8]
push eax
push 0x4603d8
lea eax, [ebp - 0x9d8]
push eax
call sub.VERSION.dll_VerQueryValueA
mov dword [ebp - 0xdec], eax
cmp dword [ebp - 8], 0
je 0x404781
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
and eax, 0xffff0000
mov dword [ebp - 0xbdc], eax
sar dword [ebp - 0xbdc], 0x10
and dword [ebp - 0xbdc], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
mov dword [ebp - 0xbe4], eax
and dword [ebp - 0xbe4], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0xc]
and eax, 0xffff0000
mov dword [ebp - 0xdec], eax
sar dword [ebp - 0xdec], 0x10
and dword [ebp - 0xdec], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0xbe0], eax
and dword [ebp - 0xbe0], 0xff
cmp dword [0x45e03c], 0
je 0x404705
mov eax, dword [ebp - 0xbe0]
push eax
mov eax, dword [ebp - 0xdec]
push eax
mov eax, dword [ebp - 0xbe4]
push eax
mov eax, dword [ebp - 0xbdc]
push eax
lea eax, [ebp - 0xfec]
push eax
push 0x4603dc
call fcn.00452380
add esp, 0x18
cmp dword [ebp - 0xbdc], 3
jne 0x404781
cmp dword [ebp - 0xbe4], 0x30
jae 0x404743
cmp dword [0x45e03c], 0
je 0x404739
push 0x460404
call fcn.00452380
add esp, 4
mov eax, 1
jmp 0x404e83
cmp dword [ebp - 0xbe4], 0x30
jne 0x404781
cmp dword [ebp - 0xdec], 2
jge 0x404781
cmp dword [0x45e03c], 0
je 0x404777
push str._r_nOLD_CPTLWA32.DLL_FOUND__ABORTING_LWA_LOAD_
call fcn.00452380
add esp, 4
mov eax, 1
jmp 0x404e83
cmp dword [0x462284], 0
je 0x404e7c
mov eax, dword [ebp - 4]
mov dword [ebp - 0xbe8], eax
mov eax, 0x460464
mov ecx, 0x460468
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push 0x46046c
push 0x200
lea eax, [ebp - 0xfec]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0xfec]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x404822
cmp dword [0x45e03c], 0
je 0x404813
lea eax, [ebp - 0xfec]
push eax
push str._r_nINIT04:_ABORTING_NOT_FOUND:_PATH__s_
call fcn.00452380
add esp, 8
mov eax, 1
jmp 0x404e83
lea eax, [ebp - 0x9d8]
push eax
push 0x9d0
push 0
lea eax, [ebp - 0xfec]
push eax
call sub.VERSION.dll_GetFileVersionInfoA
mov dword [ebp - 0xbdc], eax
cmp dword [ebp - 0xbdc], 0
jne 0x404881
cmp dword [0x45e03c], 0
je 0x404877
lea eax, [ebp - 0xfec]
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str._r_nINIT05:_ABORTING_ERROR_OBTAINING_VERSION__d___s_
call fcn.00452380
add esp, 0xc
mov eax, 1
jmp 0x404e83
mov dword [ebp - 8], 0
lea eax, [ebp - 0xbdc]
push eax
lea eax, [ebp - 8]
push eax
push 0x4604dc
lea eax, [ebp - 0x9d8]
push eax
call sub.VERSION.dll_VerQueryValueA
mov dword [ebp - 0xdec], eax
cmp dword [ebp - 8], 0
je 0x4049dd
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
and eax, 0xffff0000
mov dword [ebp - 0xbdc], eax
sar dword [ebp - 0xbdc], 0x10
and dword [ebp - 0xbdc], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
mov dword [ebp - 0xbe4], eax
and dword [ebp - 0xbe4], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0xc]
and eax, 0xffff0000
mov dword [ebp - 0xdec], eax
sar dword [ebp - 0xdec], 0x10
and dword [ebp - 0xdec], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0xbe0], eax
and dword [ebp - 0xbe0], 0xff
cmp dword [0x45e03c], 0
je 0x404961
mov eax, dword [ebp - 0xbe0]
push eax
mov eax, dword [ebp - 0xdec]
push eax
mov eax, dword [ebp - 0xbe4]
push eax
mov eax, dword [ebp - 0xbdc]
push eax
lea eax, [ebp - 0xfec]
push eax
push 0x4604e0
call fcn.00452380
add esp, 0x18
cmp dword [ebp - 0xbdc], 3
jne 0x4049dd
cmp dword [ebp - 0xbe4], 0x2e
jae 0x40499f
cmp dword [0x45e03c], 0
je 0x404995
push 0x460508
call fcn.00452380
add esp, 4
mov eax, 1
jmp 0x404e83
cmp dword [ebp - 0xbe4], 0x2e
jne 0x4049dd
cmp dword [ebp - 0xdec], 8
jge 0x4049dd
cmp dword [0x45e03c], 0
je 0x4049d3
push str._r_nOLD_CPTLWA64.DLL_FOUND__ABORTING_LWA_LOAD_
call fcn.00452380
add esp, 4
mov eax, 1
jmp 0x404e83
mov eax, dword [ebp - 4]
mov dword [ebp - 0xbe8], eax
mov eax, 0x460568
mov ecx, 0x46056c
mov edx, dword [ebp - 0xbe8]
movsx edx, byte [edx + 0x9a3940]
xor ebx, ebx
cmp edx, 0x5c
setne bl
dec ebx
sub ecx, eax
and ebx, ecx
add ebx, eax
push ebx
push 0x9a3940
push 0x460570
push 0x200
lea eax, [ebp - 0xfec]
push eax
call fcn.00452660
add esp, 0x14
lea eax, [ebp - 0xfec]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x404a71
cmp dword [0x45e03c], 0
je 0x404a62
lea eax, [ebp - 0xfec]
push eax
push str._r_nINIT06:_ABORTING_NOT_FOUND:_PATH__s_
call fcn.00452380
add esp, 8
mov eax, 1
jmp 0x404e83
lea eax, [ebp - 0x9d8]
push eax
push 0x9d0
push 0
lea eax, [ebp - 0xfec]
push eax
call sub.VERSION.dll_GetFileVersionInfoA
mov dword [ebp - 0xbdc], eax
cmp dword [ebp - 0xbdc], 0
jne 0x404ad0
cmp dword [0x45e03c], 0
je 0x404ac6
lea eax, [ebp - 0xfec]
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str._r_nINIT07:_ABORTING_ERROR_OBTAINING_VERSION__d___s_
call fcn.00452380
add esp, 0xc
mov eax, 1
jmp 0x404e83
mov dword [ebp - 8], 0
lea eax, [ebp - 0xbdc]
push eax
lea eax, [ebp - 8]
push eax
push 0x4605e0
lea eax, [ebp - 0x9d8]
push eax
call sub.VERSION.dll_VerQueryValueA
mov dword [ebp - 0xdec], eax
cmp dword [ebp - 8], 0
je 0x404c2c
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
and eax, 0xffff0000
mov dword [ebp - 0xbdc], eax
sar dword [ebp - 0xbdc], 0x10
and dword [ebp - 0xbdc], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
mov dword [ebp - 0xbe4], eax
and dword [ebp - 0xbe4], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0xc]
and eax, 0xffff0000
mov dword [ebp - 0xdec], eax
sar dword [ebp - 0xdec], 0x10
and dword [ebp - 0xdec], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0xbe0], eax
and dword [ebp - 0xbe0], 0xff
cmp dword [0x45e03c], 0
je 0x404bb0
mov eax, dword [ebp - 0xbe0]
push eax
mov eax, dword [ebp - 0xdec]
push eax
mov eax, dword [ebp - 0xbe4]
push eax
mov eax, dword [ebp - 0xbdc]
push eax
lea eax, [ebp - 0xfec]
push eax
push 0x4605e4
call fcn.00452380
add esp, 0x18
cmp dword [ebp - 0xbdc], 3
jne 0x404c2c
cmp dword [ebp - 0xbe4], 0x27
jae 0x404bee
cmp dword [0x45e03c], 0
je 0x404be4
push 0x46060c
call fcn.00452380
add esp, 4
mov eax, 1
jmp 0x404e83
cmp dword [ebp - 0xbe4], 0x27
jne 0x404c2c
cmp dword [ebp - 0xdec], 0x15
jge 0x404c2c
cmp dword [0x45e03c], 0
je 0x404c22
push str._r_nOLD_CPT_X64A.EXE_FOUND__ABORTING_LWA_LOAD_
call fcn.00452380
add esp, 4
mov eax, 1
jmp 0x404e83
push 0x200
lea eax, [ebp - 0xfec]
push eax
push 0x46066c
call fcn.004280cc
add esp, 0xc
lea eax, [ebp - 0xfec]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x404c8b
cmp dword [0x45e03c], 0
je 0x404c7c
lea eax, [ebp - 0xfec]
push eax
push str._r_nINIT08:_ABORTING_NOT_FOUND:_PATH__s_
call fcn.00452380
add esp, 8
mov eax, 1
jmp 0x404e83
lea eax, [ebp - 0x9d8]
push eax
push 0x9d0
push 0
lea eax, [ebp - 0xfec]
push eax
call sub.VERSION.dll_GetFileVersionInfoA
mov dword [ebp - 0xbdc], eax
cmp dword [ebp - 0xbdc], 0
jne 0x404cea
cmp dword [0x45e03c], 0
je 0x404ce0
lea eax, [ebp - 0xfec]
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str._r_nINIT09:_ABORTING_ERROR_OBTAINING_VERSION__d___s_
call fcn.00452380
add esp, 0xc
mov eax, 1
jmp 0x404e83
mov dword [ebp - 8], 0
lea eax, [ebp - 0xbdc]
push eax
lea eax, [ebp - 8]
push eax
push 0x4606f4
lea eax, [ebp - 0x9d8]
push eax
call sub.VERSION.dll_VerQueryValueA
mov dword [ebp - 0xdec], eax
cmp dword [ebp - 8], 0
je 0x404e77
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
and eax, 0xffff0000
mov dword [ebp - 0xbdc], eax
sar dword [ebp - 0xbdc], 0x10
and dword [ebp - 0xbdc], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
mov dword [ebp - 0xbe4], eax
and dword [ebp - 0xbe4], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0xc]
and eax, 0xffff0000
mov dword [ebp - 0xdec], eax
sar dword [ebp - 0xdec], 0x10
and dword [ebp - 0xdec], 0xff
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0xbe0], eax
and dword [ebp - 0xbe0], 0xff
cmp dword [0x45e03c], 0
je 0x404dca
mov eax, dword [ebp - 0xbe0]
push eax
mov eax, dword [ebp - 0xdec]
push eax
mov eax, dword [ebp - 0xbe4]
push eax
mov eax, dword [ebp - 0xbdc]
push eax
lea eax, [ebp - 0xfec]
push eax
push 0x4606f8
call fcn.00452380
add esp, 0x18
cmp dword [ebp - 0xbdc], 4
jge 0x404dfb
cmp dword [0x45e03c], 0
je 0x404df1
push 0x460720
call fcn.00452380
add esp, 4
mov eax, 1
jmp 0x404e83
cmp dword [ebp - 0xbdc], 4
jne 0x404e77
cmp dword [ebp - 0xbe4], 2
jae 0x404e39
cmp dword [0x45e03c], 0
je 0x404e2f
push 0x460750
call fcn.00452380
add esp, 4
mov eax, 1
jmp 0x404e83
cmp dword [ebp - 0xbe4], 2
jne 0x404e77
cmp dword [ebp - 0xdec], 0xb
jge 0x404e77
cmp dword [0x45e03c], 0
je 0x404e6d
push str._r_nOLD_STLWA_64.SYS_FOUND__ABORTING_LWA_LOAD_
call fcn.00452380
add esp, 4
mov eax, 1
jmp 0x404e83
jmp 0x404e7c
xor eax, eax
jmp 0x404e83
pop edi
pop esi
pop ebx
leave
ret