Function at 0x4d4850
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x59c378
mov eax, dword fs:[0]
push eax
sub esp, 0x54
mov eax, dword [0x634384]
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
mov edi, ecx
mov dword [ebp - 0x3c], edi
call fcn.00495330
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov byte [ebp - 0x35], 1
mov esi, dword [edi + 0x184]
mov dword [ebp - 0x40], esi
mov dword [edi + 0x184], 0xffffffff
mov dword [ebp - 4], 0
mov eax, dword [edi + 0x48]
mov ecx, dword [eax + 4]
lea eax, [edi + 0x154]
cmp dword [eax + 0x14], 8
jb 0x4d48c0
mov eax, dword [eax]
push 1
push 0
push str.void___thiscall_spider::scanner_t::disinfect_void_
push ecx
push eax
lea eax, [edi + 0x144]
push eax
lea ecx, [ebp - 0x50]
call fcn.004cbf20
mov byte [ebp - 4], 1
lea ecx, [edi + 0x524]
lea eax, [ebp - 0x50]
push eax
lea eax, [edi + 4]
push eax
push esi
movzx eax, byte [edi + 0x1f8]
push eax
lea eax, [edi + 0x50c]
push eax
lea eax, [edi + 0xe4]
push eax
call fcn.004c8710
mov dword [edi + 0x184], eax
mov byte [ebp - 0x35], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x50]
call fcn.004b4af0
mov dword [ebp - 4], 0xffffffff
jmp 0x4d4956
mov ecx, dword [edi + 0x184]
test ecx, 0xe0f
je 0x4d4983
cmp ecx, 0xffffffff
je 0x4d4983
cmp ecx, 0xfffffffe
je 0x4d4983
test cl, 8
jne 0x4d4a8d
test ecx, 0xe00
jne 0x4d4a8d
mov eax, ecx
and eax, 0x180000
cmp eax, 0x180000
jne 0x4d499f
cmp ecx, 0xffffffff
je 0x4d499f
cmp ecx, 0xfffffffe
jne 0x4d4a8d
mov dword [ebp - 4], 3
lea eax, [ebp - 0x24]
push eax
call fcn.0044c250
add esp, 4
mov byte [ebp - 4], 4
push 0xf01ff
lea ecx, [ebp - 0x50]
push ecx
mov ecx, eax
call fcn.0044c580
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x24]
call fcn.0044c150
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x4d49e2
cmp eax, 0xffffffff
je 0x4d49e2
mov al, 1
jmp 0x4d49e4
xor al, al
test al, al
je 0x4d4a48
push 0
push 1
push str.void___thiscall_spider::scanner_t::disinfect_void_
mov eax, dword [edi + 0x48]
push dword [eax + 4]
push str.LocalSystem
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x24]
call fcn.004cbf20
mov byte [ebp - 4], 7
lea ecx, [edi + 0x524]
lea eax, [ebp - 0x24]
push eax
lea eax, [edi + 4]
push eax
push esi
movzx eax, byte [edi + 0x1f8]
push eax
lea eax, [edi + 0x50c]
push eax
lea eax, [edi + 0xe4]
push eax
call fcn.004c8710
mov dword [edi + 0x184], eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x24]
call fcn.004b4af0
mov byte [ebp - 0x35], 0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x50]
call fcn.004473c0
mov dword [ebp - 4], 0xffffffff
jmp 0x4d4a8d
mov eax, dword [edi + 0x184]
cmp eax, 0xffffffff
je 0x4d4aa8
cmp eax, 0xfffffffe
je 0x4d4aa8
and eax, 0xfeffffff
mov dword [edi + 0x184], eax
mov ecx, eax
and ecx, 0xe0f
je 0x4d4ac0
cmp eax, 0xffffffff
je 0x4d4ac0
cmp eax, 0xfffffffe
je 0x4d4ac0
mov dl, 1
jmp 0x4d4ac2
xor dl, dl
mov byte [edi + 0x1a8], dl
cmp eax, 0xffffffff
je 0x4d4add
cmp eax, 0xfffffffe
je 0x4d4add
test eax, 0xd067e1e0
jne 0x4d4add
xor dl, dl
jmp 0x4d4adf
mov dl, 1
mov byte [edi + 0x1a9], dl
test ecx, ecx
je 0x4d4b06
cmp eax, 0xffffffff
je 0x4d4b06
cmp eax, 0xfffffffe
je 0x4d4b06
test al, 8
jne 0x4d4afe
test eax, 0xe00
je 0x4d4b06
mov ecx, dword [edi + 0x184]
jmp 0x4d4b30
mov ecx, dword [edi + 0x184]
mov eax, ecx
and eax, 0x180000
cmp eax, 0x180000
jne 0x4d4cd8
cmp ecx, 0xffffffff
je 0x4d4cd8
cmp ecx, 0xfffffffe
je 0x4d4cd8
mov dword [edi + 0x1fc], 1
test cl, 8
je 0x4d4b49
cmp ecx, 0xffffffff
je 0x4d4b49
cmp ecx, 0xfffffffe
jne 0x4d4b6d
mov eax, ecx
and eax, 0x180000
cmp eax, 0x180000
jne 0x4d4cd8
cmp ecx, 0xffffffff
je 0x4d4cd8
cmp ecx, 0xfffffffe
je 0x4d4cd8
mov eax, dword [edi + 0xf4]
lea ebx, [eax + eax]
lea eax, [ebp - 0x36]
push eax
lea eax, [ebx + 0x28]
push eax
lea ecx, [ebp - 0x4c]
call fcn.004a9360
mov dword [ebp - 4], 9
mov eax, 0x28
mov esi, dword [ebp - 0x4c]
mov word [esi], ax
mov dword [esi + 4], ebx
movzx eax, word [edi + 0xdc]
mov word [esi + 8], ax
mov eax, 1
mov word [esi + 0xa], ax
lea ecx, [edi + 0x144]
call fcn.0044c070
mov dword [esi + 0xc], eax
mov eax, 0x28
mov word [esi + 0x12], ax
mov word [esi + 0x10], bx
movzx eax, word [edi + 0x258]
add ax, ax
mov word [esi + 0x14], ax
mov dword [esi + 0x20], 0
mov dword [esi + 0x24], 0
lea eax, [edi + 0x25c]
cmp dword [eax + 0x14], 8
jb 0x4d4bf4
mov eax, dword [eax]
push eax
push 4
lea eax, [esi + 0x16]
push eax
call fcn.0055c6d7
add esp, 0xc
lea eax, [edi + 0xe4]
cmp dword [eax + 0x14], 8
jb 0x4d4c11
mov eax, dword [eax]
push ebx
push eax
lea eax, [esi + 0x28]
push eax
call fcn.005514d0
add esp, 0xc
mov ebx, dword [edi + 0x48]
mov eax, dword [ebx + 0x70]
lea ecx, [ebx + 0x70]
mov eax, dword [eax + 4]
call eax
test al, al
je 0x4d4cbf
push 0
lea eax, [ebp - 0x40]
push eax
push 0
push 0
movzx eax, word [esi]
add eax, dword [esi + 4]
push eax
push esi
push 0x8a09c
lea ecx, [ebx + 0x70]
call fcn.0044c9c0
test eax, eax
jne 0x4d4cc9
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
cmp eax, 2
je 0x4d4cc9
call esi
push eax
push 1
lea ecx, [ebp - 0x34]
call fcn.00447530
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x34]
call fcn.00447590
push eax
push 1
push 0x1001
push 3
push 0x6428b4
call fcn.00440860
add esp, 0x14
call fcn.004c9e00
mov esi, eax
lea ecx, [ebp - 0x34]
call fcn.00447590
push eax
push str.Unable_to_send_scan_result_by_name_to_SpIDer_Guard___S_
push esi
call fcn.004e34f0
add esp, 0xc
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x2c]
call fcn.004100d0
mov dword [edi + 0x1fc], 2
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call fcn.0043e2b0
cmp dword [edi + 0x1fc], 2
jne 0x4d4cf0
or dword [edi + 0x184], 0x1000000
jmp 0x4d4cf0
call fcn.00495330
sub eax, dword [ebp - 0x58]
sbb edx, dword [ebp - 0x54]
add dword [edi + 0x1a0], eax
adc dword [edi + 0x1a4], edx
mov ecx, edi
call fcn.004d6570
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.005395e6
mov esp, ebp
pop ebp
ret