Function at 0x450910
Capabilities:
Check if file exists

Disassembly:
push 0xffffffffffffffff
push 0x4d8a17
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2ac
mov eax, dword [0x50ba00]
push ebx
mov dword [esp + 0x2ac], eax
push ebp
lea eax, [esp + 0x228]
push eax
mov ebp, ecx
call fcn.00453ba0
xor ebx, ebx
lea ecx, [esp + 0x120]
mov dword [esp + 0x2c0], ebx
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x1a0], ebx
mov word [esp + 0x120], bx
mov edx, dword [esp + 0x2cc]
mov eax, dword [esp + 0x22c]
push edx
push eax
lea ecx, [esp + 0x124]
push 0x4dba7c
push ecx
mov byte [esp + 0x2d0], 1
call fcn.00401720
mov edx, dword [esp + 0x12c]
add esp, 0x14
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x450c36
push esi
lea eax, [esp + 0x1a8]
push edi
mov dword [esp + 0x1a8], eax
mov dword [esp + 0x22c], ebx
mov word [esp + 0x1ac], bx
mov edx, dword [esp + 0x120]
push 0x3c
mov ecx, eax
push ecx
push edx
mov byte [esp + 0x2d0], 2
call fcn.004c9a80
mov ecx, dword [esp + 0x1b4]
add esp, 0xc
lea eax, [esp + 0x9c]
push ecx
lea ecx, [esp + 0x9c]
mov dword [esp + 0x9c], eax
mov dword [esp + 0xe0], ebx
mov byte [esp + 0xa0], bl
call fcn.0040d170
mov edi, dword [esp + 0x98]
mov eax, dword [ebp + 0x6e8]
mov esi, edi
lea esp, [esp]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x450a54
cmp cl, bl
je 0x450a50
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x450a54
add eax, 2
add esi, 2
cmp cl, bl
jne 0x450a30
xor eax, eax
jmp 0x450a59
sbb eax, eax
sbb eax, 0xffffffff
xor ecx, ecx
cmp eax, ebx
sete cl
lea edx, [esp + 0x9c]
cmp edi, edx
mov esi, ecx
je 0x450a76
push edi
call fcn.00482838
add esp, 4
pop edi
cmp esi, ebx
pop esi
je 0x450c1b
lea eax, [esp + 0x94]
mov dword [esp + 0x90], eax
mov dword [esp + 0x114], ebx
mov word [esp + 0x94], bx
lea ecx, [esp + 0xc]
mov dword [esp + 8], ecx
mov dword [esp + 0x8c], ebx
mov word [esp + 0xc], bx
mov edx, dword [esp + 0x2c8]
push edx
mov byte [esp + 0x2c0], 4
call fcn.00451530
push eax
lea eax, [esp + 0x10]
push 0x4ea2a4
push eax
call fcn.00401720
mov eax, dword [eax]
add esp, 0x10
push eax
lea ecx, [esp + 0x94]
call fcn.00407660
mov eax, dword [esp + 8]
lea ecx, [esp + 0xc]
cmp eax, ecx
mov byte [esp + 0x2bc], 3
je 0x450b05
push eax
call fcn.00482838
add esp, 4
push 0x4dbd78
lea edx, [esp + 0xc]
push edx
lea ecx, [ebp + 0x94]
call fcn.0042ff80
mov eax, dword [eax]
push eax
lea ecx, [esp + 0x94]
call fcn.00407660
mov eax, dword [esp + 8]
lea ecx, [esp + 0xc]
cmp eax, ecx
je 0x450b3e
push eax
call fcn.00482838
add esp, 4
lea edx, [esp + 0xc]
mov dword [esp + 8], edx
mov dword [esp + 0x8c], ebx
mov word [esp + 0xc], bx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
lea eax, [esp + 0xc]
push 0x4ea28c
push eax
call fcn.00401720
mov ecx, dword [eax]
add esp, 0xc
push ecx
lea ecx, [esp + 0x94]
call fcn.00407660
mov eax, dword [esp + 8]
lea edx, [esp + 0xc]
cmp eax, edx
je 0x450b8f
push eax
call fcn.00482838
add esp, 4
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x2c4]
push ebx
push eax
push ecx
call fcn.00454260
mov eax, dword [esp + 0x9c]
lea edx, [esp + 0xa0]
add esp, 0xc
cmp eax, edx
je 0x450bc3
push eax
call fcn.00482838
add esp, 4
mov eax, dword [esp + 0x1a0]
lea ecx, [esp + 0x1a4]
cmp eax, ecx
je 0x450bde
push eax
call fcn.00482838
add esp, 4
mov eax, dword [esp + 0x118]
lea edx, [esp + 0x11c]
cmp eax, edx
je 0x450bf9
push eax
call fcn.00482838
add esp, 4
mov eax, dword [esp + 0x228]
lea ecx, [esp + 0x22c]
cmp eax, ecx
je 0x450c14
push eax
call fcn.00482838
add esp, 4
mov eax, 1
jmp 0x450c6e
mov eax, dword [esp + 0x1a0]
lea edx, [esp + 0x1a4]
cmp eax, edx
je 0x450c36
push eax
call fcn.00482838
add esp, 4
mov eax, dword [esp + 0x118]
lea ecx, [esp + 0x11c]
cmp eax, ecx
je 0x450c51
push eax
call fcn.00482838
add esp, 4
mov eax, dword [esp + 0x228]
lea edx, [esp + 0x22c]
cmp eax, edx
je 0x450c6c
push eax
call fcn.00482838
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x2b4]
pop ebp
mov dword fs:[0], ecx
mov ecx, dword [esp + 0x2ac]
pop ebx
call fcn.00482423
add esp, 0x2b8
ret 8