Function at 0x1002fd50
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1017fdd5
mov eax, dword fs:[0]
push eax
sub esp, 0x104
mov eax, dword [0x101dd594]
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 esi, ecx
mov dword [ebp - 0x78], esi
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x24], 0
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x10030614
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0
push eax
call fcn.1003c520
add esp, 4
test eax, eax
jne 0x1002feb2
call fcn.100d1170
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x1002fe8f
lea ecx, [ebp - 0x3d]
call fcn.1002fc60
push 0x64
push str.d:jenkins.jenkinsworkspacemultiplugin_nativemultipluginencryptplugin_file_hookwatchfolder.cpp
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x4c], 0
mov ebx, eax
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
call fcn.10019000
push 3
push 0x10193e24
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 1
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
call fcn.10019000
mov byte [ebp - 4], 2
call fcn.100d1170
mov edi, eax
lea ecx, [ebp - 0x110]
push 0x39
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100167c0
mov esi, eax
test ebx, ebx
mov byte [ebp - 4], 3
mov ecx, 0x10193e70
cmovne ecx, ebx
push ecx
push esi
call fcn.1001a540
mov eax, dword [edi]
add esp, 8
mov ecx, edi
push esi
call dword [eax + 0x1c]
lea ecx, [ebp - 0x110]
call fcn.10017580
lea ecx, [ebp - 0x74]
call fcn.10017170
lea ecx, [ebp - 0x5c]
call fcn.10017170
mov edx, dword [ebp - 0x24]
or eax, 0xffffffff
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100305f6
jmp 0x100305ee
mov dword [ebp - 0x14], 0
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x1003061e
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 4
mov dword [ebp - 0x20], 0
call fcn.1001b540
mov ecx, eax
test ecx, ecx
je 0x10030628
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x14]
mov byte [ebp - 4], 5
push eax
call fcn.1003cab0
lea eax, [ebp - 0x20]
push eax
call fcn.1003c7c0
mov eax, dword [ebp - 0x14]
add esp, 8
cmp dword [eax - 0xc], 0
je 0x100304cd
mov eax, dword [ebp - 0x20]
cmp dword [eax - 0xc], 0
je 0x100304cd
mov eax, dword [0x101e4950]
mov dword [ebp - 0x28], 0
test al, 1
jne 0x1002ff4d
or eax, 1
mov dword [0x101e494c], 0
mov dword [0x101e4950], eax
xorps xmm0, xmm0
mov byte [ebp - 0x3d], 0
movlpd qword [ebp - 0x1c], xmm0
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 9
push eax
call fcn.100a2403
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x3d]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x3c]
push eax
push 0x1002f240
push 0x101e494c
call fcn.100a32ce
add esp, 0x10
test eax, eax
je 0x100304ac
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0xb
push eax
call fcn.100a243d
add esp, 4
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x44], 0
mov ecx, dword [eax - 0x10]
test ecx, ecx
je 0x1002ffc0
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, eax
test ecx, ecx
jne 0x1002ffd6
call fcn.1001b540
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x10]
mov ecx, eax
test ecx, ecx
je 0x10030632
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, 0x101e4954
mov dword [ebp - 0x2c], 1
add eax, 0x10
mov dword [ebp - 0x44], eax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1002fff0
mov eax, dword [ebp - 0x14]
sub ecx, edx
sar ecx, 1
push ecx
push 0x101e4954
push dword [eax - 0xc]
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.1001d4c0
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.1001ca60
add esp, 0x20
mov edx, dword [ebp - 0x44]
or ebx, 0xffffffff
mov byte [ebp - 4], 0x10
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1003004a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x28]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x10030189
call fcn.100d1170
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x1003010f
push 0x64
push str.d:jenkins.jenkinsworkspacemultiplugin_nativemultipluginencryptplugin_file_hookwatchfolder.cpp
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], al
call fcn.10019000
push 3
push 0x10193e24
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x11
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
call fcn.10019000
mov byte [ebp - 4], 0x12
call fcn.100d1170
mov edi, eax
lea ecx, [ebp - 0x110]
push 0x49
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100167c0
mov esi, eax
push str.m_watchFile__PathFileExists__strHostdir:_s
push esi
mov byte [ebp - 4], 0x13
call fcn.1001a540
mov edx, dword [edi]
add esp, 8
mov ecx, edi
push esi
call dword [edx + 0x1c]
lea ecx, [ebp - 0x110]
call fcn.10017580
lea ecx, [ebp - 0x74]
call fcn.10017170
lea ecx, [ebp - 0x5c]
call fcn.10017170
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 5
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1003012d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x20]
mov eax, ebx
mov byte [ebp - 4], 4
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1003014b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov eax, ebx
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10030169
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x100305f6
jmp 0x100305ee
push str.FileStorageTemp
lea eax, [ebp - 0x28]
mov dword [ebp - 0x30], 0
push eax
lea eax, [ebp - 0x30]
push eax
call fcn.1001cb20
add esp, 0xc
mov edi, dword [esi + 0x98]
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x44], eax
mov esi, dword [edi]
mov dword [ebp - 0x18], esi
cmp esi, edi
je 0x100301ea
nop
test eax, eax
je 0x10030614
push eax
push dword [esi + 0x14]
call fcn.10158862
add esp, 8
test eax, eax
je 0x1003022e
lea ecx, [ebp - 0x18]
call fcn.1002fa80
mov esi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x44]
cmp esi, edi
jne 0x100301c0
mov esi, dword [ebp - 0x78]
lea ecx, [ebp - 0x34]
push ecx
push 0
push 1
push eax
mov ecx, esi
call fcn.10031e40
mov edi, eax
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x2c], edi
test edi, edi
je 0x1003028f
mov eax, dword [esi + 0x98]
lea edx, [esi + 0x98]
mov esi, eax
mov ecx, dword [esi + 4]
cmp byte [ecx + 0xd], 0
jne 0x10030249
cmp dword [ecx + 0x10], edi
jge 0x10030236
mov ecx, dword [ecx + 8]
jmp 0x1003023a
mov esi, dword [esi + 0x10]
mov dword [ebp - 0x18], esi
jmp 0x1003028f
mov esi, ecx
mov ecx, dword [ecx]
cmp byte [ecx + 0xd], 0
je 0x10030224
cmp esi, eax
je 0x10030249
cmp edi, dword [esi + 0x10]
jge 0x1003027e
lea eax, [ebp - 0x2c]
mov ecx, edx
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x3d]
push eax
lea eax, [ebp - 0x18]
push eax
push 0x10195290
call fcn.1002f080
mov ecx, dword [ebp - 0x78]
push eax
add eax, 0x10
push eax
push esi
lea eax, [ebp - 0x18]
push eax
lea ecx, [ecx + 0x98]
call fcn.1002f460
mov esi, dword [ebp - 0x18]
push dword [ebp - 0x44]
lea ecx, [esi + 0x14]
call fcn.10018690
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x18], eax
call fcn.100d1170
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x1003040b
push 0x64
push str.d:jenkins.jenkinsworkspacemultiplugin_nativemultipluginencryptplugin_file_hookwatchfolder.cpp
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], al
call fcn.10019000
push 3
push 0x10193e24
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x15
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
call fcn.10019000
mov byte [ebp - 4], 0x16
call fcn.100d1170
mov edi, eax
lea ecx, [ebp - 0x110]
push 0x51
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.100167c0
mov esi, eax
push 0x1019537c
push esi
mov byte [ebp - 4], 0x17
call fcn.100174d0
add esp, 8
mov ecx, esi
push dword [ebp - 0x18]
call fcn.10023390
push str._err:
push esi
call fcn.100174d0
add esp, 8
mov ecx, esi
push dword [ebp - 0x34]
call fcn.1002f8e0
push str._path:
push esi
call fcn.100174d0
mov eax, dword [ebp - 0x30]
mov ecx, 0x10193e70
test eax, eax
cmovne ecx, eax
push ecx
push esi
call fcn.1001a540
mov eax, dword [edi]
add esp, 0x10
mov ecx, edi
push esi
call dword [eax + 0x1c]
lea ecx, [ebp - 0x110]
call fcn.10017580
mov edx, dword [ebp - 0x48]
mov byte [ebp - 4], 0x15
cmp edx, 0x10
jb 0x100303af
mov ecx, dword [ebp - 0x5c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100303a5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003063c
push edx
push ecx
call fcn.10127e1e
add esp, 8
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
mov byte [ebp - 4], 0x14
cmp edx, 0x10
jb 0x100303f9
mov ecx, dword [ebp - 0x74]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100303ef
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030641
push edx
push ecx
call fcn.10127e1e
add esp, 8
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov edx, dword [ebp - 0x30]
mov eax, ebx
mov byte [ebp - 4], 0x10
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10030429
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x28]
mov eax, ebx
mov byte [ebp - 4], 5
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10030447
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x20]
mov eax, ebx
mov byte [ebp - 4], 4
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10030465
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov eax, ebx
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10030483
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x100304a2
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, 1
jmp 0x100305f8
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0xc
push eax
call fcn.100a245e
add esp, 4
mov byte [ebp - 4], 0xa
test al, al
je 0x10030659
jmp 0x10030646
call fcn.100d1170
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x10030596
lea ecx, [ebp - 0x3d]
call fcn.1002fb70
push 0x64
push str.d:jenkins.jenkinsworkspacemultiplugin_nativemultipluginencryptplugin_file_hookwatchfolder.cpp
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x4c], 0
mov ebx, eax
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
call fcn.10019000
push 3
push 0x10193e24
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 6
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
call fcn.10019000
mov byte [ebp - 4], 7
call fcn.100d1170
mov edi, eax
lea ecx, [ebp - 0x110]
push 0x42
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100167c0
mov esi, eax
test ebx, ebx
mov byte [ebp - 4], 8
mov ecx, 0x10193e70
cmovne ecx, ebx
push ecx
push esi
call fcn.1001a540
mov eax, dword [edi]
add esp, 8
mov ecx, edi
push esi
call dword [eax + 0x1c]
lea ecx, [ebp - 0x110]
call fcn.10017580
lea ecx, [ebp - 0x74]
call fcn.10017170
lea ecx, [ebp - 0x5c]
call fcn.10017170
mov edx, dword [ebp - 0x20]
or ebx, 0xffffffff
mov byte [ebp - 4], 4
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100305b7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov eax, ebx
mov byte [ebp - 4], 0
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100305d5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
xor eax, eax
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x100305f8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
xor eax, eax
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.10128191
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
push 0x80004005
call fcn.10017a40
call fcn.10153963
call fcn.10153963
sub esp, 8
lea eax, [ebp - 0x1c]
mov ecx, esp
push eax
call fcn.10016d00
call fcn.10019c10
call fcn.100a32e6
int3