Function at 0x41b780
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x48be05
mov eax, dword fs:[0]
push eax
sub esp, 0x23c
mov eax, dword [0x4c6018]
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 eax, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x234], eax
mov dword [ebp - 0x1ac], 0xf
mov dword [ebp - 0x1b0], ebx
mov byte [ebp - 0x1c0], bl
push 0x104
lea ecx, [ebp - 0x118]
push ecx
push ebx
mov dword [ebp - 4], ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edx, [ebp - 0x118]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
dec eax
cmp eax, ebx
jl 0x41b814
jmp 0x41b800
cmp byte [ebp + eax - 0x118], 0x5c
je 0x41b814
dec eax
mov byte [ebp + eax - 0x117], bl
jns 0x41b800
lea eax, [ebp - 0x118]
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x41b820
sub eax, edx
mov edi, eax
lea eax, [ebp - 0x118]
lea esi, [ebp - 0x1c0]
call fcn.00402610
xor edi, edi
mov eax, 0x4b98a0
lea esi, [ebp - 0x134]
mov dword [ebp - 0x120], 0xf
mov dword [ebp - 0x124], ebx
mov byte [ebp - 0x134], bl
call fcn.00402610
mov byte [ebp - 4], 1
cmp dword [ebp + 0xc], ebx
je 0x41b99b
push str.Digest.XML
lea eax, [ebp - 0x1c0]
push eax
lea ecx, [ebp - 0x1dc]
push ecx
call fcn.00409ec0
add esp, 0xc
mov esi, eax
lea edx, [ebp - 0x134]
mov edi, 0x10
cmp edx, esi
je 0x41b90a
cmp dword [ebp - 0x120], edi
jb 0x41b8b5
mov eax, dword [ebp - 0x134]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x120], 0xf
mov dword [ebp - 0x124], ebx
mov byte [ebp - 0x134], bl
cmp dword [esi + 0x14], edi
jae 0x41b8e8
mov eax, dword [esi + 0x10]
inc eax
push eax
lea ecx, [ebp - 0x134]
push esi
push ecx
call dword [sym.imp.MSVCR100.dll_memmove]
add esp, 0xc
jmp 0x41b8f2
mov edx, dword [esi]
mov dword [ebp - 0x134], edx
mov dword [esi], ebx
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x124], eax
mov ecx, dword [esi + 0x14]
mov dword [ebp - 0x120], ecx
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c8], edi
jb 0x41b926
mov edx, dword [ebp - 0x1dc]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov eax, dword [ebp - 0x134]
cmp dword [ebp - 0x120], edi
jae 0x41b93a
lea eax, [ebp - 0x134]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
jne 0x41baba
mov esi, 0x10
cmp dword [ebp - 0x120], esi
jb 0x41b966
mov eax, dword [ebp - 0x134]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x120], 0xf
mov dword [ebp - 0x124], ebx
mov byte [ebp - 0x134], bl
cmp dword [ebp - 0x1ac], esi
jb 0x41b994
mov ecx, dword [ebp - 0x1c0]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor eax, eax
jmp 0x41c170
push str.Digest_n.XML
lea edx, [ebp - 0x1c0]
push edx
lea eax, [ebp - 0x1dc]
push eax
call fcn.00409ec0
add esp, 0xc
mov esi, eax
lea ecx, [ebp - 0x134]
mov edi, 0x10
cmp ecx, esi
je 0x41ba34
cmp dword [ebp - 0x120], edi
jb 0x41b9df
mov edx, dword [ebp - 0x134]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x120], 0xf
mov dword [ebp - 0x124], ebx
mov byte [ebp - 0x134], bl
cmp dword [esi + 0x14], edi
jae 0x41ba12
mov eax, dword [esi + 0x10]
inc eax
push eax
lea eax, [ebp - 0x134]
push esi
push eax
call dword [sym.imp.MSVCR100.dll_memmove]
add esp, 0xc
jmp 0x41ba1c
mov ecx, dword [esi]
mov dword [ebp - 0x134], ecx
mov dword [esi], ebx
mov edx, dword [esi + 0x10]
mov dword [ebp - 0x124], edx
mov eax, dword [esi + 0x14]
mov dword [ebp - 0x120], eax
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1c8], edi
jb 0x41ba50
mov ecx, dword [ebp - 0x1dc]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov eax, dword [ebp - 0x134]
cmp dword [ebp - 0x120], edi
jae 0x41ba64
lea eax, [ebp - 0x134]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
jne 0x41baba
mov esi, 0x10
cmp dword [ebp - 0x120], esi
jb 0x41ba8c
mov edx, dword [ebp - 0x134]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x120], 0xf
mov dword [ebp - 0x124], ebx
mov byte [ebp - 0x134], bl
cmp dword [ebp - 0x1ac], esi
jb 0x41c16b
mov eax, dword [ebp - 0x1c0]
push eax
jmp 0x41c162
cmp dword [ebp - 0x120], 0x10
mov eax, dword [ebp - 0x134]
jae 0x41bacf
lea eax, [ebp - 0x134]
sub esp, 0x1c
mov esi, esp
mov ecx, eax
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov dword [ebp - 0x244], esp
mov byte [esi], bl
lea edi, [ecx + 1]
jmp 0x41baf0
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x41baf0
sub ecx, edi
mov edi, ecx
call fcn.00402610
mov esi, dword [ebp - 0x234]
add esi, 0x1118
mov dword [ebp - 0x234], esi
call fcn.0041f8a0
push 1
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 8
mov eax, str.FileInfo
mov dword [ebp - 0x244], esp
mov byte [esi], bl
call fcn.00402610
mov ecx, dword [ebp - 0x234]
call fcn.0041f960
mov dword [ebp - 0x244], eax
mov dword [ebp - 0x23c], 1
cmp eax, 1
jl 0x41c120
mov ecx, dword [ebp - 0x23c]
push ecx
sub esp, 0x1c
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 4
mov eax, str.Path
mov dword [ebp - 0x248], esp
mov byte [esi], bl
call fcn.00402610
sub esp, 0x1c
mov byte [ebp - 4], 4
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov eax, str.File
mov dword [ebp - 0x240], esp
mov byte [esi], bl
call fcn.00402610
mov ecx, dword [ebp - 0x234]
lea edx, [ebp - 0x1f8]
mov byte [ebp - 4], 1
call fcn.0041fd80
mov edx, dword [ebp - 0x23c]
push edx
sub esp, 0x1c
mov byte [ebp - 4], 5
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 8
mov eax, str.FileName
mov dword [ebp - 0x240], esp
mov byte [esi], bl
call fcn.00402610
sub esp, 0x1c
mov byte [ebp - 4], 6
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 4
mov eax, str.File
mov dword [ebp - 0x248], esp
mov byte [esi], bl
call fcn.00402610
mov ecx, dword [ebp - 0x234]
lea edx, [ebp - 0x188]
mov byte [ebp - 4], 5
call fcn.0041fd80
mov eax, dword [ebp - 0x23c]
push eax
sub esp, 0x1c
mov byte [ebp - 4], 7
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 6
mov eax, str.Digest
mov dword [ebp - 0x240], esp
mov byte [esi], bl
call fcn.00402610
sub esp, 0x1c
mov byte [ebp - 4], 8
mov esi, esp
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], ebx
mov edi, 4
mov eax, str.File
mov dword [ebp - 0x248], esp
mov byte [esi], bl
call fcn.00402610
mov ecx, dword [ebp - 0x234]
lea edx, [ebp - 0x16c]
mov byte [ebp - 4], 7
call fcn.0041fd80
mov dword [ebp - 0x13c], 0xf
mov dword [ebp - 0x140], ebx
mov byte [ebp - 0x150], bl
push 0x4a3178
lea ecx, [ebp - 0x1c0]
push ecx
lea edx, [ebp - 0x1dc]
push edx
mov byte [ebp - 4], 0xa
call fcn.00409ec0
add esp, 0xc
mov ecx, eax
lea eax, [ebp - 0x1f8]
lea ebx, [ebp - 0x230]
mov byte [ebp - 4], 0xb
call fcn.00409fa0
push eax
mov eax, 0x4a3178
lea ecx, [ebp - 0x214]
mov byte [ebp - 4], 0xc
call fcn.0041f510
add esp, 4
mov ecx, eax
lea eax, [ebp - 0x188]
lea ebx, [ebp - 0x1a4]
mov byte [ebp - 4], 0xd
call fcn.00409fa0
cmp dword [ebp - 0x200], 0x10
jb 0x41bd3e
mov eax, dword [ebp - 0x214]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor ebx, ebx
mov esi, 0xf
mov dword [ebp - 0x200], esi
mov dword [ebp - 0x204], ebx
mov byte [ebp - 0x214], bl
mov edi, 0x10
cmp dword [ebp - 0x21c], edi
jb 0x41bd74
mov ecx, dword [ebp - 0x230]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x21c], esi
mov dword [ebp - 0x220], ebx
mov byte [ebp - 0x230], bl
mov byte [ebp - 4], 0x11
cmp dword [ebp - 0x1c8], edi
jb 0x41bda2
mov edx, dword [ebp - 0x1dc]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x1c8], esi
mov dword [ebp - 0x1cc], ebx
mov byte [ebp - 0x1dc], bl
cmp dword [ebp + 0xc], ebx
jne 0x41beaa
mov eax, dword [ebp - 0x188]
cmp dword [ebp - 0x174], edi
jae 0x41bdd1
lea eax, [ebp - 0x188]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
jne 0x41beaa
cmp dword [ebp - 0x190], edi
jb 0x41bdf8
mov eax, dword [ebp - 0x1a4]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x190], esi
mov dword [ebp - 0x194], ebx
mov byte [ebp - 0x1a4], bl
cmp dword [ebp - 0x13c], edi
jb 0x41be22
mov ecx, dword [ebp - 0x150]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x13c], esi
mov dword [ebp - 0x140], ebx
mov byte [ebp - 0x150], bl
cmp dword [ebp - 0x158], edi
jb 0x41be4c
mov edx, dword [ebp - 0x16c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x158], esi
mov dword [ebp - 0x15c], ebx
mov byte [ebp - 0x16c], bl
cmp dword [ebp - 0x174], edi
jb 0x41be76
mov eax, dword [ebp - 0x188]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov byte [ebp - 4], 1
mov dword [ebp - 0x174], esi
mov dword [ebp - 0x178], ebx
mov byte [ebp - 0x188], bl
cmp dword [ebp - 0x1e4], edi
jb 0x41c105
mov ecx, dword [ebp - 0x1f8]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
jmp 0x41c102
lea edx, [ebp - 0x150]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ecx + 0x10], ebx
lea eax, [ebp - 0x1a4]
mov dword [ebp - 0x240], esp
mov dword [ecx + 0x14], esi
mov byte [ecx], bl
push eax
or eax, 0xffffffff
xor ebx, ebx
call fcn.00402020
call fcn.0041c2c0
mov ecx, dword [ebp - 0x16c]
cmp dword [ebp - 0x158], edi
jae 0x41beee
lea ecx, [ebp - 0x16c]
mov esi, dword [ebp - 0x140]
mov edx, dword [ebp - 0x15c]
cmp esi, edx
jae 0x41bf00
mov edx, esi
cmp dword [ebp - 0x13c], edi
mov edi, dword [ebp - 0x150]
jae 0x41bf14
lea edi, [ebp - 0x150]
cmp edx, 4
jb 0x41bf34
lea esp, [esp]
mov eax, dword [edi]
cmp eax, dword [ecx]
jne 0x41bf3c
sub edx, 4
add ecx, 4
add edi, 4
cmp edx, 4
jae 0x41bf20
xor ebx, ebx
cmp edx, ebx
je 0x41bf8d
jmp 0x41bf3e
xor ebx, ebx
movzx esi, byte [ecx]
movzx eax, byte [edi]
sub eax, esi
jne 0x41bf79
cmp edx, 1
jbe 0x41bf87
movzx eax, byte [edi + 1]
movzx esi, byte [ecx + 1]
sub eax, esi
jne 0x41bf79
cmp edx, 2
jbe 0x41bf87
movzx eax, byte [edi + 2]
movzx esi, byte [ecx + 2]
sub eax, esi
jne 0x41bf79
cmp edx, 3
jbe 0x41bf87
movzx eax, byte [edi + 3]
movzx ecx, byte [ecx + 3]
sub eax, ecx
mov esi, dword [ebp - 0x140]
sar eax, 0x1f
or eax, 1
jmp 0x41bf8f
mov esi, dword [ebp - 0x140]
xor eax, eax
mov edi, dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
cmp eax, ebx
jne 0x41bfb3
mov eax, dword [ebp - 0x15c]
cmp esi, eax
jae 0x41bfa8
or eax, 0xffffffff
jmp 0x41bfb1
xor edx, edx
cmp esi, eax
setne dl
mov eax, edx
cmp eax, ebx
sete al
cmp al, bl
sete al
cmp al, bl
je 0x41c04b
sub esp, 0x1c
mov ecx, esp
mov esi, 0xf
mov dword [ecx + 0x10], ebx
lea eax, [ebp - 0x1a4]
mov dword [ebp - 0x240], esp
mov dword [ecx + 0x14], esi
mov byte [ecx], bl
push eax
or eax, 0xffffffff
xor ebx, ebx
call fcn.00402020
lea edi, [ebp - 0x238]
call fcn.0041b6e0
add esp, 0x1c
push ebx
push str.AntiPhishing_x64.dll
mov ecx, edi
call dword [sym.imp.mfc100.dll_Ordinal_4144]
cmp eax, 0xffffffff
jne 0x41c037
push ebx
push str.AntiPhishing.dll
mov ecx, edi
call dword [sym.imp.mfc100.dll_Ordinal_4144]
cmp eax, 0xffffffff
jne 0x41c037
push ebx
push str.abcEBService.exe
mov ecx, edi
call dword [sym.imp.mfc100.dll_Ordinal_4144]
cmp eax, 0xffffffff
je 0x41c18e
lea ecx, [ebp - 0x238]
call dword [sym.imp.mfc100.dll_Ordinal_901]
mov edi, dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
xor ebx, ebx
cmp dword [ebp - 0x190], 0x10
jb 0x41c060
mov ecx, dword [ebp - 0x1a4]
push ecx
call edi
add esp, 4
cmp dword [ebp - 0x13c], 0x10
mov esi, 0xf
mov dword [ebp - 0x190], esi
mov dword [ebp - 0x194], ebx
mov byte [ebp - 0x1a4], bl
jb 0x41c08c
mov edx, dword [ebp - 0x150]
push edx
call edi
add esp, 4
cmp dword [ebp - 0x158], 0x10
mov dword [ebp - 0x13c], esi
mov dword [ebp - 0x140], ebx
mov byte [ebp - 0x150], bl
jb 0x41c0b3
mov eax, dword [ebp - 0x16c]
push eax
call edi
add esp, 4
cmp dword [ebp - 0x174], 0x10
mov dword [ebp - 0x158], esi
mov dword [ebp - 0x15c], ebx
mov byte [ebp - 0x16c], bl
jb 0x41c0da
mov ecx, dword [ebp - 0x188]
push ecx
call edi
add esp, 4
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1e4], 0x10
mov dword [ebp - 0x174], esi
mov dword [ebp - 0x178], ebx
mov byte [ebp - 0x188], bl
jb 0x41c105
mov edx, dword [ebp - 0x1f8]
push edx
call edi
add esp, 4
mov eax, dword [ebp - 0x23c]
inc eax
xor ebx, ebx
mov dword [ebp - 0x23c], eax
cmp eax, dword [ebp - 0x244]
jle 0x41bb63
mov esi, 0x10
cmp dword [ebp - 0x120], esi
jb 0x41c13d
mov ecx, dword [ebp - 0x134]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x120], 0xf
mov dword [ebp - 0x124], ebx
mov byte [ebp - 0x134], bl
cmp dword [ebp - 0x1ac], esi
jb 0x41c16b
mov edx, dword [ebp - 0x1c0]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov eax, 1
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.00449013
mov esp, ebp
pop ebp
ret 8
lea ecx, [ebp - 0x238]
call dword [sym.imp.mfc100.dll_Ordinal_901]
mov edi, 0x10
cmp dword [ebp - 0x190], edi
jb 0x41c1b7
mov eax, dword [ebp - 0x1a4]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x190], esi
mov dword [ebp - 0x194], ebx
mov byte [ebp - 0x1a4], bl
cmp dword [ebp - 0x13c], edi
jb 0x41c1e1
mov ecx, dword [ebp - 0x150]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x13c], esi
mov dword [ebp - 0x140], ebx
mov byte [ebp - 0x150], bl
cmp dword [ebp - 0x158], edi
jb 0x41c20b
mov edx, dword [ebp - 0x16c]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x158], esi
mov dword [ebp - 0x15c], ebx
mov byte [ebp - 0x16c], bl
cmp dword [ebp - 0x174], edi
jb 0x41c235
mov eax, dword [ebp - 0x188]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x174], esi
mov dword [ebp - 0x178], ebx
mov byte [ebp - 0x188], bl
cmp dword [ebp - 0x1e4], edi
jb 0x41c25f
mov ecx, dword [ebp - 0x1f8]
push ecx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x1e4], esi
mov dword [ebp - 0x1e8], ebx
mov byte [ebp - 0x1f8], bl
cmp dword [ebp - 0x120], edi
jb 0x41c289
mov edx, dword [ebp - 0x134]
push edx
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov dword [ebp - 0x120], esi
mov dword [ebp - 0x124], ebx
mov byte [ebp - 0x134], bl
cmp dword [ebp - 0x1ac], edi
jb 0x41b994
mov eax, dword [ebp - 0x1c0]
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
xor eax, eax
jmp 0x41c170