Function at 0x550d00
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x663083
mov eax, dword fs:[0]
push eax
mov eax, 0x35b0
call fcn.005bdf80
mov eax, dword [0x6fc0c4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x3548], ecx
mov eax, dword [ebp + 0x14]
mov dword [eax], 1
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x3538], ecx
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x3544], edx
lea ecx, [ebp - 0x3534]
call fcn.00479760
lea eax, [ebp - 0x3534]
push eax
mov ecx, dword [ebp - 0x3544]
push ecx
mov edx, dword [ebp - 0x3538]
push edx
call fcn.00469af0
mov ecx, eax
call fcn.0046fe60
movzx eax, al
test eax, eax
jne 0x550d8a
xor eax, eax
jmp 0x55118b
cmp dword [ebp - 0x352c], 0x64
jge 0x550d9a
xor eax, eax
jmp 0x55118b
cmp dword [ebp - 0x91e], 2
jne 0x55112e
lea ecx, [ebp - 0x28]
call fcn.00446a90
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x3540]
call fcn.00545730
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
push ecx
mov edx, dword [ebp - 0x3544]
push edx
mov eax, dword [ebp - 0x3538]
push eax
lea ecx, [ebp - 0x3540]
call fcn.00546040
lea ecx, [ebp - 0x28]
call fcn.0043d1b0
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x550e28
mov dword [ebp - 0x3550], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3540]
call fcn.00545750
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.0043c550
mov eax, dword [ebp - 0x3550]
jmp 0x55118b
mov ecx, dword [ebp - 0x3538]
push ecx
lea edx, [ebp - 0xd0]
push edx
call fcn.0044fd70
add esp, 8
mov dword [ebp - 0x3554], eax
mov eax, dword [ebp - 0x3554]
mov dword [ebp - 0x3558], eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x3558]
push ecx
push 0x6884cc
call fcn.004a5bd0
add eax, 0xc4
push eax
lea edx, [ebp - 0xe8]
push edx
call fcn.00442260
add esp, 8
mov dword [ebp - 0x355c], eax
mov eax, dword [ebp - 0x355c]
mov dword [ebp - 0x3560], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x3560]
push ecx
push 0x6884d0
call fcn.004a5bd0
add eax, 4
push eax
lea edx, [ebp - 0x100]
push edx
call fcn.00442260
add esp, 8
mov dword [ebp - 0x35a4], eax
mov eax, dword [ebp - 0x35a4]
mov dword [ebp - 0x35a0], eax
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x35a0]
push ecx
push 0x6884d4
push 0x7078e4
push 0x6884dc
lea edx, [ebp - 0x118]
push edx
call fcn.004440d0
add esp, 0xc
mov dword [ebp - 0x359c], eax
mov eax, dword [ebp - 0x359c]
mov dword [ebp - 0x3598], eax
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x3598]
push ecx
lea edx, [ebp - 0x58]
push edx
call fcn.00444050
add esp, 0xc
mov dword [ebp - 0x3594], eax
mov eax, dword [ebp - 0x3594]
mov dword [ebp - 0x358c], eax
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x358c]
push ecx
lea edx, [ebp - 0x70]
push edx
call fcn.0045fb00
add esp, 0xc
mov dword [ebp - 0x3588], eax
mov eax, dword [ebp - 0x3588]
mov dword [ebp - 0x3584], eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x3584]
push ecx
lea edx, [ebp - 0x88]
push edx
call fcn.00444050
add esp, 0xc
mov dword [ebp - 0x3580], eax
mov eax, dword [ebp - 0x3580]
mov dword [ebp - 0x357c], eax
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x357c]
push ecx
lea edx, [ebp - 0xa0]
push edx
call fcn.0045fb00
add esp, 0xc
mov dword [ebp - 0x3578], eax
mov eax, dword [ebp - 0x3578]
mov dword [ebp - 0x3590], eax
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x3590]
push ecx
lea edx, [ebp - 0xb8]
push edx
call fcn.00444050
add esp, 0xc
mov dword [ebp - 0x3564], eax
mov eax, dword [ebp - 0x3564]
mov dword [ebp - 0x3568], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x3568]
push ecx
lea edx, [ebp - 0x40]
push edx
call fcn.0045fb00
add esp, 0xc
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0xb8]
call fcn.0043c550
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0xa0]
call fcn.0043c550
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x88]
call fcn.0043c550
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x70]
call fcn.0043c550
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x58]
call fcn.0043c550
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x118]
call fcn.0043c550
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x100]
call fcn.0043c550
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xe8]
call fcn.0043c550
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0xd0]
call fcn.0043c550
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x35a8], esp
lea eax, [ebp - 0x40]
push eax
call fcn.004468a0
mov dword [ebp - 0x356c], eax
mov ecx, dword [ebp - 0x356c]
mov dword [ebp - 0x35ac], ecx
mov byte [ebp - 4], 0x15
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x35b0], esp
lea edx, [ebp - 0x28]
push edx
call fcn.004468a0
mov dword [ebp - 0x35b4], eax
mov byte [ebp - 4], 0x14
call fcn.00455c20
add esp, 0x30
mov dword [ebp - 0x3570], eax
mov eax, dword [ebp - 0x3570]
mov dword [ebp - 0x354c], eax
cmp dword [ebp - 0x354c], 0
je 0x5510f2
lea ecx, [ebp - 0x354c]
push ecx
mov ecx, dword [ebp - 0x3548]
add ecx, 0x440
call fcn.00468a70
mov dword [ebp - 0x3574], 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x40]
call fcn.0043c550
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3540]
call fcn.00545750
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.0043c550
mov eax, dword [ebp - 0x3574]
jmp 0x55118b
cmp dword [ebp - 0x91e], 3
jne 0x551186
xor edx, edx
mov byte [ebp - 0x3539], dl
lea eax, [ebp - 0x3544]
push eax
lea ecx, [ebp - 0x3538]
push ecx
mov edx, dword [ebp - 0x3548]
add edx, 0x248
push edx
lea eax, [ebp - 0x353a]
push eax
lea ecx, [ebp - 0x35bc]
push ecx
call fcn.00521b00
mov ecx, eax
call fcn.0056e6a0
lea ecx, [ebp - 0x35bc]
call fcn.00520cc0
mov eax, 1
jmp 0x55118b
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005bcdb6
mov esp, ebp
pop ebp
ret 0x10