Function at 0x50bf70
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x62e699
mov eax, dword fs:[0]
push eax
sub esp, 0x234
mov eax, dword [0x6b278c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x1ec], ecx
mov dword [ebp - 0x1e8], 0
mov dword [ebp - 4], 1
lea ecx, [ebp + 0xc]
call fcn.0040e5d0
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x50bfd1
mov eax, dword [ebp - 0x1ec]
cmp dword [eax + 0x40], 0
jne 0x50c001
push 0x64f01c
mov ecx, dword [ebp + 8]
call fcn.0040e4b0
mov ecx, dword [ebp - 0x1e8]
or ecx, 1
mov dword [ebp - 0x1e8], ecx
mov byte [ebp - 4], 0
lea ecx, [ebp + 0xc]
call fcn.0040e530
mov eax, dword [ebp + 8]
jmp 0x50c649
push 0x64f020
lea ecx, [ebp - 0x48]
call fcn.0040e4b0
mov byte [ebp - 4], 2
push 0x64eae3
lea ecx, [ebp - 0x2c]
call fcn.0040e3a0
mov byte [ebp - 4], 3
lea edx, [ebp + 0xc]
push edx
call fcn.0043a5c0
add esp, 4
push 0
push 0x64f024
lea ecx, [ebp + 0xc]
call fcn.0040e5f0
cmp eax, dword [0x63f3a0]
je 0x50c058
push str.sllan
lea ecx, [ebp - 0x2c]
call fcn.0040e440
jmp 0x50c140
push 0
push 0x64f040
lea ecx, [ebp + 0xc]
call fcn.0040e5f0
cmp eax, dword [0x63f3a0]
je 0x50c081
push str.slljs
lea ecx, [ebp - 0x2c]
call fcn.0040e440
jmp 0x50c140
push 0
push 0x64f064
lea ecx, [ebp + 0xc]
call fcn.0040e5f0
cmp eax, dword [0x63f3a0]
je 0x50c0aa
push 0x64f080
lea ecx, [ebp - 0x2c]
call fcn.0040e440
jmp 0x50c140
push 0
push 0x64f084
lea ecx, [ebp + 0xc]
call fcn.0040e5f0
cmp eax, dword [0x63f3a0]
je 0x50c0d0
push str.essw
lea ecx, [ebp - 0x2c]
call fcn.0040e440
jmp 0x50c140
push 0
push 0x64f0b0
lea ecx, [ebp + 0xc]
call fcn.0040e5f0
cmp eax, dword [0x63f3a0]
je 0x50c0f6
push 0x64f0c8
lea ecx, [ebp - 0x2c]
call fcn.0040e440
jmp 0x50c140
push 0
push 0x64f0cc
lea ecx, [ebp + 0xc]
call fcn.0040e5f0
cmp eax, dword [0x63f3a0]
je 0x50c11c
push 0x64f0e4
lea ecx, [ebp - 0x2c]
call fcn.0040e440
jmp 0x50c140
push 0
push 0x64f0e8
lea ecx, [ebp + 0xc]
call fcn.0040e5f0
cmp eax, dword [0x63f3a0]
je 0x50c140
push 0x64f104
lea ecx, [ebp - 0x2c]
call fcn.0040e440
lea ecx, [ebp - 0x2c]
call fcn.0040ee50
test eax, eax
jne 0x50c194
push 0x64f108
mov ecx, dword [ebp + 8]
call fcn.0040e4b0
mov eax, dword [ebp - 0x1e8]
or eax, 1
mov dword [ebp - 0x1e8], eax
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2c]
call fcn.0040e3e0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x48]
call fcn.0040e530
mov byte [ebp - 4], 0
lea ecx, [ebp + 0xc]
call fcn.0040e530
mov eax, dword [ebp + 8]
jmp 0x50c649
push 0x64f10c
mov ecx, dword [ebp - 0x1ec]
mov ecx, dword [ecx + 0x40]
call fcn.005db2e0
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
je 0x50c5a7
lea ecx, [ebp - 0x2c]
call fcn.0040e460
push eax
mov ecx, dword [ebp - 0x4c]
call fcn.005db2e0
push eax
lea edx, [ebp - 0x128]
push edx
mov ecx, dword [ebp - 0x1ec]
call fcn.00510920
mov dword [ebp - 0x1f0], eax
mov eax, dword [ebp - 0x1f0]
mov dword [ebp - 0x1f4], eax
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x1f4]
push ecx
lea ecx, [ebp - 0x48]
call fcn.0040e550
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x128]
call fcn.0040e530
push 0
push 0x64f114
lea ecx, [ebp - 0x48]
call fcn.0040e5f0
cmp eax, dword [0x63f3a0]
jne 0x50c2c9
lea edx, [ebp - 0x2c]
push edx
lea ecx, [ebp - 0x6c]
call fcn.00410c40
mov byte [ebp - 4], 5
cmp dword [ebp + 0x2c], 0
je 0x50c24c
push 0x64f120
lea ecx, [ebp - 0x6c]
call fcn.0040e440
jmp 0x50c259
push 0x64f124
lea ecx, [ebp - 0x6c]
call fcn.0040e440
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x2c]
call fcn.0040e400
lea ecx, [ebp - 0x2c]
call fcn.0040e460
push eax
mov ecx, dword [ebp - 0x4c]
call fcn.005db2e0
push eax
lea ecx, [ebp - 0x144]
push ecx
mov ecx, dword [ebp - 0x1ec]
call fcn.00510920
mov dword [ebp - 0x1f8], eax
mov edx, dword [ebp - 0x1f8]
mov dword [ebp - 0x1fc], edx
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x1fc]
push eax
lea ecx, [ebp - 0x48]
call fcn.0040e550
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.0040e530
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x6c]
call fcn.0040e3e0
push str.tstpro
mov ecx, dword [ebp - 0x4c]
call fcn.005db2e0
push eax
mov ecx, dword [ebp - 0x1ec]
call fcn.00510800
mov dword [ebp - 0x50], eax
push 0
push 0x64f130
lea ecx, [ebp - 0x48]
call fcn.0040e5f0
cmp eax, dword [0x63f3a0]
je 0x50c364
cmp dword [ebp - 0x50], 0
je 0x50c364
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x148], esp
lea edx, [ebp - 0x48]
push edx
push ecx
call fcn.0043a030
add esp, 8
mov dword [ebp - 0x200], eax
mov eax, dword [ebp - 0x200]
mov dword [ebp - 0x204], eax
mov byte [ebp - 4], 7
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x14c], esp
lea edx, [ebp - 0x2c]
push edx
push str.llq_
push ecx
call fcn.0041e0f0
add esp, 0xc
mov dword [ebp - 0x208], eax
mov byte [ebp - 4], 3
call fcn.00520340
add esp, 0x38
jmp 0x50c5a7
mov ecx, dword [ebp + 0x28]
call fcn.0040ee50
test eax, eax
jbe 0x50c5a7
mov eax, dword [ebp + 0x28]
push eax
lea ecx, [ebp - 0x88]
call fcn.0040e4f0
mov byte [ebp - 4], 8
push 0x64f144
lea ecx, [ebp - 0x88]
call fcn.0040e5b0
lea ecx, [ebp - 0x88]
push ecx
lea edx, [ebp - 0x168]
push edx
call fcn.0043a030
add esp, 8
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x20c]
mov dword [ebp - 0x210], eax
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x210]
push ecx
lea ecx, [ebp - 0x2c]
call fcn.0040e400
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x168]
call fcn.0040e3e0
lea edx, [ebp - 0x88]
push edx
lea eax, [ebp - 0x184]
push eax
call fcn.0043a030
add esp, 8
mov dword [ebp - 0x214], eax
mov ecx, dword [ebp - 0x214]
mov dword [ebp - 0x218], ecx
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x218]
call fcn.0040e460
push eax
mov ecx, dword [ebp - 0x4c]
call fcn.005db2e0
push eax
lea edx, [ebp - 0x1a0]
push edx
mov ecx, dword [ebp - 0x1ec]
call fcn.00510920
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x21c]
mov dword [ebp - 0x220], eax
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x220]
push ecx
lea ecx, [ebp - 0x48]
call fcn.0040e550
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1a0]
call fcn.0040e530
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x184]
call fcn.0040e3e0
push 0
push 0x64f14c
lea ecx, [ebp - 0x48]
call fcn.0040e5f0
cmp eax, dword [0x63f3a0]
je 0x50c598
lea edx, [ebp - 0x88]
push edx
mov ecx, dword [ebp + 0x28]
call fcn.0040e550
mov byte [ebp - 0x10c], 0
push 0x7f
push 0
lea eax, [ebp - 0x10b]
push eax
call fcn.005b4de0
add esp, 0xc
push 0x80
lea ecx, [ebp - 0x10c]
push ecx
call fcn.00431600
add esp, 8
movzx edx, al
test edx, edx
je 0x50c543
push 0x64f158
lea ecx, [ebp - 0x48]
call fcn.0040e5b0
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x1a4], esp
lea eax, [ebp - 0x10c]
push eax
call fcn.0040e3a0
mov dword [ebp - 0x224], eax
lea ecx, [ebp - 0x1c0]
push ecx
call fcn.0042fa70
add esp, 0x20
mov dword [ebp - 0x228], eax
mov edx, dword [ebp - 0x228]
mov dword [ebp - 0x22c], edx
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x22c]
push eax
lea ecx, [ebp - 0x48]
call fcn.0040e590
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1c0]
call fcn.0040e530
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x1c4], esp
lea edx, [ebp - 0x48]
push edx
push ecx
call fcn.0043a030
add esp, 8
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x234], eax
mov byte [ebp - 4], 0xd
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x1c8], esp
push str.llq_ckurl
call fcn.0040e3a0
mov dword [ebp - 0x238], eax
mov byte [ebp - 4], 8
call fcn.00520340
add esp, 0x38
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x88]
call fcn.0040e530
lea ecx, [ebp - 0x48]
call fcn.0040e5d0
push eax
lea ecx, [ebp - 0x2c]
push ecx
lea edx, [ebp - 0x1e4]
push edx
call fcn.00439f10
add esp, 8
mov dword [ebp - 0x23c], eax
mov eax, dword [ebp - 0x23c]
mov dword [ebp - 0x240], eax
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x240]
call fcn.0040e5d0
push eax
push str.key__s__url__s_
call fcn.00412530
push eax
call fcn.0040d040
add esp, 0x10
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1e4]
call fcn.0040e530
lea ecx, [ebp - 0x48]
push ecx
mov ecx, dword [ebp + 8]
call fcn.0040e4f0
mov edx, dword [ebp - 0x1e8]
or edx, 1
mov dword [ebp - 0x1e8], edx
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2c]
call fcn.0040e3e0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x48]
call fcn.0040e530
mov byte [ebp - 4], 0
lea ecx, [ebp + 0xc]
call fcn.0040e530
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005b4b30
mov esp, ebp
pop ebp
ret 0x28