Function at 0x100564af
Capabilities:
Check if file exists

Disassembly:
push ebp
sub esp, 0x618
lea ebp, [esp - 4]
mov eax, dword [0x10207390]
xor eax, ebp
mov dword [ebp + 0x618], eax
push 0xd0
mov eax, 0x10180888
call fcn.1008546d
mov eax, dword [ebp + 0x624]
mov esi, 0x206
xor ebx, ebx
push esi
mov dword [ebp - 0x10], eax
lea eax, [ebp + 0x20a]
mov edi, ecx
push ebx
push eax
mov dword [ebp - 0x14], edi
mov word [ebp + 0x208], bx
call fcn.10085bc0
push esi
lea eax, [ebp + 0x412]
push ebx
push eax
mov word [ebp + 0x410], bx
call fcn.10085bc0
push esi
lea eax, [ebp + 2]
push ebx
push eax
mov word [ebp], bx
call fcn.10085bc0
add esp, 0x24
cmp dword [edi + 0xc], ebx
je 0x1005657d
cmp dword [edi + 0x2c], 8
jb 0x10056537
mov eax, dword [edi + 0x18]
jmp 0x1005653a
lea eax, [edi + 0x18]
push eax
lea eax, [ebp + 0x208]
push str._sTempSkin_
push eax
call fcn.10004df5
add esp, 0xc
cmp dword [edi + 0x2c], 8
jb 0x1005655a
mov eax, dword [edi + 0x18]
jmp 0x1005655d
lea eax, [edi + 0x18]
push eax
lea eax, [ebp]
push str._sTempSkinSkin.xml
push eax
call fcn.10004df5
add esp, 0xc
lea eax, [ebp]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x100565a0
cmp dword [edi + 0x2c], 8
jb 0x10056588
mov eax, dword [edi + 0x18]
jmp 0x1005658b
lea eax, [edi + 0x18]
push eax
lea eax, [ebp + 0x208]
push str._sSkin_
push eax
call fcn.10004df5
add esp, 0xc
mov eax, dword [edi + 0x90]
mov eax, dword [eax + 4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx]
push eax
push ecx
lea ecx, [ebp - 0x50]
call fcn.1001d93c
mov eax, dword [edi + 0x90]
mov eax, dword [eax + 4]
mov ecx, dword [eax + 4]
push eax
push ecx
jmp 0x10056eeb
lea ecx, [ebp - 0x50]
call fcn.10054ee4
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x90], eax
call fcn.10054ee4
add eax, 0x1c
je 0x10056ed6
mov esi, dword [eax]
cmp esi, ebx
je 0x10056ed6
push 8
call fcn.10062191
pop ecx
mov ecx, eax
mov dword [ebp - 0x78], ecx
cmp ecx, ebx
mov dword [ebp - 4], ebx
je 0x1005660f
call fcn.100560e7
jmp 0x10056611
xor eax, eax
or dword [ebp - 4], 0xffffffff
and dword [ebp - 0x68], 0
lea ebx, [esi + 4]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebx + 4]
push ebx
push eax
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x78], ebx
call fcn.10051a72
jmp 0x10056e5e
lea ecx, [ebp - 0x64]
call fcn.10005225
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x54], eax
call fcn.10005225
add eax, 0x1c
je 0x10056e56
mov esi, dword [eax]
test esi, esi
je 0x10056e56
push 8
call fcn.10062191
pop ecx
mov ecx, eax
mov dword [ebp - 0x48], ecx
test ecx, ecx
mov dword [ebp - 4], 1
je 0x10056679
call fcn.10056201
jmp 0x1005667b
xor eax, eax
or dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x54]
cmp dword [eax + 0x18], 8
jb 0x10056695
add eax, 4
mov dword [ebp - 0x44], eax
mov eax, dword [eax]
jmp 0x1005669b
add eax, 4
mov dword [ebp - 0x44], eax
push str.Display
push eax
call fcn.100862d7
test eax, eax
pop ecx
pop ecx
jne 0x100566b2
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x68], eax
mov eax, dword [esi + 8]
add esi, 4
push esi
push eax
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x48], esi
call fcn.10051a72
mov eax, dword [esi + 8]
push esi
push eax
lea ecx, [ebp - 0x8c]
call fcn.10051a72
lea eax, [ebp - 0x8c]
push eax
lea ecx, [ebp - 0x5c]
call fcn.10054d99
test al, al
jne 0x10056e19
lea ecx, [ebp - 0x5c]
call fcn.10005225
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x94], eax
call fcn.10005225
add eax, 0x1c
je 0x10056de7
mov ebx, dword [eax]
test ebx, ebx
je 0x10056de7
push 8
call fcn.10062191
pop ecx
mov ecx, eax
mov dword [ebp - 0x1c], ecx
test ecx, ecx
mov dword [ebp - 4], 2
je 0x10056734
call fcn.1004f528
jmp 0x10056736
xor eax, eax
or edi, 0xffffffff
push str.display
lea ecx, [ebp - 0xdc]
mov dword [ebp - 4], edi
mov dword [ebp - 0x18], eax
call fcn.100015f0
mov eax, dword [ebx]
lea ecx, [ebp - 0xdc]
push ecx
mov ecx, ebx
mov dword [ebp - 4], 3
call dword [eax + 0x1c]
push 0
push 1
lea ecx, [ebp - 0xdc]
mov esi, eax
mov dword [ebp - 4], edi
call fcn.100017c0
test esi, esi
je 0x10056874
push 0x14
call fcn.10062191
pop ecx
mov ecx, eax
mov dword [ebp - 0x1c], ecx
test ecx, ecx
mov dword [ebp - 4], 4
je 0x1005679f
call fcn.1004eb71
jmp 0x100567a1
xor eax, eax
cmp dword [esi + 0x18], 8
mov dword [ebp - 4], edi
mov dword [ebp - 0x3c], eax
jb 0x100567b2
mov esi, dword [esi + 4]
jmp 0x100567b5
add esi, 4
push esi
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov ecx, dword [ebp - 0x68]
mov eax, dword [ecx]
lea edx, [ebp - 0x38]
push edx
mov dword [ebp - 4], 5
call dword [eax + 0x1c]
push 0
push 1
lea ecx, [ebp - 0x38]
mov esi, eax
mov dword [ebp - 4], edi
call fcn.100017c0
test esi, esi
je 0x1005683c
mov esi, dword [esi]
push str.image
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov eax, dword [esi]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, esi
mov dword [ebp - 4], 6
call dword [eax + 0x1c]
push 0
push 1
lea ecx, [ebp - 0x38]
mov esi, eax
mov dword [ebp - 4], edi
call fcn.100017c0
test esi, esi
je 0x1005683c
mov esi, dword [esi]
test esi, esi
je 0x1005683c
mov ecx, esi
call fcn.1004eba4
mov ecx, dword [ebp - 0x3c]
push esi
call fcn.100531a4
mov ecx, dword [ebp - 0x3c]
push 0
call fcn.10051215
cmp dword [ebp - 0x3c], 0
je 0x10056874
push str.display
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx]
lea edx, [ebp - 0x3c]
push edx
lea edx, [ebp - 0x38]
push edx
mov dword [ebp - 4], 7
call dword [eax]
push 0
push 1
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], edi
call fcn.100017c0
push str.image
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov eax, dword [ebx]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, ebx
mov dword [ebp - 4], 8
call dword [eax + 0x1c]
push 0
push 1
lea ecx, [ebp - 0x38]
mov esi, eax
mov dword [ebp - 4], edi
call fcn.100017c0
test esi, esi
je 0x10056983
cmp dword [esi + 0x14], 0
jbe 0x10056983
cmp dword [esi + 0x18], 8
lea edi, [esi + 4]
jb 0x100568c3
mov eax, dword [edi]
jmp 0x100568c5
mov eax, edi
push eax
lea eax, [ebp + 0x208]
push eax
lea eax, [ebp + 0x410]
push 0x1018725c
push eax
call fcn.10004df5
push 0x14
call fcn.10062191
mov ecx, eax
add esp, 0x14
mov dword [ebp - 0x1c], ecx
test ecx, ecx
mov dword [ebp - 4], 9
je 0x10056901
call fcn.1004eb71
mov ecx, eax
jmp 0x10056903
xor ecx, ecx
mov eax, dword [ebp - 0x14]
or dword [ebp - 4], 0xffffffff
cmp dword [eax + 8], 0
mov dword [ebp - 0x70], ecx
jne 0x10056918
cmp dword [eax], 0
je 0x10056930
cmp dword [esi + 0x18], 8
jb 0x10056920
mov edi, dword [edi]
push 0x1018fa14
push edi
push dword [ebp - 0x10]
call fcn.1004ebad
jmp 0x1005694a
lea eax, [ebp + 0x410]
push eax
call fcn.1004ec56
test eax, eax
jne 0x1005694a
mov eax, dword [ebp - 0x14]
mov dword [eax + 4], 1
cmp dword [ebp - 0x70], 0
je 0x10056983
push str.image
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx]
lea edx, [ebp - 0x70]
push edx
lea edx, [ebp - 0x38]
push edx
mov dword [ebp - 4], 0xa
call dword [eax]
or dword [ebp - 4], 0xffffffff
push 0
push 1
lea ecx, [ebp - 0x38]
call fcn.100017c0
push str.hover
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov eax, dword [ebx]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, ebx
mov dword [ebp - 4], 0xb
call dword [eax + 0x1c]
or dword [ebp - 4], 0xffffffff
xor edi, edi
push edi
push 1
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.100017c0
cmp esi, edi
je 0x10056a80
cmp dword [esi + 0x14], edi
jbe 0x10056b8f
cmp dword [esi + 0x18], 8
lea edi, [esi + 4]
jb 0x100569d3
mov eax, dword [edi]
jmp 0x100569d5
mov eax, edi
push eax
lea eax, [ebp + 0x208]
push eax
lea eax, [ebp + 0x410]
push 0x1018725c
push eax
call fcn.10004df5
push 0x14
call fcn.10062191
mov ecx, eax
add esp, 0x14
mov dword [ebp - 0x1c], ecx
test ecx, ecx
mov dword [ebp - 4], 0xc
je 0x10056a11
call fcn.1004eb71
mov ecx, eax
jmp 0x10056a13
xor ecx, ecx
mov eax, dword [ebp - 0x14]
or dword [ebp - 4], 0xffffffff
cmp dword [eax + 8], 0
mov dword [ebp - 0x74], ecx
jne 0x10056a28
cmp dword [eax], 0
je 0x10056a40
cmp dword [esi + 0x18], 8
jb 0x10056a30
mov edi, dword [edi]
push 0x1018fa14
push edi
push dword [ebp - 0x10]
call fcn.1004ebad
jmp 0x10056a5a
lea eax, [ebp + 0x410]
push eax
call fcn.1004ec56
test eax, eax
jne 0x10056a5a
mov eax, dword [ebp - 0x14]
mov dword [eax + 4], 1
cmp dword [ebp - 0x74], 0
je 0x10056b8f
push str.hover
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov dword [ebp - 4], 0xd
lea edx, [ebp - 0x74]
jmp 0x10056b73
push str.imageHover
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov eax, dword [ebx]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, ebx
mov dword [ebp - 4], 0xe
call dword [eax + 0x1c]
or dword [ebp - 4], 0xffffffff
push edi
push 1
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.100017c0
cmp esi, edi
je 0x10056b8f
cmp dword [esi + 0x14], 0
jbe 0x10056b8f
cmp dword [esi + 0x18], 8
lea edi, [esi + 4]
jb 0x10056acf
mov eax, dword [edi]
jmp 0x10056ad1
mov eax, edi
push eax
lea eax, [ebp + 0x208]
push eax
lea eax, [ebp + 0x410]
push 0x1018725c
push eax
call fcn.10004df5
push 0x14
call fcn.10062191
mov ecx, eax
add esp, 0x14
mov dword [ebp - 0x1c], ecx
test ecx, ecx
mov dword [ebp - 4], 0xf
je 0x10056b0d
call fcn.1004eb71
mov ecx, eax
jmp 0x10056b0f
xor ecx, ecx
mov eax, dword [ebp - 0x14]
or dword [ebp - 4], 0xffffffff
cmp dword [eax + 8], 0
mov dword [ebp - 0x7c], ecx
jne 0x10056b24
cmp dword [eax], 0
je 0x10056b3c
cmp dword [esi + 0x18], 8
jb 0x10056b2c
mov edi, dword [edi]
push 0x1018fa14
push edi
push dword [ebp - 0x10]
call fcn.1004ebad
jmp 0x10056b56
lea eax, [ebp + 0x410]
push eax
call fcn.1004ec56
test eax, eax
jne 0x10056b56
mov eax, dword [ebp - 0x14]
mov dword [eax + 4], 1
cmp dword [ebp - 0x7c], 0
je 0x10056b8f
push str.hover
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov dword [ebp - 4], 0x10
lea edx, [ebp - 0x7c]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx]
push edx
lea edx, [ebp - 0x38]
push edx
call dword [eax]
or dword [ebp - 4], 0xffffffff
push 0
push 1
lea ecx, [ebp - 0x38]
call fcn.100017c0
push str.down
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov eax, dword [ebx]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, ebx
mov dword [ebp - 4], 0x11
call dword [eax + 0x1c]
or dword [ebp - 4], 0xffffffff
xor edi, edi
push edi
push 1
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.100017c0
cmp esi, edi
je 0x10056c92
cmp dword [esi + 0x14], edi
jbe 0x10056d9e
cmp dword [esi + 0x18], 8
lea edi, [esi + 4]
jb 0x10056bdf
mov eax, dword [edi]
jmp 0x10056be1
mov eax, edi
push eax
lea eax, [ebp + 0x208]
push eax
lea eax, [ebp + 0x410]
push 0x1018725c
push eax
call fcn.10004df5
push 0x14
call fcn.10062191
mov ecx, eax
add esp, 0x14
mov dword [ebp - 0x1c], ecx
test ecx, ecx
mov dword [ebp - 4], 0x12
je 0x10056c1d
call fcn.1004eb71
mov ecx, eax
jmp 0x10056c1f
xor ecx, ecx
mov ebx, dword [ebp - 0x14]
or dword [ebp - 4], 0xffffffff
cmp dword [ebx + 8], 0
mov dword [ebp - 0x84], ecx
jne 0x10056c37
cmp dword [ebx], 0
je 0x10056c4f
cmp dword [esi + 0x18], 8
jb 0x10056c3f
mov edi, dword [edi]
push 0x1018fa14
push edi
push dword [ebp - 0x10]
call fcn.1004ebad
jmp 0x10056c66
lea eax, [ebp + 0x410]
push eax
call fcn.1004ec56
test eax, eax
jne 0x10056c66
mov dword [ebx + 4], 1
cmp dword [ebp - 0x84], 0
je 0x10056d9e
push str.down
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov dword [ebp - 4], 0x13
lea edx, [ebp - 0x84]
jmp 0x10056d82
push str.imageDown
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov eax, dword [ebx]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, ebx
mov dword [ebp - 4], 0x14
call dword [eax + 0x1c]
or dword [ebp - 4], 0xffffffff
push edi
push 1
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.100017c0
cmp esi, edi
je 0x10056d9e
cmp dword [esi + 0x14], 0
jbe 0x10056d9e
cmp dword [esi + 0x18], 8
lea edi, [esi + 4]
jb 0x10056ce1
mov eax, dword [edi]
jmp 0x10056ce3
mov eax, edi
push eax
lea eax, [ebp + 0x208]
push eax
lea eax, [ebp + 0x410]
push 0x1018725c
push eax
call fcn.10004df5
push 0x14
call fcn.10062191
mov ecx, eax
add esp, 0x14
mov dword [ebp - 0x1c], ecx
test ecx, ecx
mov dword [ebp - 4], 0x15
je 0x10056d1f
call fcn.1004eb71
mov ecx, eax
jmp 0x10056d21
xor ecx, ecx
mov ebx, dword [ebp - 0x14]
or dword [ebp - 4], 0xffffffff
cmp dword [ebx + 8], 0
mov dword [ebp - 0x80], ecx
jne 0x10056d36
cmp dword [ebx], 0
je 0x10056d4e
cmp dword [esi + 0x18], 8
jb 0x10056d3e
mov edi, dword [edi]
push 0x1018fa14
push edi
push dword [ebp - 0x10]
call fcn.1004ebad
jmp 0x10056d65
lea eax, [ebp + 0x410]
push eax
call fcn.1004ec56
test eax, eax
jne 0x10056d65
mov dword [ebx + 4], 1
cmp dword [ebp - 0x80], 0
je 0x10056d9e
push str.down
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov dword [ebp - 4], 0x16
lea edx, [ebp - 0x80]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ecx]
push edx
lea edx, [ebp - 0x38]
push edx
call dword [eax]
or dword [ebp - 4], 0xffffffff
push 0
push 1
lea ecx, [ebp - 0x38]
call fcn.100017c0
mov eax, dword [ebp - 0x94]
cmp dword [eax + 0x18], 8
jb 0x10056daf
mov eax, dword [eax + 4]
jmp 0x10056db2
add eax, 4
push eax
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov ecx, dword [ebp - 0x40]
mov eax, dword [ecx]
lea edx, [ebp - 0x18]
push edx
lea edx, [ebp - 0x38]
push edx
mov dword [ebp - 4], 0x17
call dword [eax]
or dword [ebp - 4], 0xffffffff
push 0
push 1
lea ecx, [ebp - 0x38]
call fcn.100017c0
mov edi, dword [ebp - 0x14]
mov esi, dword [ebp - 0x48]
lea ecx, [ebp - 0x5c]
call fcn.10027a7f
mov eax, dword [esi + 8]
push esi
push eax
lea ecx, [ebp - 0x8c]
call fcn.10051a72
lea eax, [ebp - 0x8c]
push eax
lea ecx, [ebp - 0x5c]
call fcn.10054d99
test al, al
je 0x100566ec
mov ebx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x54]
cmp dword [eax + 0x18], 8
mov eax, dword [ebp - 0x44]
jb 0x10056e27
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x38]
call fcn.100015f0
mov ecx, dword [ebp - 0x6c]
mov eax, dword [ecx]
lea edx, [ebp - 0x40]
push edx
lea edx, [ebp - 0x38]
push edx
mov dword [ebp - 4], 0x18
call dword [eax]
or dword [ebp - 4], 0xffffffff
push 0
push 1
lea ecx, [ebp - 0x38]
call fcn.100017c0
lea ecx, [ebp - 0x64]
call fcn.10027a7f
mov eax, dword [ebx + 8]
push ebx
push eax
lea ecx, [ebp - 0xa4]
call fcn.10051a72
lea eax, [ebp - 0xa4]
push eax
lea ecx, [ebp - 0x64]
call fcn.10054d99
test al, al
je 0x10056634
mov eax, dword [ebp - 0x90]
cmp dword [eax + 0x18], 8
jb 0x10056e96
mov eax, dword [eax + 4]
jmp 0x10056e99
add eax, 4
push eax
lea ecx, [ebp - 0xc0]
call fcn.100015f0
mov ecx, dword [edi + 0x94]
mov eax, dword [ecx]
lea edx, [ebp - 0x6c]
push edx
lea edx, [ebp - 0xc0]
push edx
mov dword [ebp - 4], 0x19
call dword [eax]
or dword [ebp - 4], 0xffffffff
push 0
push 1
lea ecx, [ebp - 0xc0]
call fcn.100017c0
xor ebx, ebx
lea ecx, [ebp - 0x50]
call fcn.10054dc0
mov eax, dword [edi + 0x90]
mov eax, dword [eax + 4]
push eax
push dword [eax + 4]
lea ecx, [ebp - 0x9c]
call fcn.1001d93c
lea eax, [ebp - 0x9c]
push eax
lea ecx, [ebp - 0x50]
call fcn.10054d99
test al, al
je 0x100565cb
xor eax, eax
cmp dword [edi + 4], ebx
sete al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x618]
xor ecx, ebp
call fcn.1008545e
add ebp, 0x61c
leave
ret 4
jmp 0x100564af