Function at 0x11cf2be0
Capabilities:
Check if file exists

Disassembly:
push 0xffffffffffffffff
push 0x11fa37de
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x89c
push ebx
push ebp
push esi
mov dword [esp + 0x1c], ecx
push edi
push 0xffffffffffffffdd
lea ecx, [esp + 0x2c]
call fcn.11e15fa0
xor ebx, ebx
mov ecx, 0x1212b5c0
push ebx
push ebx
push ebx
mov dword [esp + 0x8c0], ebx
call fcn.11d60760
test eax, eax
jne 0x11cf2dab
mov ecx, 0x1212b5c0
call fcn.11d86270
test eax, eax
je 0x11cf2cc9
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x56]
mov word [esp + 0x54], bx
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x8c0]
push 0x104
stosw word es:[edi], ax
lea eax, [esp + 0x58]
push eax
push ecx
call fcn.11dbcbf0
add esp, 0xc
lea edx, [esp + 0x54]
mov ecx, 0x1212b5c0
push ebx
push edx
call fcn.11d7c540
test eax, eax
je 0x11cf2cc9
cmp dword [0x12133f80], ebx
je 0x11cf2ca6
lea eax, [esp + 0x54]
push eax
push 0x2b0c
push str._CSafeDoc::OnFindFirstFileW__Line:_d__OnFindFirstFileA__s__is_Forbid.
push str.SafeDisk
push 8
call fcn.11ca5810
add esp, 0x14
push 5
call dword [sym.imp.KERNEL32.dll_SetLastError]
lea ecx, [esp + 0x28]
mov dword [esp + 0x8b4], 0xffffffff
call fcn.11e15fd0
xor eax, eax
jmp 0x11cf36fc
lea ecx, [esp + 0x28]
call fcn.11e16060
mov esi, dword [esp + 0x8bc]
lea edx, [esp + 0x1c]
lea eax, [esp + 0x20]
push edx
mov ecx, dword [esi + 0x24]
mov edi, dword [esi + 0x1c]
mov ebp, dword [esi + 0x20]
mov dword [esp + 0x1c], ecx
lea ecx, [esp + 0x14]
push eax
push ecx
push edi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], ebx
call fcn.11e15b00
mov eax, dword [esp + 0x30]
add esp, 0x10
cmp eax, ebx
je 0x11cf2d4b
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esi + 0xc]
mov dword [esi + 0x1c], edx
mov edx, dword [esp + 0x8c4]
mov dword [esi + 0x24], ecx
mov ecx, dword [esp + 0x8c0]
push edx
push ecx
push esi
mov dword [esi + 0x20], eax
call eax
mov edx, dword [esp + 0x18]
mov dword [esi + 0x1c], edi
mov dword [esi + 0x20], ebp
mov dword [esi + 0x24], edx
mov dword [esi + 0xc], ebx
jmp 0x11cf2d8d
mov edi, dword [esi + 0x18]
cmp edi, ebx
je 0x11cf2d8d
mov eax, dword [esi + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [esp + 0x8c4]
mov ecx, dword [esp + 0x8c0]
push eax
push ecx
call edi
mov dword [esi + 0x14], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 8]
test eax, 0x800000
je 0x11cf2d8d
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [esi + 0x28], eax
mov esi, dword [esi + 0x14]
lea ecx, [esp + 0x28]
mov dword [esp + 0x8b4], 0xffffffff
call fcn.11e15fd0
mov eax, esi
jmp 0x11cf36fc
push 2
lea ecx, [esp + 0x3c]
call fcn.11e15fa0
mov ecx, 0x1212b5c0
mov byte [esp + 0x8b4], 1
call fcn.11d86270
test eax, eax
je 0x11cf2e6e
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x56]
mov word [esp + 0x54], bx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [esp + 0x8c0]
lea edx, [esp + 0x54]
push 0x104
push edx
push eax
call fcn.11dbcbf0
lea ecx, [esp + 0x60]
push ecx
call fcn.11df9a50
add esp, 0x10
test eax, eax
je 0x11cf2e3f
cmp dword [0x12133f80], ebx
je 0x11cf2e32
lea edx, [esp + 0x54]
push edx
push 0x2b29
push str._CSafeDoc::OnFindFirstFileW__Line:_d_Forbid_ExistFile__s_
push str.SafeDisk
push 8
call fcn.11ca5810
add esp, 0x14
push 5
call dword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x11cf316b
lea eax, [esp + 0x54]
push eax
call fcn.11cbba30
add esp, 4
test eax, eax
je 0x11cf2e6e
cmp dword [0x12133f80], ebx
je 0x11cf2e32
lea ecx, [esp + 0x54]
push ecx
push 0x2b33
push str._CSafeDoc::OnFindFirstFileW__Line:_d_Forbid_ExistFile_ShareFolder__s_
push str.NetWorkShareFolder
jmp 0x11cf2e28
push 0x12119948
lea ecx, [esp + 0x18]
call fcn.11e7eae0
lea ecx, [esp + 0x28]
mov byte [esp + 0x8b4], 2
call fcn.11e16060
mov esi, dword [esp + 0x8bc]
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x1c], eax
mov edi, dword [esi + 0x1c]
mov ebp, dword [esi + 0x20]
mov ebx, dword [esi + 0x24]
mov dword [esp + 0x18], eax
lea edx, [esp + 0x18]
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x14]
push eax
push ecx
push edi
call fcn.11e15b00
mov eax, dword [esp + 0x2c]
add esp, 0x10
test eax, eax
je 0x11cf2f11
mov edx, dword [esi + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x18]
mov dword [esi + 0x1c], ecx
mov ecx, dword [esp + 0x8c4]
mov dword [esi + 0x24], edx
mov edx, dword [esp + 0x8c0]
push ecx
push edx
push esi
mov dword [esi + 0x20], eax
call eax
mov eax, dword [esp + 0x24]
mov dword [esi + 0x20], ebp
mov dword [esi + 0x24], ebx
mov ebx, dword [esp + 0x8c0]
mov dword [esi + 0x1c], edi
mov dword [esi + 0xc], eax
xor ebp, ebp
jmp 0x11cf2f5e
mov edi, dword [esi + 0x18]
xor ebp, ebp
cmp edi, ebp
je 0x11cf2f57
mov eax, dword [esi + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, dword [esp + 0x8c4]
mov ebx, dword [esp + 0x8c0]
push ecx
push ebx
call edi
mov dword [esi + 0x14], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 8]
test eax, 0x800000
je 0x11cf2f5e
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [esi + 0x28], eax
jmp 0x11cf2f5e
mov ebx, dword [esp + 0x8c0]
mov edi, dword [esi + 0x14]
lea ecx, [esp + 0x28]
mov dword [esp + 0x10], edi
call fcn.11e16040
mov ecx, 0x1212b5c0
call fcn.11d8c8b0
test eax, eax
jne 0x11cf3198
cmp edi, 0xffffffff
jne 0x11cf3198
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
jne 0x11cf315a
cmp word [ebx], bp
je 0x11cf315a
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x56]
mov word [esp + 0x54], bp
rep stosd dword es:[edi], eax
lea edx, [esp + 0x54]
push 0x104
push edx
push ebx
stosw word es:[edi], ax
call fcn.11dbcbf0
add esp, 0xc
cmp word [esp + 0x54], bp
je 0x11cf315a
mov ecx, 0x1212b5c0
call fcn.11d71190
test eax, eax
je 0x11cf315a
push ebp
push ebp
lea eax, [esp + 0x5c]
push ebp
push eax
mov ecx, 0x1212b5c0
call fcn.11d70510
test eax, eax
je 0x11cf315a
push 0xffffffffffffffdd
lea ecx, [esp + 0x4c]
call fcn.11e15fa0
lea ecx, [esp + 0x54]
push ebp
push ecx
mov ecx, dword [esp + 0x28]
mov byte [esp + 0x8bc], 3
call fcn.11d0c7d0
lea ecx, [esp + 0x48]
mov edi, eax
mov byte [esp + 0x8b4], 2
call fcn.11e15fd0
cmp edi, ebp
je 0x11cf315a
push ebx
lea ecx, [esp + 0x18]
call fcn.11e7f500
push 0x1204c22c
lea ecx, [esp + 0x18]
call fcn.11e7fed0
mov edx, dword [esi + 0x20]
mov eax, dword [esi + 0x24]
mov edi, dword [esi + 0x1c]
mov dword [esp + 0x24], edx
lea ecx, [esp + 0x10]
mov dword [esp + 0x44], eax
lea edx, [esp + 0x18]
push ecx
lea eax, [esp + 0x20]
push edx
push eax
push edi
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x28], ebp
mov dword [esp + 0x20], ebp
call fcn.11e15b00
mov eax, dword [esp + 0x28]
add esp, 0x10
cmp eax, ebp
je 0x11cf30cb
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
mov ebp, dword [esi + 0xc]
mov dword [esi + 0x1c], ecx
mov ecx, dword [esp + 0x8c4]
mov dword [esi + 0x24], edx
mov edx, dword [esp + 0x14]
push ecx
push edx
push esi
mov dword [esi + 0x20], eax
call eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x44]
mov dword [esi + 0x1c], edi
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], ecx
mov dword [esi + 0xc], ebp
jmp 0x11cf310a
mov edi, dword [esi + 0x18]
cmp edi, ebp
je 0x11cf310a
mov eax, dword [esi + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov edx, dword [esp + 0x8c4]
mov eax, dword [esp + 0x14]
push edx
push eax
call edi
mov dword [esi + 0x14], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 8]
test eax, 0x800000
je 0x11cf310a
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov dword [esi + 0x28], eax
mov eax, dword [esi + 0x14]
cmp eax, 0xffffffff
mov dword [esp + 0x10], eax
je 0x11cf315a
mov ecx, dword [esp + 0x8c4]
xor eax, eax
push 0x5c
push ebx
lea ebp, [ecx + 0x2c]
mov ecx, 0x82
mov edi, ebp
rep stosd dword es:[edi], eax
call fcn.11e67430
add esp, 8
test eax, eax
push 0x103
je 0x11cf314e
add eax, 2
push eax
push ebp
call fcn.11e674bf
add esp, 0xc
jmp 0x11cf31a2
push ebx
push ebp
call fcn.11e674bf
add esp, 0xc
jmp 0x11cf31a2
lea ecx, [esp + 0x14]
mov byte [esp + 0x8b4], 1
call fcn.11e7f280
lea ecx, [esp + 0x38]
mov byte [esp + 0x8b4], 0
call fcn.11e15fd0
lea ecx, [esp + 0x28]
mov dword [esp + 0x8b4], 0xffffffff
call fcn.11e15fd0
or eax, 0xffffffff
jmp 0x11cf36fc
push ebx
lea ecx, [esp + 0x18]
call fcn.11e7f500
mov edx, dword [esp + 0x14]
xor ebp, ebp
mov eax, dword [edx - 8]
cmp eax, ebp
je 0x11cf36c2
cmp eax, 0x104
jge 0x11cf36c2
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x2a6]
mov word [esp + 0x2a4], bp
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
cmp dword [edx - 8], ebp
jle 0x11cf322f
mov ecx, 0xff
xor eax, eax
lea edi, [esp + 0x4ae]
mov word [esp + 0x4ac], bp
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0x4ac]
push 0x200
push eax
push edx
call fcn.11dbcbf0
lea ecx, [esp + 0x2b0]
push 0x103
lea edx, [esp + 0x4bc]
push ecx
push edx
call fcn.11dbd340
add esp, 0x18
test eax, eax
je 0x11cf36c2
lea eax, [esp + 0x2a4]
push eax
call fcn.11e67d05
mov ebx, eax
add esp, 4
cmp ebx, ebp
je 0x11cf36c2
mov edi, dword [esp + 0x8c4]
lea eax, [edi + 0x2c]
push eax
call fcn.11e67d05
add eax, ebx
add esp, 4
cmp eax, 0x104
jae 0x11cf36c2
cmp word [esp + ebx*2 + 0x2a2], 0x5c
je 0x11cf3289
lea ecx, [esp + 0x2a4]
push 0x12022ca0
push ecx
call fcn.11e67470
add esp, 8
mov ecx, 0x1212b5c0
call fcn.11d713d0
test eax, eax
je 0x11cf36c2
cmp edi, ebp
je 0x11cf36c2
mov ecx, 0x1212b5c0
call fcn.11d8a240
test eax, eax
je 0x11cf3449
mov ebx, dword [esp + 0x20]
push 1
lea ecx, [esp + 0x4c]
lea edx, [ebx + 0xc]
push edx
call fcn.11e8c590
push 0x12119948
lea ecx, [esp + 0x1c]
mov byte [esp + 0x8b8], 4
call fcn.11e7eae0
mov ebp, dword [esp + 0x10]
lea edi, [ebx + 0x34]
shr ebp, 4
mov eax, ebp
xor edx, edx
div dword [edi + 4]
mov eax, dword [edi]
mov byte [esp + 0x8b4], 5
test eax, eax
je 0x11cf3313
mov eax, dword [eax + edx*4]
test eax, eax
je 0x11cf3313
mov ecx, dword [esp + 0x10]
cmp dword [eax + 8], ecx
je 0x11cf3361
mov eax, dword [eax]
test eax, eax
jne 0x11cf3308
lea eax, [esp + 0x2a4]
lea ecx, [esp + 0x24]
push eax
call fcn.11e7eae0
mov dword [esp + 0x44], eax
mov ecx, dword [edi + 4]
mov eax, ebp
xor edx, edx
mov byte [esp + 0x8b4], 6
div ecx
mov ecx, dword [edi]
test ecx, ecx
mov ebp, edx
je 0x11cf33d7
mov eax, dword [ecx + ebp*4]
test eax, eax
je 0x11cf33d3
mov edx, dword [esp + 0x10]
cmp dword [eax + 8], edx
je 0x11cf33cf
mov eax, dword [eax]
test eax, eax
jne 0x11cf3354
jmp 0x11cf33d3
test eax, eax
je 0x11cf3313
add eax, 0xc
lea ecx, [esp + 0x18]
push eax
call fcn.11e7f410
mov eax, dword [0x12133f80]
test eax, eax
je 0x11cf33a2
mov ecx, dword [esp + 0x10]
mov eax, dword [0x12126854]
lea edx, [esp + 0x2a4]
push edx
push ecx
push eax
push str.__s__CSafeDoc::OnFindFirstFileW____08x____s__has_existed_in_map__n
push str.SafeFind
push 4
call fcn.11ca5810
add esp, 0x18
lea ecx, [esp + 0x18]
mov byte [esp + 0x8b4], 4
call fcn.11e7f280
lea ecx, [esp + 0x48]
mov byte [esp + 0x8b4], 2
call fcn.11e8c5f0
mov edi, dword [esp + 0x8c4]
xor ebp, ebp
jmp 0x11cf344d
test eax, eax
jne 0x11cf3401
test ecx, ecx
jne 0x11cf33e4
mov eax, dword [edi + 4]
push 1
push eax
mov ecx, edi
call fcn.11d1c8f0
mov ecx, edi
call fcn.11d1c960
mov ecx, dword [esp + 0x10]
mov dword [eax + 4], ebp
mov dword [eax + 8], ecx
mov edx, dword [edi]
mov ecx, dword [edx + ebp*4]
mov dword [eax], ecx
mov edx, dword [edi]
mov dword [edx + ebp*4], eax
mov ecx, dword [esp + 0x44]
push ecx
lea ecx, [eax + 0xc]
call fcn.11e7f410
lea ecx, [esp + 0x24]
mov byte [esp + 0x8b4], 5
call fcn.11e7f280
mov eax, dword [0x12133f80]
test eax, eax
je 0x11cf33a2
mov ecx, dword [esp + 0x10]
mov eax, dword [0x12126854]
lea edx, [esp + 0x2a4]
push edx
push ecx
push eax
push str.__s__CSafeDoc::OnFindFirstFileW____08x____s__add_to_map__n
jmp 0x11cf3393
mov ebx, dword [esp + 0x20]
test byte [edi], 0x10
jne 0x11cf36c2
cmp dword [edi + 0x1c], ebp
ja 0x11cf36c2
lea eax, [edi + 0x2c]
lea edx, [esp + 0x2a4]
push eax
push edx
call fcn.11e67470
add esp, 8
lea ecx, [esp + 0x34]
mov dword [esp + 0x18], ebp
push 0x12119948
call fcn.11e7eae0
lea eax, [ebx + 4]
push 1
push eax
lea ecx, [esp + 0x50]
mov byte [esp + 0x8bc], 7
mov dword [esp + 0x24], ebp
call fcn.11e8c590
mov eax, dword [ebx + 0x18]
xor edi, edi
cmp eax, ebp
mov byte [esp + 0x8b4], 8
jle 0x11cf3557
xor ebp, ebp
mov ecx, dword [ebx + 0x14]
lea edx, [esp + 0x2a4]
push edx
mov eax, dword [ecx + ebp + 0x40]
push eax
call fcn.11e67d22
add esp, 8
test eax, eax
jne 0x11cf34de
mov eax, dword [ebx + 0x14]
mov ecx, dword [eax + ebp + 0x20]
test ecx, ecx
je 0x11cf34eb
mov eax, dword [ebx + 0x18]
inc edi
add ebp, 0x6c
cmp edi, eax
jl 0x11cf34b7
jmp 0x11cf3557
mov ecx, dword [ebx + 0x14]
lea edi, [edi + edi*2]
lea edi, [edi + edi*8]
shl edi, 2
mov eax, dword [edi + ecx + 0x40]
mov ecx, 0x1212b5c0
push eax
call fcn.11d923c0
test eax, eax
jne 0x11cf3533
push eax
mov ecx, 0x1212b5c0
call fcn.11d87b70
test eax, eax
je 0x11cf3533
mov ecx, 0x1212b5c0
call fcn.11d96a40
cmp eax, 4
jne 0x11cf3533
lea ecx, [esp + 0x34]
call fcn.11e7eff0
jmp 0x11cf3557
mov edx, dword [ebx + 0x14]
lea ecx, [esp + 0x34]
lea eax, [edi + edx + 0x44]
push eax
call fcn.11e7f410
mov ecx, dword [ebx + 0x14]
mov dword [esp + 0x18], 1
mov edx, dword [edi + ecx + 0x30]
mov dword [esp + 0x1c], edx
lea ecx, [esp + 0x48]
mov byte [esp + 0x8b4], 7
call fcn.11e8c5f0
mov eax, dword [esp + 0x18]
xor ebx, ebx
cmp eax, ebx
je 0x11cf35da
mov edx, dword [esp + 0x34]
cmp dword [edx - 8], ebx
je 0x11cf36b1
mov esi, dword [esi + 0x18]
mov ecx, 0x93
xor eax, eax
lea edi, [esp + 0x58]
mov dword [esp + 0x54], ebx
rep stosd dword es:[edi], eax
lea eax, [esp + 0x54]
push eax
push edx
call esi
cmp eax, 0xffffffff
je 0x11cf35c7
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, dword [esp + 0x8c4]
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x74]
mov dword [eax], ecx
mov ecx, dword [esp + 0x70]
mov dword [eax + 0x20], edx
mov dword [eax + 0x1c], ecx
jmp 0x11cf36b1
mov edx, dword [esp + 0x8c4]
mov eax, dword [esp + 0x1c]
mov dword [edx + 0x20], eax
jmp 0x11cf36b1
mov edi, dword [esp + 0x8c4]
xor esi, esi
xor eax, eax
mov ecx, dword [edi + 0x1c]
mov edx, dword [edi + 0x20]
or ecx, esi
or eax, edx
push ecx
push eax
call fcn.11d94390
add esp, 8
test eax, eax
je 0x11cf36b1
lea eax, [esp + 0x2a4]
push ebx
push eax
mov ecx, 0x1212b5c0
call fcn.11d6cb30
test eax, eax
je 0x11cf36b1
lea ecx, [esp + 0x2a4]
push ecx
mov ecx, 0x1212b5c0
call fcn.11d923c0
test eax, eax
jne 0x11cf3650
push ebx
mov ecx, 0x1212b5c0
call fcn.11d87b70
test eax, eax
je 0x11cf3650
mov ecx, 0x1212b5c0
call fcn.11d96a40
cmp eax, 4
je 0x11cf36b1
push 0xffffffffffffffdd
lea ecx, [esp + 0x4c]
call fcn.11e15fa0
lea edx, [esp + 0x20]
lea eax, [esp + 0x2a4]
push edx
mov byte [esp + 0x8b8], 9
push eax
mov dword [esp + 0x28], ebx
call fcn.11ee3a60
mov esi, eax
add esp, 8
cmp esi, ebx
jne 0x11cf3696
cmp dword [esp + 0x20], ebx
jne 0x11cf3696
push ebx
push ebx
call fcn.11ee1ad0
add esp, 8
test eax, eax
jne 0x11cf36a0
mov ecx, dword [esp + 0x20]
mov dword [edi + 0x20], esi
mov dword [edi + 0x1c], ecx
lea ecx, [esp + 0x48]
mov byte [esp + 0x8b4], 7
call fcn.11e15fd0
lea ecx, [esp + 0x34]
mov byte [esp + 0x8b4], 2
call fcn.11e7f280
lea ecx, [esp + 0x14]
mov byte [esp + 0x8b4], 1
call fcn.11e7f280
lea ecx, [esp + 0x38]
mov byte [esp + 0x8b4], 0
call fcn.11e15fd0
lea ecx, [esp + 0x28]
mov dword [esp + 0x8b4], 0xffffffff
call fcn.11e15fd0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x8ac]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x8a8
ret 0xc