Function at 0x40dce6
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xd8
mov edi, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
mov eax, dword [0x6401e4]
xor eax, ebp
mov dword [esp + 0xd0], eax
push esi
call fcn.00421d40
add esp, 4
test al, al
je 0x40df6b
mov ebx, dword [ebp + 0x10]
mov eax, ebx
and eax, 0x38200080
cmp eax, ebx
jne 0x40def0
lea ecx, [esp + 0xc8]
call fcn.00423f5c
push esi
call fcn.00421f92
add esp, 4
test al, al
je 0x40df7f
cmp byte [esi + 0xb], 0
mov eax, esi
jns 0x40dd53
mov eax, dword [esi]
sub esp, 0x1c
xor edi, edi
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], ebx
movaps xmm0, xmmword [0x5c4090]
movups xmmword [esp + 4], xmm0
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
lea ecx, [esp + 0xc4]
mov dword [ecx], edi
push eax
call fcn.00408a9a
push 2
call fcn.00483a10
add esp, 4
test al, al
je 0x40de0e
mov eax, dword [esp + 0xc4]
inc eax
cmp eax, 1
ja 0x40de0e
call fcn.00484390
lea ecx, [esp + 0x18]
push eax
push 2
push 0x1f4
push str..._.._chrome_chrome_cleaner_engines_broker_scanner_sandbox_interface.cc
call fcn.004844c0
lea eax, [esp + 0x20]
push 0xf
push str.Failed_to_open
push eax
call fcn.00401baa
add esp, 0xc
mov edi, eax
lea ebx, [esp + 0xc]
push esi
push ebx
call fcn.004219d7
add esp, 8
cmp byte [ebx + 0xb], 0
jns 0x40dde8
mov ebx, dword [esp + 0xc]
push ebx
push edi
call fcn.00484610
add esp, 8
cmp byte [esp + 0x17], 0
jns 0x40de05
push dword [esp + 0xc]
call fcn.00596316
add esp, 4
lea ecx, [esp + 0x18]
call fcn.00484570
call fcn.00428634
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x70]
mov edi, eax
cmp eax, 1
mov eax, edx
sbb eax, 0
jl 0x40df93
mov ebx, edx
mov eax, esp
push eax
push dword [esp + 0xc8]
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
je 0x40dfaa
cmp edi, dword [esp]
sbb ebx, dword [esp + 4]
jge 0x40df93
push 2
call fcn.00483a10
add esp, 4
test al, al
je 0x40e027
lea ecx, [esp + 0x18]
push 2
push 0x201
push str..._.._chrome_chrome_cleaner_engines_broker_scanner_sandbox_interface.cc
call fcn.00483ab0
lea eax, [esp + 0x20]
push 5
push 0x5c4284
push eax
call fcn.00401baa
add esp, 0xc
mov edi, eax
lea ebx, [esp + 0xc]
push esi
push ebx
call fcn.004219d7
add esp, 8
cmp byte [ebx + 0xb], 0
jns 0x40dea6
mov ebx, dword [esp + 0xc]
push ebx
push edi
call fcn.00484610
add esp, 8
push 0x13
push str._is_too_big__size:
push eax
call fcn.00401baa
add esp, 0xc
mov ecx, eax
push dword [esp + 4]
push dword [esp + 4]
call fcn.00463210
cmp byte [esp + 0x17], 0
jns 0x40dee2
push dword [esp + 0xc]
call fcn.00596316
add esp, 4
lea ecx, [esp + 0x18]
call fcn.00483e50
jmp 0x40e027
push 2
call fcn.00483a10
add esp, 4
test al, al
je 0x40df6b
mov esi, edi
lea edi, [esp + 0x18]
mov ecx, edi
push 2
push 0x1e0
push str..._.._chrome_chrome_cleaner_engines_broker_scanner_sandbox_interface.cc
call fcn.00483ab0
lea eax, [esp + 0x20]
push 0x67
push str.OpenReadOnlyFile_called_with_invalid_dwFlagsAndAttributes._dwFlagsAndAttributes_can_only_contain_0x
push eax
call fcn.00401baa
add esp, 0xc
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
mov edx, dword [eax + ecx + 4]
and edx, 0xffffffb5
or edx, 8
mov dword [eax + ecx + 4], edx
mov ecx, eax
push 0x38200080
call fcn.00463030
push 0x10
push 0x5c4247
push eax
call fcn.00401baa
add esp, 0xc
mov ecx, eax
push ebx
call fcn.00463030
mov ecx, edi
mov edi, esi
call fcn.00483e50
mov dword [edi], 0
mov ecx, edi
push 0xffffffffffffffff
call fcn.00408a9a
jmp 0x40e051
mov dword [edi], 0
mov ecx, edi
push 0xffffffffffffffff
call fcn.00408a9a
jmp 0x40e045
mov edi, dword [ebp + 8]
mov ecx, edi
lea eax, [esp + 0xc4]
push eax
call fcn.0040894a
jmp 0x40e039
push 2
call fcn.00483a10
add esp, 4
test al, al
je 0x40e027
call fcn.00484390
lea ecx, [esp + 0x18]
push eax
push 2
push 0x1fc
push str..._.._chrome_chrome_cleaner_engines_broker_scanner_sandbox_interface.cc
call fcn.004844c0
lea eax, [esp + 0x20]
push 0x1b
push str.Failed_to_get_size_of_file
push eax
call fcn.00401baa
add esp, 0xc
mov edi, eax
lea ebx, [esp + 0xc]
push esi
push ebx
call fcn.004219d7
add esp, 8
cmp byte [ebx + 0xb], 0
jns 0x40e001
mov ebx, dword [esp + 0xc]
push ebx
push edi
call fcn.00484610
add esp, 8
cmp byte [esp + 0x17], 0
jns 0x40e01e
push dword [esp + 0xc]
call fcn.00596316
add esp, 4
lea ecx, [esp + 0x18]
call fcn.00484570
mov edi, dword [ebp + 8]
mov dword [edi], 0
mov ecx, edi
push 0xffffffffffffffff
call fcn.00408a9a
lea ecx, [esp + 0xc4]
call fcn.00408ad6
lea ecx, [esp + 0xc8]
call fcn.004241aa
mov ecx, dword [esp + 0xd0]
xor ecx, ebp
call fcn.00596351
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret