Function at 0x10039770
Capabilities:
Check if file exists
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101b6e67
mov eax, dword fs:[0]
push eax
sub esp, 0x568
mov eax, dword [0x102258ec]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
xor esi, esi
lea eax, [ebp - 0x280]
push 0x208
xor edi, edi
mov dword [ebp - 0x54c], esi
push esi
mov dword [ebp - 0x568], edi
push eax
mov dword [ebp - 4], esi
call fcn.10187ab0
add esp, 0xc
lea eax, [ebp - 0x280]
push esi
push 0x19
push eax
push esi
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
lea eax, [ebp - 0x280]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x10039e93
lea ecx, [ebp - 0x280]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10039800
sub ecx, edx
mov dword [ebp - 0x2e8], 0
xor eax, eax
sar ecx, 1
mov word [ebp - 0x2f8], ax
lea eax, [ebp - 0x280]
push ecx
push eax
lea ecx, [ebp - 0x2f8]
mov dword [ebp - 0x2e4], 7
call fcn.1001e830
mov edi, 3
mov dword [ebp - 0x560], 0
mov dword [ebp - 0x55c], 0
push 2
lea eax, [ebp - 0x2f8]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x560]
push eax
call fcn.10031b30
add esp, 0xc
test eax, eax
jne 0x1003a490
mov esi, dword [ebp - 0x55c]
test esi, esi
je 0x1003988a
lock inc dword [esi + 4]
mov ebx, dword [ebp - 0x560]
mov dword [ebp - 0x558], ebx
mov dword [ebp - 0x554], esi
test esi, esi
je 0x100398a4
lock inc dword [esi + 4]
xorps xmm0, xmm0
xor ecx, ecx
movlpd qword [ebp - 0x570], xmm0
mov dword [ebp - 0x570], 0
mov dword [ebp - 0x56c], ecx
test esi, esi
je 0x100398e6
or eax, 0xffffffff
lock xadd dword [esi + 4], eax
jne 0x100398e6
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
jne 0x100398e6
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov byte [ebp - 4], 5
nop word [eax + eax]
test ebx, ebx
je 0x10039df2
call fcn.100bfc20
mov ecx, eax
push 1
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x10039d73
push 0x48
push str.d:jenkins.jenkinsworkspacemgamezipperzipper_tpi_3commonutils.cpp
lea ecx, [ebp - 0x298]
mov dword [ebp - 0x288], eax
mov dword [ebp - 0x284], 0xf
mov byte [ebp - 0x298], al
call fcn.1001a260
push 3
push 0x101d0d58
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 4], 6
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 0xf
mov byte [ebp - 0x2b0], 0
call fcn.1001a260
lea eax, [ebp - 0x390]
mov dword [ebp - 0x390], 0x101d0c3c
mov dword [ebp - 0x564], eax
or edi, 4
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x340]
mov dword [ebp - 0x550], edi
mov dword [ebp - 0x568], edi
mov dword [ebp - method.std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__.virtual_0], vtable.std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__.0
mov dword [ebp - 0x344], 0x48
call fcn.10042530
lea eax, [ebp - 0x38c]
mov dword [ebp - 0x304], 0
push 0x20
lea ecx, [ebp - 0x340]
mov dword [ebp - 0x308], eax
call fcn.10044580
cmp dword [ebp - 0x308], 0
movzx eax, ax
mov word [ebp - 0x300], ax
jne 0x10039a02
mov eax, dword [ebp - 0x334]
lea ecx, [ebp - 0x340]
push 0
or eax, 4
push eax
call fcn.1001a350
mov eax, dword [ebp - 0x390]
push 2
mov dword [ebp - 4], 0xa
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ostringstream_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__.virtual_0], vtable.std::basic_ostringstream_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__.0
mov eax, dword [ebp - 0x390]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0x394], eax
lea ecx, [ebp - 0x38c]
call fcn.10032530
push 0xffffffffffffffff
push 0x101d0c5c
lea ecx, [ebp - 0x298]
mov byte [ebp - 4], 0xb
call fcn.1001b350
push 0xffffffffffffffff
push 0x101d0c60
lea ecx, [ebp - 0x298]
mov edi, eax
call fcn.1001b350
push 0x64
mov esi, eax
lea eax, [ebp - 0x78]
push 0
push eax
call fcn.10187ab0
add esp, 0xc
cmp esi, 0xffffffff
je 0x10039b71
lea eax, [esi - 1]
cmp edi, eax
jae 0x10039b71
mov eax, dword [ebp - 0x288]
lea ecx, [edi + 1]
sub esi, edi
mov dword [ebp - 0x2d0], 0
dec esi
mov dword [ebp - 0x2cc], 0xf
mov byte [ebp - 0x2e0], 0
cmp eax, ecx
jb 0x1003a4a2
sub eax, ecx
cmp eax, esi
cmovb esi, eax
cmp dword [ebp - 0x284], 0x10
lea eax, [ebp - 0x298]
cmovae eax, dword [ebp - 0x298]
add eax, ecx
lea ecx, [ebp - 0x2e0]
push esi
push eax
call fcn.1001a260
mov edi, dword [ebp - 0x550]
lea eax, [ebp - 0x2e0]
or edi, 0x10
cmp dword [ebp - 0x2cc], 0x10
cmovae eax, dword [ebp - 0x2e0]
push eax
push 0xb76
lea eax, [ebp - 0x78]
push str.__4d___s_
push eax
call fcn.10016cb0
mov edx, dword [ebp - 0x2cc]
add esp, 0x10
cmp edx, 0x10
jb 0x10039b54
mov ecx, dword [ebp - 0x2e0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039b4a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a4a7
push edx
push ecx
call fcn.101454bc
add esp, 8
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0xf
mov byte [ebp - 0x2e0], 0
jmp 0x10039b8d
push 0xb76
lea eax, [ebp - 0x78]
push str.__4d_
push eax
call fcn.10016cb0
mov edi, dword [ebp - 0x550]
add esp, 0xc
cmp dword [ebp - 0x29c], 0x10
lea eax, [ebp - 0x2b0]
cmovae eax, dword [ebp - 0x2b0]
push eax
lea eax, [ebp - 0x390]
push eax
call fcn.100183e0
add esp, 8
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x390]
push eax
call fcn.100183e0
add esp, 8
lea eax, [ebp - 0x390]
mov byte [ebp - 4], 0xc
push str.file_:
push eax
call fcn.100183e0
mov ecx, dword [ebx + 0x30]
lea eax, [ebx + 0x20]
add esp, 8
cmp dword [eax + 0x14], 8
jb 0x10039bea
mov eax, dword [eax]
lea esi, [eax + ecx*2]
push esi
push eax
call fcn.100423a0
add esp, 8
mov dword [ebp - 0x2b8], 0
sub esi, eax
mov dword [ebp - 0x2b4], 7
xor ecx, ecx
sar esi, 1
mov word [ebp - 0x2c8], cx
lea ecx, [ebp - 0x2c8]
push esi
push eax
call fcn.1001e830
or edi, 0xe0
cmp dword [ebp - 0x2b4], 8
lea ecx, [ebp - 0x2c8]
mov eax, 0x101d0c4c
mov byte [ebp - 4], 0xd
cmovae ecx, dword [ebp - 0x2c8]
test ecx, ecx
cmovne eax, ecx
push eax
lea eax, [ebp - 0x390]
push eax
call fcn.10016760
add esp, 8
call fcn.100bfc20
mov ecx, eax
lea edx, [ebp - 0x390]
push edx
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov edx, dword [ebp - 0x2b4]
mov byte [ebp - 4], 0xc
cmp edx, 8
jb 0x10039cb4
mov ecx, dword [ebp - 0x2c8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10039caa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a4ac
push edx
push ecx
call fcn.101454bc
add esp, 8
xor eax, eax
mov dword [ebp - 0x2b8], 0
lea ecx, [ebp - 0x390]
mov dword [ebp - 0x2b4], 7
mov word [ebp - 0x2c8], ax
call fcn.10018510
mov edx, dword [ebp - 0x29c]
mov byte [ebp - 4], 6
cmp edx, 0x10
jb 0x10039d1a
mov ecx, dword [ebp - 0x2b0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039d10
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a4b1
push edx
push ecx
call fcn.101454bc
add esp, 8
mov edx, dword [ebp - 0x284]
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 0xf
mov byte [ebp - 0x2b0], 0
mov byte [ebp - 4], 5
cmp edx, 0x10
jb 0x10039d73
mov ecx, dword [ebp - 0x298]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10039d69
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a4b6
push edx
push ecx
call fcn.101454bc
add esp, 8
inc dword [ebp - 0x54c]
lea eax, [ebp - 0x548]
push eax
push dword [ebx + 0x38]
call fcn.100b6e6f
test eax, eax
jne 0x10039d9f
lea eax, [ebp - 0x548]
mov ecx, ebx
push eax
call fcn.10042b90
jmp 0x100398f0
cmp eax, 0x12
jne 0x1003a4bb
mov esi, dword [ebp - 0x554]
xor ebx, ebx
mov dword [ebp - 0x558], ebx
mov dword [ebp - 0x554], ebx
test esi, esi
je 0x100398f0
or eax, 0xffffffff
lock xadd dword [esi + 4], eax
jne 0x100398f0
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
jne 0x100398f0
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
jmp 0x100398f0
mov esi, dword [ebp - 0x554]
xor ecx, ecx
or ebx, 0xffffffff
test esi, esi
je 0x10039e20
mov eax, ebx
lock xadd dword [esi + 4], eax
jne 0x10039e20
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
mov eax, ebx
lock xadd dword [esi + 8], eax
jne 0x10039e20
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov esi, dword [ebp - 0x55c]
test esi, esi
je 0x10039e49
mov eax, ebx
lock xadd dword [esi + 4], eax
jne 0x10039e49
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
mov eax, ebx
lock xadd dword [esi + 8], eax
jne 0x10039e49
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov edx, dword [ebp - 0x2e4]
mov byte [ebp - 4], 0
cmp edx, 8
jb 0x10039e8d
mov ecx, dword [ebp - 0x2f8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10039e83
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a4c6
push edx
push ecx
call fcn.101454bc
add esp, 8
mov esi, dword [ebp - 0x54c]
push 0x104
lea eax, [ebp - 0x280]
push 0
push eax
call fcn.10187ab0
add esp, 0xc
lea eax, [ebp - 0x280]
push 0
push 0x10
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
lea eax, [ebp - 0x280]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1003a46c
lea ecx, [ebp - 0x280]
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10039ee0
sub ecx, edx
mov dword [ebp - 0x2b8], 0
xor eax, eax
sar ecx, 1
mov word [ebp - 0x2c8], ax
lea eax, [ebp - 0x280]
push ecx
push eax
lea ecx, [ebp - 0x2c8]
mov dword [ebp - 0x2b4], 7
call fcn.1001e830
or edi, 0x300
mov dword [ebp - 0x558], 0
mov dword [ebp - 0x554], 0
push 2
lea eax, [ebp - 0x2c8]
mov byte [ebp - 4], 0xf
push eax
lea eax, [ebp - 0x558]
push eax
call fcn.10031b30
add esp, 0xc
test eax, eax
jne 0x1003a4cb
mov esi, dword [ebp - 0x554]
test esi, esi
je 0x10039f6b
lock inc dword [esi + 4]
mov ebx, dword [ebp - 0x558]
mov dword [ebp - 0x560], ebx
mov dword [ebp - 0x55c], esi
test esi, esi
je 0x10039f85
lock inc dword [esi + 4]
xorps xmm0, xmm0
xor ecx, ecx
movlpd qword [ebp - 0x570], xmm0
mov dword [ebp - 0x570], 0
mov dword [ebp - 0x56c], ecx
test esi, esi
je 0x10039fc7
or eax, 0xffffffff
lock xadd dword [esi + 4], eax
jne 0x10039fc7
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
jne 0x10039fc7
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov byte [ebp - 4], 0x12
nop dword [eax + eax]
test ebx, ebx
je 0x1003a405
call fcn.100bfc20
mov ecx, eax
push 1
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x1003a386
push 0x48
push str.d:jenkins.jenkinsworkspacemgamezipperzipper_tpi_3commonutils.cpp
lea ecx, [ebp - 0x2b0]
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x29c], 0xf
mov byte [ebp - 0x2b0], al
call fcn.1001a260
push 3
push 0x101d0d58
lea ecx, [ebp - 0x2e0]
mov byte [ebp - 4], 0x13
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0xf
mov byte [ebp - 0x2e0], 0
call fcn.1001a260
lea eax, [ebp - 0x390]
mov dword [ebp - 0x390], 0x101d0c3c
mov dword [ebp - 0x564], eax
or edi, 0x400
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x340]
mov dword [ebp - 0x550], edi
mov dword [ebp - 0x568], edi
mov dword [ebp - method.std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__.virtual_0], vtable.std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__.0
mov dword [ebp - 0x344], 0x48
call fcn.10042530
lea eax, [ebp - 0x38c]
mov dword [ebp - 0x304], 0
push 0x20
lea ecx, [ebp - 0x340]
mov dword [ebp - 0x308], eax
call fcn.10044580
cmp dword [ebp - 0x308], 0
movzx eax, ax
mov word [ebp - 0x300], ax
jne 0x1003a0e5
mov eax, dword [ebp - 0x334]
lea ecx, [ebp - 0x340]
push 0
or eax, 4
push eax
call fcn.1001a350
mov eax, dword [ebp - 0x390]
push 2
mov dword [ebp - 4], 0x17
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ostringstream_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__.virtual_0], vtable.std::basic_ostringstream_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__.0
mov eax, dword [ebp - 0x390]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0x394], eax
lea ecx, [ebp - 0x38c]
call fcn.10032530
push 0xffffffffffffffff
push 0x101d0c5c
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 4], 0x18
call fcn.1001b350
push 0xffffffffffffffff
push 0x101d0c60
lea ecx, [ebp - 0x2b0]
mov edi, eax
call fcn.1001b350
push 0x64
mov esi, eax
lea eax, [ebp - 0x78]
push 0
push eax
call fcn.10187ab0
add esp, 0xc
cmp esi, 0xffffffff
je 0x1003a257
lea eax, [esi - 1]
cmp edi, eax
jae 0x1003a257
mov eax, dword [ebp - 0x2a0]
lea ecx, [edi + 1]
sub esi, edi
mov dword [ebp - 0x288], 0
dec esi
mov dword [ebp - 0x284], 0xf
mov byte [ebp - 0x298], 0
cmp eax, ecx
jb 0x1003a4dd
sub eax, ecx
cmp eax, esi
cmovb esi, eax
cmp dword [ebp - 0x29c], 0x10
lea eax, [ebp - 0x2b0]
cmovae eax, dword [ebp - 0x2b0]
add eax, ecx
lea ecx, [ebp - 0x298]
push esi
push eax
call fcn.1001a260
mov edi, dword [ebp - 0x550]
lea eax, [ebp - 0x298]
or edi, 0x1000
cmp dword [ebp - 0x284], 0x10
cmovae eax, dword [ebp - 0x298]
push eax
push 0xb81
lea eax, [ebp - 0x78]
push str.__4d___s_
push eax
call fcn.10016cb0
mov edx, dword [ebp - 0x284]
add esp, 0x10
cmp edx, 0x10
jb 0x1003a23a
mov ecx, dword [ebp - 0x298]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1003a230
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003a4e2
push edx
push ecx
call fcn.101454bc
add esp, 8
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x284], 0xf
mov byte [ebp - 0x298], 0
jmp 0x1003a273
push 0xb81
lea eax, [ebp - 0x78]
push str.__4d_
push eax
call fcn.10016cb0
mov edi, dword [ebp - 0x550]
add esp, 0xc
cmp dword [ebp - 0x2cc], 0x10
lea eax, [ebp - 0x2e0]
cmovae eax, dword [ebp - 0x2e0]
push eax
lea eax, [ebp - 0x390]
push eax
call fcn.100183e0
add esp, 8
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x390]
push eax
call fcn.100183e0
add esp, 8
lea eax, [ebp - 0x390]
mov byte [ebp - 4], 0x19
push str.file_:
push eax
call fcn.100183e0
mov ecx, dword [ebx + 0x30]
lea eax, [ebx + 0x20]
add esp, 8
cmp dword [eax + 0x14], 8
jb 0x1003a2d0
mov eax, dword [eax]
lea esi, [eax + ecx*2]
push esi
push eax
call fcn.100423a0
add esp, 8
mov dword [ebp - 0x2e8], 0
sub esi, eax
mov dword [ebp - 0x2e4], 7
xor ecx, ecx
sar esi, 1
mov word [ebp - 0x2f8], cx
lea ecx, [ebp - 0x2f8]
push esi
push eax
call fcn.1001e830
or edi, 0xe000
cmp dword [ebp - 0x2e4], 8
lea ecx, [ebp - 0x2f8]
mov eax, 0x101d0c4c
mov byte [ebp - 4], 0x1a
cmovae ecx, dword [ebp - 0x2f8]
test ecx, ecx
cmovne eax, ecx
push eax
lea eax, [ebp - 0x390]
push eax
call fcn.10016760
add esp, 8
call fcn.100bfc20
mov ecx, eax
lea edx, [ebp - 0x390]
push edx
mov eax, dword [ecx]
call dword [eax + 0x1c]
lea ecx, [ebp - 0x2f8]
call fcn.10017de0
lea ecx, [ebp - 0x390]
call fcn.10018510
lea ecx, [ebp - 0x2e0]
call fcn.10017d90
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 4], 0x12
call fcn.10017d90
inc dword [ebp - 0x54c]
lea eax, [ebp - 0x548]
push eax
push dword [ebx + 0x38]
call fcn.100b6e6f
test eax, eax
jne 0x1003a3b2
lea eax, [ebp - 0x548]
mov ecx, ebx
push eax
call fcn.10042b90
jmp 0x10039fd0
cmp eax, 0x12
jne 0x1003a4bb
mov esi, dword [ebp - 0x55c]
xor ebx, ebx
mov dword [ebp - 0x560], ebx
mov dword [ebp - 0x55c], ebx
test esi, esi
je 0x10039fd0
or eax, 0xffffffff
lock xadd dword [esi + 4], eax
jne 0x10039fd0
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
jne 0x10039fd0
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
jmp 0x10039fd0
mov ebx, dword [ebp - 0x55c]
xor ecx, ecx
or edi, 0xffffffff
test ebx, ebx
je 0x1003a433
mov eax, edi
lock xadd dword [ebx + 4], eax
jne 0x1003a433
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov eax, edi
lock xadd dword [ebx + 8], eax
jne 0x1003a433
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 4]
mov esi, dword [ebp - 0x554]
test esi, esi
je 0x1003a45b
mov eax, edi
lock xadd dword [esi + 4], eax
jne 0x1003a45b
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
lock xadd dword [esi + 8], edi
dec edi
jne 0x1003a45b
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
lea ecx, [ebp - 0x2c8]
call fcn.10017de0
mov esi, dword [ebp - 0x54c]
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.101454ca
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x2f8]
push ecx
push eax
push str.directory_iterator::directory_iterator
call fcn.10042d80
call fcn.10019d10
call fcn.1018b109
call fcn.1018b109
call fcn.1018b109
call fcn.1018b109
push eax
push str.directory_iterator::operator
call fcn.10042d00
call fcn.1018b109
lea ecx, [ebp - 0x2c8]
push ecx
push eax
push str.directory_iterator::directory_iterator
call fcn.10042d80
call fcn.10019d10
call fcn.1018b109
int3