Function at 0x4176f9
Capabilities:
Enumerate files on windows

Disassembly:
push 8
push 0x5b0
mov eax, 0x5c3aea
call fcn.005bf8df
call fcn.00408bc2
mov edx, str.global_install_path
mov esi, dword [eax]
mov ecx, esi
call fcn.00431e30
push 0
or edx, 0xffffffff
mov ecx, esi
call fcn.004319b0
pop ecx
mov edx, eax
lea ecx, [ebp - 0x580]
call fcn.00409c4a
and dword [ebp - 4], 0
mov ecx, esi
push 0xfffffffffffffffe
pop edx
call fcn.00431120
push 0x5ff994
lea edx, [ebp - 0x580]
lea ecx, [ebp - 0x590]
call fcn.00408b05
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x58c]
mov edx, eax
mov dword [esp], str.Tools_
call fcn.00408b05
pop ecx
push eax
lea ecx, [ebp - 0x580]
mov byte [ebp - 4], 2
call fcn.00408b67
mov ecx, dword [ebp - 0x58c]
lea ecx, [ecx - 0x10]
call fcn.00405f2b
mov ecx, dword [ebp - 0x590]
lea ecx, [ecx - 0x10]
call fcn.00405f2b
call fcn.0040bb90
add eax, 4
lea ecx, [ebp - 0x588]
push eax
call fcn.0040e18f
call fcn.00418702
mov byte [ebp - 0x579], al
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x584]
test ecx, ecx
je 0x4177d8
call fcn.0040f1cc
mov al, byte [ebp - 0x579]
mov byte [ebp - 4], 0
mov edi, str.d:_svn_trunkdtlsetupdtluninstalluninstallmgr.cpp
test al, al
je 0x417942
call fcn.0040bb90
add eax, 4
lea ecx, [ebp - 0x588]
push eax
call fcn.0040e18f
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x580]
cmp dword [eax - 4], 1
jle 0x417821
push dword [eax - 0xc]
lea ecx, [ebp - 0x580]
call fcn.004058bc
mov eax, dword [ebp - 0x580]
lea ecx, [ebp - 0x15c]
push 0xfde9
mov dword [ebp - 0x160], ecx
lea ecx, [ebp - 0x160]
push eax
call fcn.00408cbb
and dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
push 1
push 0x5ff8e0
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 6
call fcn.0040d00e
push 0x5c
push edi
mov esi, eax
call fcn.0058de00
pop ecx
pop ecx
test eax, eax
je 0x41787d
push 0x5c
push edi
call fcn.0058de00
pop ecx
pop ecx
inc eax
jmp 0x41787f
mov eax, edi
push eax
mov ecx, esi
call fcn.0040cf3f
push 1
push 0x5ff918
mov ecx, eax
call fcn.0040d00e
push 0x12
push str.KillAllToolProcess
mov ecx, eax
call fcn.0040d00e
push 2
push 0x5ff22c
mov ecx, eax
call fcn.0040d00e
push 0x75
pop edx
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.00418686
push eax
mov ecx, esi
mov byte [ebp - 4], 7
call fcn.0040d067
push 2
push 0x5ff930
mov ecx, eax
call fcn.0040d00e
push 0xd
push str.strAppPath:
mov ecx, eax
call fcn.0040d00e
cmp dword [eax + 0x14], 0x10
jb 0x4178ee
mov eax, dword [eax]
lea ecx, [ebp - 0x160]
push ecx
mov ecx, dword [ebp - 0x588]
push eax
call fcn.00417f39
lea ecx, [ebp - 0x74]
call fcn.00416fe0
lea ecx, [ebp - 0x5c]
call fcn.00416fe0
lea eax, [ebp - 0x15c]
cmp dword [ebp - 0x160], eax
je 0x41792b
push dword [ebp - 0x160]
call fcn.005950fb
pop ecx
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x584]
test ecx, ecx
je 0x41793e
call fcn.0040f1cc
mov byte [ebp - 4], 0
push 0x5ff944
lea edx, [ebp - 0x580]
lea ecx, [ebp - 0x590]
call fcn.00408b05
pop ecx
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xa4]
push dword [eax]
call fcn.00409d77
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x590]
lea ecx, [ecx - 0x10]
call fcn.00405f2b
cmp dword [ebp - 0x90], 8
lea ecx, [ebp - 0x578]
lea eax, [ebp - 0xa4]
cmovae eax, dword [ebp - 0xa4]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov esi, eax
mov dword [ebp - 0x58c], esi
cmp esi, 0xffffffff
je 0x417ebc
test byte [ebp - 0x578], 0x10
je 0x417e9f
lea eax, [ebp - 0x54c]
push 0x5ff990
push eax
call fcn.005950bb
pop ecx
pop ecx
test eax, eax
je 0x417e9f
lea eax, [ebp - 0x54c]
push 0x5ff988
push eax
call fcn.005950bb
pop ecx
pop ecx
test eax, eax
je 0x417e9f
lea eax, [ebp - 0x54c]
push eax
lea edx, [ebp - 0x580]
lea ecx, [ebp - 0x594]
call fcn.00408b05
pop ecx
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x8c]
push dword [eax]
call fcn.00409d77
mov ecx, dword [ebp - 0x594]
lea ecx, [ecx - 0x10]
call fcn.00405f2b
call fcn.0040bb90
add eax, 4
lea ecx, [ebp - 0x5a8]
push eax
call fcn.0040e18f
call fcn.00418702
mov byte [ebp - 0x579], al
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x5a4]
test ecx, ecx
je 0x417a62
call fcn.0040f1cc
mov al, byte [ebp - 0x579]
mov byte [ebp - 4], 0xe
test al, al
je 0x417b9c
call fcn.0040bb90
add eax, 4
lea ecx, [ebp - 0x5b0]
push eax
call fcn.0040e18f
lea edx, [ebp - 0x8c]
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x2c]
call fcn.00458fc0
cmp dword [eax + 0x14], 0x10
jb 0x417a9c
mov eax, dword [eax]
and dword [ebp - 0x34], 0
mov dword [ebp - 0x584], eax
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
push 1
push 0x5ff8e0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x12
call fcn.0040d00e
push 0x5c
push edi
mov esi, eax
call fcn.0058de00
pop ecx
pop ecx
test eax, eax
je 0x417ae1
push 0x5c
push edi
call fcn.0058de00
pop ecx
pop ecx
inc eax
jmp 0x417ae3
mov eax, edi
push eax
mov ecx, esi
call fcn.0040cf3f
push 1
push 0x5ff918
mov ecx, eax
call fcn.0040d00e
push 0x12
push str.KillAllToolProcess
mov ecx, eax
call fcn.0040d00e
push 2
push 0x5ff22c
mov ecx, eax
call fcn.0040d00e
mov edx, 0x87
lea ecx, [ebp - 0x74]
mov esi, eax
call fcn.00418686
push eax
mov ecx, esi
mov byte [ebp - 4], 0x13
call fcn.0040d067
push 2
push 0x5ff930
mov ecx, eax
call fcn.0040d00e
push 2
push 0x5ff950
mov ecx, eax
call fcn.0040d00e
cmp dword [eax + 0x14], 0x10
jb 0x417b54
mov eax, dword [eax]
lea ecx, [ebp - 0x584]
push ecx
mov ecx, dword [ebp - 0x5b0]
push eax
call fcn.00417f4c
lea ecx, [ebp - 0x74]
call fcn.00416fe0
lea ecx, [ebp - 0x44]
call fcn.00416fe0
lea ecx, [ebp - 0x2c]
call fcn.00416fe0
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x5ac]
test ecx, ecx
je 0x417b92
call fcn.0040f1cc
mov byte [ebp - 4], 0xe
mov esi, dword [ebp - 0x58c]
push ecx
lea edx, [ebp - 0x8c]
lea ecx, [ebp - 0x5c]
call fcn.00417ede
pop ecx
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x328]
cmp dword [ebp - 0x48], 8
lea eax, [ebp - 0x5c]
push ecx
cmovae eax, dword [ebp - 0x5c]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov edi, eax
cmp edi, 0xffffffff
jne 0x417bf3
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [ebp - 0x5c]
call fcn.00406228
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0xb
call fcn.00406228
jmp 0x417e9a
test byte [ebp - 0x328], 0x10
jne 0x417e60
lea eax, [ebp - 0x2fc]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindExtensionW]
push eax
lea ecx, [ebp - 0x74]
call fcn.00409d77
mov edx, str..exe
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x74]
call fcn.00408e40
test al, al
je 0x417e54
and dword [ebp - 0x34], 0
lea ecx, [ebp - 0x44]
xor eax, eax
mov dword [ebp - 0x30], 7
mov word [ebp - 0x44], ax
lea eax, [ebp - 0x2fc]
push eax
call fcn.00409d52
call fcn.0040bb90
add eax, 4
lea ecx, [ebp - 0x5b8]
push eax
call fcn.0040e18f
call fcn.00418702
mov byte [ebp - 0x579], al
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x5b4]
test ecx, ecx
je 0x417c87
call fcn.0040f1cc
mov al, byte [ebp - 0x579]
mov byte [ebp - 4], 0x17
test al, al
je 0x417dcf
call fcn.0040bb90
add eax, 4
lea ecx, [ebp - 0x5c0]
push eax
call fcn.0040e18f
lea edx, [ebp - 0x44]
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xd4]
call fcn.00458fc0
cmp dword [eax + 0x14], 0x10
jb 0x417cc1
mov eax, dword [eax]
and dword [ebp - 0x1c], 0
mov dword [ebp - 0x584], eax
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
push 1
push 0x5ff8e0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x1b
call fcn.0040d00e
push 0x5c
push str.d:_svn_trunkdtlsetupdtluninstalluninstallmgr.cpp
mov esi, eax
call fcn.0058de00
pop ecx
pop ecx
test eax, eax
je 0x417d0e
push 0x5c
push str.d:_svn_trunkdtlsetupdtluninstalluninstallmgr.cpp
call fcn.0058de00
pop ecx
pop ecx
inc eax
jmp 0x417d13
mov eax, str.d:_svn_trunkdtlsetupdtluninstalluninstallmgr.cpp
push eax
mov ecx, esi
call fcn.0040cf3f
push 1
push 0x5ff918
mov ecx, eax
call fcn.0040d00e
push 0x12
push str.KillAllToolProcess
mov ecx, eax
call fcn.0040d00e
push 2
push 0x5ff22c
mov ecx, eax
call fcn.0040d00e
mov edx, 0x9e
lea ecx, [ebp - 0xbc]
mov esi, eax
call fcn.00418686
push eax
mov ecx, esi
mov byte [ebp - 4], 0x1c
call fcn.0040d067
push 2
push 0x5ff930
mov ecx, eax
call fcn.0040d00e
push 8
push str.2:____
mov ecx, eax
call fcn.0040d00e
cmp dword [eax + 0x14], 0x10
jb 0x417d87
mov eax, dword [eax]
lea ecx, [ebp - 0x584]
push ecx
mov ecx, dword [ebp - 0x5c0]
push eax
call fcn.00417f4c
lea ecx, [ebp - 0xbc]
call fcn.00416fe0
lea ecx, [ebp - 0x2c]
call fcn.00416fe0
lea ecx, [ebp - 0xd4]
call fcn.00416fe0
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x5bc]
test ecx, ecx
je 0x417dcb
call fcn.0040f1cc
mov byte [ebp - 4], 0x17
and dword [ebp - 0x1c], 0
lea ecx, [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x18], 7
mov word [ebp - 0x2c], ax
lea eax, [ebp - 0x2fc]
push eax
call fcn.00409d52
xor eax, eax
mov byte [ebp - 4], 0x1e
push dword [ebp - 0x584]
mov dword [ebp - 0x5a0], eax
lea ecx, [ebp - 0x5a0]
mov dword [ebp - 0x59c], eax
mov dword [ebp - 0x598], eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00417f5f
push fcn.00406256
push 1
push 0x18
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x20
push eax
call fcn.0053a45e
lea ecx, [ebp - 0x5a0]
call fcn.00459200
lea ecx, [ebp - 0x5a0]
call fcn.00418649
lea ecx, [ebp - 0x44]
call fcn.00406228
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x15
call fcn.00406228
lea eax, [ebp - 0x328]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x417bf3
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [ebp - 0x5c]
call fcn.00406228
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0xb
call fcn.00406228
mov esi, dword [ebp - 0x58c]
mov edi, str.d:_svn_trunkdtlsetupdtluninstalluninstallmgr.cpp
lea eax, [ebp - 0x578]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x4179af
push esi
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [ebp - 0xa4]
call fcn.00406228
mov ecx, dword [ebp - 0x580]
lea ecx, [ecx - 0x10]
call fcn.00405f2b
mov ecx, dword [ebp - 0x14]
call fcn.005bf8ba
ret