Function at 0x4287a0
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x370
push ebx
push edi
xor eax, eax
mov ecx, 0x51
lea edi, [esp + 0x28]
rep stosd dword es:[edi], eax
lea eax, [esp + 0x28]
push eax
push 0xc0000003
call fcn.00439e70
lea edx, [esp + 0x3c]
add esp, 8
mov eax, esi
sub edx, esi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x4287d5
mov ebx, dword [sym.imp.KERNEL32.dll_CreateFileA]
push 0
push 0x20
push 4
push 0
push 2
push 0x80000000
push esi
call ebx
mov edi, eax
cmp edi, 0xffffffff
jne 0x428854
push esi
call fcn.0044a140
add esp, 4
push 0
push 0x20
push 4
push 0
push 2
push 0x80000000
push esi
call ebx
mov edi, eax
cmp edi, 0xffffffff
jne 0x428854
push esi
lea ecx, [esp + 0x178]
push str.ERROR:_Failed_to_open__s_in_checkFileWithServer_n
push ecx
call fcn.00458ee7
lea edx, [esp + 0x17c]
push edx
mov dword [esp + 0x180], 1
call fcn.0043e010
add esp, 0x10
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x28]
push edx
push edi
call dword [sym.imp.KERNEL32.dll_GetFileTime]
test eax, eax
jne 0x428874
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea eax, [esp + 0x138]
push eax
lea ecx, [esp + 0x24]
push ecx
call fcn.00423c50
lea edx, [esp + 0x148]
push edx
lea eax, [esp + 0x1c]
push eax
call fcn.00423c50
lea ecx, [esp + 0x158]
push ecx
lea edx, [esp + 0x2c]
push edx
call fcn.00423c50
add esp, 0x18
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov cl, al
and cl, 1
mov byte [esp + 0x150], cl
mov dl, al
shr dl, 1
mov cl, al
and dl, 1
shr cl, 2
and cl, 1
mov byte [esp + 0x151], dl
mov dl, al
mov byte [esp + 0x152], cl
mov cl, al
shr dl, 5
shr eax, 8
and dl, 1
shr cl, 7
and al, 1
push edi
mov byte [esp + 0x157], dl
mov byte [esp + 0x158], cl
mov byte [esp + 0x159], al
mov byte [esp + 0x15a], 0
mov byte [esp + 0x15b], 0
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea edx, [esp + 0x158]
push edx
push esi
call fcn.00431b40
add esp, 8
test eax, eax
je 0x428964
push esi
lea eax, [esp + 0x178]
push str.ERROR:_sha_file_failed_on__s_in_checkFileWithServer_n
push eax
call fcn.00458ee7
lea ecx, [esp + 0x17c]
push ecx
mov dword [esp + 0x180], 1
call fcn.0043e010
add esp, 0x10
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
lea edx, [esp + 0x2c]
push edx
call fcn.00423cb0
push 0x20
push 0x4cb818
lea eax, [esp + 0x34]
push 0x144
push eax
call fcn.00431d40
mov ebx, dword [ebp + 8]
push 0x144
lea ecx, [esp + 0x40]
push ecx
push ebx
call fcn.004394c0
add esp, 0x20
test eax, eax
je 0x4289d3
push esi
push eax
lea edx, [esp + 0x17c]
push str.ERROR:_kascSend_failed_with_error__d_in_checkFileWithServer_while_processing__s_n
push edx
call fcn.00458ee7
lea eax, [esp + 0x180]
push eax
mov dword [esp + 0x184], 1
call fcn.0043e010
add esp, 0x14
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x4865b4]
push 0x20
push 0x4cb818
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x14]
push edx
push eax
push ebx
call fcn.00427790
add esp, 0x18
test eax, eax
je 0x428a2c
push esi
push eax
lea ecx, [esp + 0x17c]
push str.ERROR:_KReceive_failed_with_error__d_in_checkFileWithServer_while_processing__s_n
push ecx
call fcn.00458ee7
lea edx, [esp + 0x180]
push edx
mov dword [esp + 0x184], 1
call fcn.0043e010
add esp, 0x14
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0xc]
cmp eax, 0xc
jae 0x428a7f
push esi
push eax
lea eax, [esp + 0x17c]
push str.ERROR:_kascRecv_received_too_few_bytes___d__from_server_in_checkFileWithServer_while_processing__s_n
push eax
call fcn.00458ee7
lea ecx, [esp + 0x180]
push ecx
mov dword [esp + 0x184], 1
call fcn.0043e010
mov eax, dword [esp + 0x1c]
add esp, 0x14
test eax, eax
je 0x428b4a
push eax
call fcn.0045932f
add esp, 4
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, dword [esp + 8]
push edi
call fcn.00439e40
add esp, 4
cmp eax, 0x50000003
je 0x428ac4
push esi
push eax
lea edx, [esp + 0x17c]
push str.ERROR:_Bad_message_ID_received_from_server__0x_08X_in_checkFileWithServer._Expected_FILE_REPLY_processing__s_n
push edx
call fcn.00458ee7
lea eax, [esp + 0x180]
push eax
mov dword [esp + 0x184], 1
call fcn.0043e010
add esp, 0x14
jmp 0x428b3d
lea ecx, [edi + 4]
push ecx
call fcn.00439e40
mov ecx, eax
add esp, 4
sub ecx, 0
je 0x428b3d
sub ecx, 0x4012
je 0x428b1f
dec ecx
je 0x428b13
push esi
push eax
lea edx, [esp + 0x17c]
push str.WARNING:_Unknown_return_code_from_server___d_in_message_FILE_REPLY_in_checkFileWithServer_processing__s_n
push edx
call fcn.00458ee7
lea eax, [esp + 0x180]
push eax
mov dword [esp + 0x184], 1
call fcn.0043e010
add esp, 0x14
jmp 0x428b3d
push ebx
push esi
call fcn.00428470
add esp, 8
jmp 0x428b3d
lea ecx, [edi + 8]
push ecx
call fcn.00439e40
push 1
push 1
push 0
push eax
lea edx, [edi + 0xc]
push edx
mov eax, esi
call fcn.004239f0
add esp, 0x18
test edi, edi
je 0x428b4a
push edi
call fcn.0045932f
add esp, 4
pop edi
pop ebx
mov esp, ebp
pop ebp
ret