Function at 0x406690
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x532289
mov eax, dword fs:[0]
push eax
mov eax, 0x1350
call fcn.004682f0
mov eax, dword [0x657114]
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
mov dword [ebp - 0x1350], ebx
mov ecx, 0x37
mov eax, dword [ebp + 8]
mov esi, str.9IvRggHKpyx4LNoWGCb50ziRHkxf7u7ywuw3999qJ4yJg7QGIGGjMWx28mduj07clfELq3mS3Hla4x9qTagKJk8lqWPpotz9caFqyjQUVEfdvMyQ1J1DbZES07X56TX9PO0LI2Ij2LndQARZz8ka2oDImtQFLpCOW5xrsWOee1mVhEj6E8NcfYowQjcldLTBIIoNyacjp3sk0lR3i3saQfMrd6v
mov dword [ebp - 0x1340], eax
lea edi, [ebp - 0xec]
mov dword [ebp - 0x135c], 0
rep movsd dword es:[edi], dword [esi]
mov ecx, 0x63
mov dword [ebp - 0x1358], 0
mov esi, str.UuIJ1gVJyh1ler5b4lcVlgJlPOnktHL34GMWDDIYqN5fLciKtlSbsaWQEEITbXCjMrBqQi5yWpFMUJdIFI7O7cLVxQkBoIdRSoFO3EvCmaIZ13I60DxvTp1jLVs3h1q5eQiw00EIwZ7O84P0uNEQAJx72vnfVnRYdzSCJzEmEhwNEbwyua7kQWbnRXraBIT1Ft8R338jhgl1xbNiqpuQWBKuk6RVvP2O05Chf2G6zx4whXV00bTpgzrPocirplAiuNrAvtM9I3bLxC7gdmQQ0lDpiwMFmf904c9wT6WRUYKYRuOoFn4tSf1YFZa3z6hSuF3vyky1nrgt3DERIDjQe7jFyPLI1zxDEK8qwb9iTGEBViMeqLXg5jC7bXetDqnQ7Sxp1nEUxHNP7Z
mov dword [ebp - 0x1354], 0
lea edi, [ebp - 0x8f0]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
cmp byte [ebp - 0xec], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x12e0], 0xf
mov dword [ebp - 0x12e4], 0
mov byte [ebp - 0x12f4], 0
jne 0x406747
xor ecx, ecx
jmp 0x406759
lea ecx, [ebp - 0xec]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406750
sub ecx, edx
push ecx
lea eax, [ebp - 0xec]
push eax
lea ecx, [ebp - 0x12f4]
call fcn.00407bd0
lea eax, [ebp - 0x12f4]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x135c]
call fcn.00407e30
mov eax, dword [ebp - 0x12e0]
mov byte [ebp - 4], 0
cmp eax, 0x10
jb 0x4067a4
inc eax
lea ecx, [ebp - 0x12f4]
push eax
push dword [ebp - 0x12f4]
call fcn.00407cd0
cmp byte [ebp - 0x8f0], 0
mov dword [ebp - 0x12e0], 0xf
mov dword [ebp - 0x12e4], 0
mov byte [ebp - 0x12f4], 0
jne 0x4067cc
xor ecx, ecx
jmp 0x4067de
lea ecx, [ebp - 0x8f0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4067d5
sub ecx, edx
push ecx
lea eax, [ebp - 0x8f0]
push eax
lea ecx, [ebp - 0x12f4]
call fcn.00407bd0
lea eax, [ebp - 0x12f4]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x135c]
call fcn.00407e30
mov eax, dword [ebp - 0x12e0]
cmp eax, 0x10
jb 0x406825
inc eax
lea ecx, [ebp - 0x12f4]
push eax
push dword [ebp - 0x12f4]
call fcn.00407cd0
mov dword [ebp - 0x12e8], 0
mov dword [ebp - 0x12e4], 0
mov dword [ebp - 0x12e0], 0
mov ecx, 0x73
mov byte [ebp - 4], 3
mov esi, str.3r4dbGq0WoK9PuNmAPuD8qOM7f6kULCtDGljUyhb2yLqltzerKsxKM9GDtMFPj4TCvKV5E21AgCg7yW5CYgpfhUdJecaHgD3ISZsRgQPSGYN3Gysx2VJKEzpCgNvkJnuBWPGCFQTZPfecGrbptu7EVcCtLcJR38w409GPrGZPl21vJ9YhuHWtY4EIObk5nC3zweAxunejJzqWJxNPbbw4FBAEhZEZwjpw9kd2DeGkRTgcBZSvzH9C3wzckF6zYhErGiqBXBHM7zJUrQcPb9ZwKiaTh92UQHJ3uDcMQTpmRa9FbMftkisjuuhwawoEyC2BUNnniVnlHuEbyVB74HybMsFhFTrH3z9clDd4qxDTiwKlMO0sJEMfYB25RLYQf2dxj22GeKbRJnLs4QXEhMFouWIWHxdyCv2Jwl4kCbo91mOTpTWdgF5QkbX9Q51rcaO01txbG3FZSC
mov dword [ebp - 0x1310], 0xf
lea edi, [ebp - 0xcc4]
mov dword [ebp - 0x1314], 0
rep movsd dword es:[edi], dword [esi]
cmp byte [ebp - 0xcc4], 0
mov byte [ebp - 0x1324], 0
jne 0x406881
xor ecx, ecx
jmp 0x406899
lea ecx, [ebp - 0xcc4]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406890
sub ecx, edx
push ecx
lea eax, [ebp - 0xcc4]
push eax
lea ecx, [ebp - 0x1324]
call fcn.00407bd0
lea eax, [ebp - 0x1324]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x12e8]
call fcn.00407e30
mov eax, dword [ebp - 0x1310]
mov byte [ebp - 4], 3
cmp eax, 0x10
jb 0x4068e4
inc eax
lea ecx, [ebp - 0x1324]
push eax
push dword [ebp - 0x1324]
call fcn.00407cd0
push 0x208
xor edi, edi
lea eax, [ebp - 0x12dc]
push edi
push eax
call fcn.004e37a0
push 0x208
lea eax, [ebp - 0xecc]
push edi
push eax
call fcn.004e37a0
push 0x208
lea eax, [ebp - 0xaf8]
push edi
push eax
call fcn.004e37a0
push 0x208
lea eax, [ebp - 0x10d4]
push edi
push eax
call fcn.004e37a0
push 0x208
lea eax, [ebp - 0x760]
push edi
push eax
call fcn.004e37a0
push 0x208
lea eax, [ebp - 0x410]
push edi
push eax
call fcn.004e37a0
add esp, 0x48
lea eax, [ebp - 0x12dc]
mov ecx, ebx
push edi
push 0x1a
push eax
push edi
call fcn.00407590
xor ecx, ecx
nop dword [eax]
movzx eax, word [ebp + ecx - 0x12dc]
lea ecx, [ecx + 2]
mov word [ebp + ecx - 0x762], ax
test ax, ax
jne 0x406970
lea eax, [ebp - 0x760]
push 0x5c
push eax
call fcn.004e2ab4
add esp, 8
mov esi, eax
call fcn.0047021c
test esi, esi
jne 0x4069b6
push dword [ebp - 0x1340]
mov ecx, ebx
call fcn.00405af0
jmp 0x406dbe
xor eax, eax
xor ecx, ecx
mov word [esi], ax
nop dword [eax]
movzx eax, word [ebp + ecx - 0x760]
lea ecx, [ecx + 2]
mov word [ebp + ecx - 0xece], ax
test ax, ax
jne 0x4069c0
lea ecx, [ebp - 0xecc]
add ecx, 0xfffffffe
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x4069e1
mov eax, dword [str.Local]
mov dword [ecx], eax
mov eax, dword [0x548f98]
mov dword [ecx + 4], eax
mov eax, dword [0x548f9c]
mov dword [ecx + 8], eax
mov ax, word [0x548fa0]
mov word [ecx + 0xc], ax
call fcn.00402160
mov ebx, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
lea eax, [ebp - 0xecc]
push eax
call ebx
test eax, eax
mov esi, 1
cmovne edi, esi
xor ecx, ecx
mov dword [ebp - 0x1344], edi
movzx eax, word [ebp + ecx - 0x760]
lea ecx, [ecx + 2]
mov word [ebp + ecx - 0xafa], ax
test ax, ax
jne 0x406a34
lea ecx, [ebp - 0xaf8]
add ecx, 0xfffffffe
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x406a55
mov eax, dword [str.LocalLow]
mov dword [ecx], eax
mov eax, dword [0x548fa8]
mov dword [ecx + 4], eax
mov eax, dword [0x548fac]
mov dword [ecx + 8], eax
mov eax, dword [0x548fb0]
mov dword [ecx + 0xc], eax
mov eax, dword [0x548fb4]
mov dword [ecx + 0x10], eax
lea eax, [ebp - 0xaf8]
push eax
call ebx
test eax, eax
mov eax, 0
cmovne eax, esi
mov dword [ebp - 0x1348], eax
call fcn.00402160
xor ecx, ecx
nop dword [eax + eax]
movzx eax, word [ebp + ecx - 0x760]
lea ecx, [ecx + 2]
mov word [ebp + ecx - 0x10d6], ax
test ax, ax
jne 0x406ab0
lea ecx, [ebp - 0x10d4]
add ecx, 0xfffffffe
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x406ad1
mov eax, dword [str.Roaming]
mov dword [ecx], eax
mov eax, dword [0x548fbc]
mov dword [ecx + 4], eax
mov eax, dword [0x548fc0]
mov dword [ecx + 8], eax
mov eax, dword [0x548fc4]
mov dword [ecx + 0xc], eax
mov ax, word [0x548fc8]
mov word [ecx + 0x10], ax
lea eax, [ebp - 0x10d4]
push eax
call ebx
test eax, eax
mov dword [ebp - 0x1318], 0
mov eax, 0
mov dword [ebp - 0x1314], 0
cmovne eax, esi
mov dword [ebp - 0x1310], 0
mov dword [ebp - 0x134c], eax
mov ecx, 0x51
mov byte [ebp - 4], 5
mov esi, str.P111mjy5WIGeVKta0u1RU3ePXxMPZw5DRybHPglO1jzGhtCpRZOjYqawG4rhdwfVkaHaGbxMpZcGOxOmCdUwxBEMnpIqkf9YoAZxkm1j37oeND0Dgi5OWlxGDK0gXHVMoKWAPHitg3dSKjD8vx1BC2zCfTq1UTG21cBhWTA2o5YR9tAe0KeTpEO64q9zhv7KRz1T0WQKYTexMXP5sCz6A7OvbXVXGZIAFp7lwmk7r8UAJ9H5llOLp5eh42Fa5KqSmLl5jMq2h8Fw6jbT4dX6zD9iM20MgaRcoIOxbIy6Bdjw6ebZg89jLNz4N6ePupr74iX5Zu
mov dword [ebp - 0x12f8], 0xf
lea edi, [ebp - 0x558]
mov dword [ebp - 0x12fc], 0
rep movsd dword es:[edi], dword [esi]
mov byte [ebp - 0x130c], 0
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
cmp byte [ebp - 0x558], 0
jne 0x406b7e
xor ecx, ecx
jmp 0x406b90
lea ecx, [ebp - 0x558]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x406b87
sub ecx, edx
push ecx
lea eax, [ebp - 0x558]
push eax
lea ecx, [ebp - 0x130c]
call fcn.00407bd0
lea eax, [ebp - 0x130c]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x1318]
call fcn.00407e30
mov eax, dword [ebp - 0x12f8]
mov byte [ebp - 4], 5
cmp eax, 0x10
jb 0x406bdb
inc eax
lea ecx, [ebp - 0x130c]
push eax
push dword [ebp - 0x130c]
call fcn.00407cd0
cmp dword [ebp - 0x1344], 0
je 0x406d17
mov eax, dword [ebp - 0x1348]
test eax, eax
je 0x406d17
mov eax, dword [ebp - 0x134c]
test eax, eax
je 0x406d17
push str.BundleBind
lea eax, [ebp - 0xaf8]
push eax
lea eax, [ebp - 0x410]
push str._s_s_
push eax
call fcn.00407eb0
add esp, 0x10
lea eax, [ebp - 0x410]
push eax
call ebx
test eax, eax
jne 0x406c40
lea eax, [ebp - 0x410]
push eax
call fcn.004c0987
add esp, 4
mov dword [ebp - 0x1300], 0
mov dword [ebp - 0x12fc], 0
mov dword [ebp - 0x12f8], 0
mov ecx, 0x46
mov byte [ebp - 4], 7
mov esi, str.p62X9J5T0cYb5PYVvAS3TZRZkBJ22gDP5bcveAegspnHmTlnUldWxMEyqavUh2koZSuGxtoV78rj1Z0FnmTsKjJQngQgOr2zSHn2ZilEp3NNfRqVFRBgOSA0Lxac8fdTpdnaMCiMJ8gwxnV4ztmM5Udzo4z4YVMO97O6IfYLC2B4FLhaCeozEEXJBbtFNRo6x6jaVj6L4ZsDK2yxlpoEpjOuu6s4QAuQVPIGd19LPZ4hL6gQvm9K3lfyhjCuFj705z2GHlp19icz4Hp7Nk8QbsJR
lea edi, [ebp - 0x208]
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x208]
push eax
lea ecx, [ebp - 0x133c]
movsb byte es:[edi], byte [esi]
call fcn.00405820
lea eax, [ebp - 0x133c]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0x1300]
call fcn.00407e30
mov eax, dword [ebp - 0x1328]
mov byte [ebp - 4], 7
cmp eax, 0x10
jb 0x406cbf
inc eax
lea ecx, [ebp - 0x133c]
push eax
push dword [ebp - 0x133c]
call fcn.00407cd0
cmp word [ebp - 0x410], 0
jne 0x406ce3
xor ecx, ecx
lea eax, [ebp - 0x410]
push ecx
mov ecx, dword [ebp - 0x1340]
push eax
call fcn.00402650
jmp 0x406da8
lea ecx, [ebp - 0x410]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x406cf0
sub ecx, edx
lea eax, [ebp - 0x410]
sar ecx, 1
push ecx
mov ecx, dword [ebp - 0x1340]
push eax
call fcn.00402650
jmp 0x406da8
mov dword [ebp - 0x1300], 0
mov dword [ebp - 0x12fc], 0
mov dword [ebp - 0x12f8], 0
mov ecx, 0x3b
mov byte [ebp - 4], 9
mov esi, str.oxNOXUhTnCrEvEkmjeI8SBpnzjOd8hQBLmND8471ISAvEPBDhRtxrhZvxUQfezTR3D3m1kvNG2J1sX9ZNrtBS19s9fnGvilG07ETv2ilWubKUJNQz3vWNILs1D6JL6K4nG300cYR5huwT1WdrihTLsf4rSKiMHQbNwXSMpwl8F8jHQfF8MuCSz1aqeiDDcJDBRjZqH9q9IzVTbSJ0rl0OZUcTEwZo67cOxthhoYEDZluW
lea edi, [ebp - 0x1e0]
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x1e0]
push eax
lea ecx, [ebp - 0x133c]
movsw word es:[edi], word [esi]
call fcn.00405820
lea eax, [ebp - 0x133c]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x1300]
call fcn.00407e30
mov eax, dword [ebp - 0x1328]
mov byte [ebp - 4], 9
cmp eax, 0x10
jb 0x406d97
inc eax
lea ecx, [ebp - 0x133c]
push eax
push dword [ebp - 0x133c]
call fcn.00407cd0
push dword [ebp - 0x1340]
mov ecx, dword [ebp - 0x1350]
call fcn.00405af0
lea ecx, [ebp - 0x1300]
call fcn.004059b0
lea ecx, [ebp - 0x1318]
call fcn.004059b0
lea ecx, [ebp - 0x12e8]
call fcn.004059b0
lea ecx, [ebp - 0x135c]
call fcn.004059b0
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.004682d0
mov esp, ebp
pop ebp
ret 4