Function at 0x419180
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x458d92
mov eax, dword fs:[0]
push eax
sub esp, 0x1dc
mov eax, dword [0x4754f4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
lea esi, [ebp - 0x70]
mov dword [ebp - 0x134], ebx
call fcn.00414e00
push eax
lea eax, [ebp - 0x50]
xor esi, esi
push eax
mov ecx, str.update_funshionmove.json
mov dword [ebp - 4], esi
call fcn.00417a30
add esp, 8
mov edi, 8
mov byte [ebp - 4], 2
cmp dword [ebp - 0x58], edi
jb 0x4191ef
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.00425770
add esp, 4
lea eax, [ebp - 0x70]
xor edx, edx
push eax
mov dword [ebp - 0x58], 7
mov dword [ebp - 0x5c], esi
mov word [ebp - 0x6c], dx
call fcn.00409010
lea ecx, [ebp - 0x50]
push ecx
lea edx, [ebp - 0x1e8]
push edx
call fcn.00419db0
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x38], edi
jae 0x419227
lea eax, [ebp - 0x4c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4192c0
mov ecx, dword [ebp - 0x1e8]
mov edx, dword [ecx + 4]
lea eax, [ebp - 0x180]
mov dword [ebp - 0x134], eax
mov dword [ebp + edx - method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 4
call fcn.00407270
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x1e8]
mov ecx, dword [eax + 4]
lea edx, [ebp - 0x180]
mov dword [ebp + ecx - method.std::basic_istream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_istream_char__struct_std::char_traits_char__.0
push edx
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0044f010
add esp, 4
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x38], edi
jb 0x4192ae
mov eax, dword [ebp - 0x4c]
push eax
call fcn.00425770
add esp, 4
xor ecx, ecx
lea edx, [ebp - 0x50]
mov dword [ebp - 0x3c], esi
mov word [ebp - 0x4c], cx
push edx
jmp 0x419cc0
lea eax, [ebp - 0x11a]
push eax
lea ecx, [ebp - 0x118]
push ecx
mov word [ebp - 0x11a], 0x100
call fcn.0040b520
and dword [ebp - 0x128], 0xfffffe00
mov dword [ebp - 0x124], esi
lea edx, [ebp - 0x130]
push edx
lea edi, [ebp - 0x1e8]
lea esi, [ebp - 0x118]
mov byte [ebp - 4], 7
call fcn.0040b810
test al, al
je 0x419ce8
push str.result
lea ecx, [ebp - 0x130]
call fcn.00411e50
cmp eax, 0x477e30
jne 0x419352
lea eax, [ebp - 0x130]
mov byte [ebp - 4], 5
call fcn.00411320
mov eax, esi
push eax
mov byte [ebp - 4], 3
call fcn.004033a0
mov ecx, edi
mov byte [ebp - 4], 2
call fcn.00406590
jmp 0x419c9a
lea ecx, [ebp - 0x130]
push ecx
mov ecx, str.result
call fcn.00411b50
lea esi, [ebp - 0x30]
mov ecx, eax
call fcn.004115d0
lea edi, [ebx + 0x2c]
mov esi, eax
mov byte [ebp - 4], 8
call fcn.00408600
mov byte [ebp - 4], 7
cmp dword [ebp - 0x18], 0x10
jb 0x419391
mov edx, dword [ebp - 0x2c]
push edx
call fcn.00425770
add esp, 4
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.004089e0
lea eax, [ebp - 0x130]
push eax
mov ecx, 0x46dd84
call fcn.00411b50
push eax
call fcn.004116a0
lea ecx, [ebp - 0x130]
push ecx
mov dword [ebx + 0x28], eax
mov ecx, 0x46dd84
xor ebx, ebx
call fcn.00411b50
push eax
call fcn.004116a0
test eax, eax
je 0x419c04
mov edi, dword [ebp - 0x134]
add edi, 0x8c
mov dword [ebp - 0x138], edi
lea edx, [ebp - 0x130]
push edx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push str.catalog
mov ecx, eax
call fcn.00411e50
cmp eax, 0x477e30
je 0x419490
lea eax, [ebp - 0x130]
push eax
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.catalog
call fcn.00411b50
lea esi, [ebp - 0x30]
mov ecx, eax
call fcn.004115d0
add edi, 4
mov esi, eax
mov byte [ebp - 4], 9
call fcn.00408600
mov byte [ebp - 4], 7
cmp dword [ebp - 0x18], 0x10
jb 0x419476
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.00425770
add esp, 4
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.004089e0
lea edx, [ebp - 0x130]
push edx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
call fcn.004116a0
mov edi, dword [ebp - 0x138]
mov dword [edi], eax
lea eax, [ebp - 0x130]
xor esi, esi
push eax
mov ecx, 0x46dd84
mov dword [ebp - 0x120], esi
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
call fcn.004116a0
test eax, eax
je 0x419bd8
add edi, 0x44
mov dword [ebp - 0x11c], edi
jmp 0x419510
lea ecx, [ebp - 0x130]
push ecx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push str.type
mov ecx, eax
call fcn.00411e50
cmp eax, 0x477e30
je 0x4195de
lea edx, [ebp - 0x130]
push edx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push eax
mov ecx, str.type
call fcn.00411b50
lea esi, [ebp - 0x30]
mov ecx, eax
call fcn.004115d0
mov byte [ebp - 4], 0xa
mov edi, dword [ebp - 0x11c]
add edi, 0xffffffe0
mov esi, eax
call fcn.00408600
mov byte [ebp - 4], 7
cmp dword [ebp - 0x18], 0x10
jb 0x4195be
mov eax, dword [ebp - 0x2c]
push eax
call fcn.00425770
add esp, 4
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.004089e0
mov esi, dword [ebp - 0x120]
lea ecx, [ebp - 0x130]
push ecx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push str.name
mov ecx, eax
call fcn.00411e50
cmp eax, 0x477e30
je 0x4196a9
lea edx, [ebp - 0x130]
push edx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push eax
mov ecx, str.name
call fcn.00411b50
lea esi, [ebp - 0x30]
mov ecx, eax
call fcn.004115d0
mov byte [ebp - 4], 0xb
mov edi, dword [ebp - 0x11c]
mov esi, eax
call fcn.00408600
mov byte [ebp - 4], 7
cmp dword [ebp - 0x18], 0x10
jb 0x419689
mov eax, dword [ebp - 0x2c]
push eax
call fcn.00425770
add esp, 4
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.004089e0
mov esi, dword [ebp - 0x120]
lea ecx, [ebp - 0x130]
push ecx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push str.director
mov ecx, eax
call fcn.00411e50
cmp eax, 0x477e30
je 0x419777
lea edx, [ebp - 0x130]
push edx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push eax
mov ecx, str.director
call fcn.00411b50
lea esi, [ebp - 0x30]
mov ecx, eax
call fcn.004115d0
mov byte [ebp - 4], 0xc
mov edi, dword [ebp - 0x11c]
add edi, 0x20
mov esi, eax
call fcn.00408600
mov byte [ebp - 4], 7
cmp dword [ebp - 0x18], 0x10
jb 0x419757
mov eax, dword [ebp - 0x2c]
push eax
call fcn.00425770
add esp, 4
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.004089e0
mov esi, dword [ebp - 0x120]
lea ecx, [ebp - 0x130]
push ecx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push str.starring
mov ecx, eax
call fcn.00411e50
cmp eax, 0x477e30
je 0x419845
lea edx, [ebp - 0x130]
push edx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push eax
mov ecx, str.starring
call fcn.00411b50
lea esi, [ebp - 0x30]
mov ecx, eax
call fcn.004115d0
mov byte [ebp - 4], 0xd
mov edi, dword [ebp - 0x11c]
add edi, 0x40
mov esi, eax
call fcn.00408600
mov byte [ebp - 4], 7
cmp dword [ebp - 0x18], 0x10
jb 0x419825
mov eax, dword [ebp - 0x2c]
push eax
call fcn.00425770
add esp, 4
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.004089e0
mov esi, dword [ebp - 0x120]
lea ecx, [ebp - 0x130]
push ecx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push str.score
mov ecx, eax
call fcn.00411e50
cmp eax, 0x477e30
je 0x419913
lea edx, [ebp - 0x130]
push edx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push eax
mov ecx, str.score
call fcn.00411b50
lea esi, [ebp - 0x30]
mov ecx, eax
call fcn.004115d0
mov byte [ebp - 4], 0xe
mov edi, dword [ebp - 0x11c]
add edi, 0x60
mov esi, eax
call fcn.00408600
mov byte [ebp - 4], 7
cmp dword [ebp - 0x18], 0x10
jb 0x4198f3
mov eax, dword [ebp - 0x2c]
push eax
call fcn.00425770
add esp, 4
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.004089e0
mov esi, dword [ebp - 0x120]
lea ecx, [ebp - 0x130]
push ecx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push str.update
mov ecx, eax
call fcn.00411e50
cmp eax, 0x477e30
je 0x4199e1
lea edx, [ebp - 0x130]
push edx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push eax
mov ecx, str.update
call fcn.00411b50
lea esi, [ebp - 0x30]
mov ecx, eax
call fcn.004115d0
mov byte [ebp - 4], 0xf
mov edi, dword [ebp - 0x11c]
sub edi, 0xffffff80
mov esi, eax
call fcn.00408600
mov byte [ebp - 4], 7
cmp dword [ebp - 0x18], 0x10
jb 0x4199c1
mov eax, dword [ebp - 0x2c]
push eax
call fcn.00425770
add esp, 4
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.004089e0
mov esi, dword [ebp - 0x120]
lea ecx, [ebp - 0x130]
push ecx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push str.poster
mov ecx, eax
call fcn.00411e50
cmp eax, 0x477e30
je 0x419ab2
lea edx, [ebp - 0x130]
push edx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push eax
mov ecx, str.poster
call fcn.00411b50
lea esi, [ebp - 0x30]
mov ecx, eax
call fcn.004115d0
mov byte [ebp - 4], 0x10
mov edi, dword [ebp - 0x11c]
add edi, 0xa0
mov esi, eax
call fcn.00408600
mov byte [ebp - 4], 7
cmp dword [ebp - 0x18], 0x10
jb 0x419a92
mov eax, dword [ebp - 0x2c]
push eax
call fcn.00425770
add esp, 4
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.004089e0
mov esi, dword [ebp - 0x120]
lea ecx, [ebp - 0x130]
push ecx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push 0x4671c4
mov ecx, eax
call fcn.00411e50
cmp eax, 0x477e30
je 0x419b8f
lea edx, [ebp - 0x130]
push edx
mov ecx, 0x46dd84
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
mov ecx, esi
call fcn.004117b0
push eax
mov ecx, 0x4671c4
call fcn.00411b50
lea esi, [ebp - 0x90]
mov ecx, eax
call fcn.004115d0
mov byte [ebp - 4], 0x11
mov edi, dword [ebp - 0x11c]
add edi, 0xc0
mov esi, eax
call fcn.00408600
mov byte [ebp - 4], 7
cmp dword [ebp - 0x78], 0x10
jb 0x419b69
mov eax, dword [ebp - 0x8c]
push eax
call fcn.00425770
add esp, 4
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x78], 0xf
mov dword [ebp - 0x7c], 0
mov byte [ebp - 0x8c], 0
call fcn.004089e0
mov esi, dword [ebp - 0x120]
add dword [ebp - 0x11c], 0x100
lea ecx, [ebp - 0x130]
push ecx
inc esi
mov ecx, 0x46dd84
mov dword [ebp - 0x120], esi
call fcn.00411b50
push eax
mov ecx, ebx
call fcn.004117b0
push eax
mov ecx, str.list
call fcn.00411b50
push eax
call fcn.004116a0
cmp esi, eax
jb 0x419510
mov edi, dword [ebp - 0x138]
lea edx, [ebp - 0x130]
add edi, 0x6424
push edx
mov ecx, 0x46dd84
inc ebx
mov dword [ebp - 0x138], edi
call fcn.00411b50
push eax
call fcn.004116a0
cmp ebx, eax
jb 0x4193f8
mov ebx, dword [ebp - 0x134]
mov ecx, dword [ebx + 0x3e9f4]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
add ebx, 0x28
push ebx
call edx
lea eax, [ebp - 0x130]
mov byte [ebp - 4], 5
call fcn.00411320
lea eax, [ebp - 0x118]
push eax
mov byte [ebp - 4], 3
call fcn.004033a0
mov edx, dword [ebp - 0x1e8]
mov eax, dword [edx + 4]
lea ecx, [ebp - 0x180]
mov dword [ebp - 0x134], ecx
mov dword [ebp + eax - method.std::basic_ifstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x12
call fcn.00407270
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1e8]
mov edx, dword [ecx + 4]
lea eax, [ebp - 0x180]
mov dword [ebp + edx - method.std::basic_istream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_istream_char__struct_std::char_traits_char__.0
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0044f010
add esp, 4
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x38], 8
jb 0x419cb3
mov ecx, dword [ebp - 0x4c]
push ecx
call fcn.00425770
add esp, 4
xor edx, edx
lea eax, [ebp - 0x50]
push eax
mov word [ebp - 0x4c], dx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], 7
call fcn.00409010
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00420d00
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebx + 0x3e9f4]
mov eax, dword [ecx]
mov edx, dword [eax + 0xc]
call edx
jmp 0x419c0a