Function at 0x414e20
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x10
push ebx
mov ebx, dword [esp + 0x20]
push ebp
mov ebp, dword [esp + 0x28]
push esi
mov esi, ecx
mov eax, dword [esi + 0xb388]
mov dword [ebp], eax
mov ecx, dword [esi + 0xb38c]
mov dword [ebp + 4], ecx
mov eax, dword [esi + 0xb388]
mov edx, dword [esi + 0xb180]
mov ecx, dword [esi + 0xb184]
push edi
mov edi, dword [esp + 0x28]
add eax, edi
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0xb38c]
mov dword [esp + 0x10], edx
mov edx, ebx
adc eax, edx
cmp eax, ecx
jl 0x414eaf
mov eax, dword [esp + 0x10]
jg 0x414e7d
cmp dword [esp + 0x18], eax
jbe 0x414eaf
mov edi, dword [esi + 0xb388]
mov edx, dword [esi + 0xb38c]
sub eax, edi
sbb ecx, edx
mov ebx, ecx
mov edi, eax
or eax, ebx
jne 0x414eaf
pop edi
pop esi
mov dword [ebp], 0
mov dword [ebp + 4], 0
pop ebp
mov al, 1
pop ebx
add esp, 0x10
ret 0x10
mov edx, dword [esi + 0xb390]
mov eax, dword [esi + 0xb394]
mov ecx, dword [0x46b19c]
mov dword [esp + 0x28], edx
add edx, edi
mov dword [esp + 0x2c], eax
adc eax, ebx
cmp eax, ecx
jl 0x41503c
mov eax, dword [0x46b198]
jg 0x414ee4
cmp edx, eax
jbe 0x41503c
mov ebp, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
sub eax, ebp
sbb ecx, edx
mov dword [esi + 0xb178], eax
mov eax, ecx
test eax, eax
mov dword [esi + 0xb17c], ecx
jl 0x414f78
jg 0x414f0e
mov eax, dword [esi + 0xb178]
test eax, eax
jbe 0x414f78
mov ecx, dword [esi + 0xb178]
mov edx, dword [esp + 0x24]
mov eax, dword [esi + 0x1160]
push 0
lea ebp, [esi + 0xb170]
push ebp
push ecx
push edx
push eax
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov ecx, dword [ebp]
mov edx, dword [esi + 0xb388]
mov eax, dword [esi + 0xb38c]
mov ebp, dword [esi + 0xb390]
add edx, ecx
mov ecx, dword [esi + 0xb394]
adc eax, 0
mov dword [esi + 0xb388], edx
mov edx, dword [esi + 0xb178]
mov dword [esi + 0xb38c], eax
mov eax, dword [esi + 0xb17c]
add ebp, edx
adc ecx, eax
mov dword [esi + 0xb390], ebp
mov dword [esi + 0xb394], ecx
mov ecx, esi
call fcn.00414b40
test al, al
jne 0x414f94
pop edi
pop esi
pop ebp
mov byte [0x46b147], 1
pop ebx
add esp, 0x10
ret 0x10
mov ebp, dword [esi + 0xb178]
mov edx, dword [esi + 0xb17c]
mov eax, edi
sub eax, ebp
mov ecx, ebx
sbb ecx, edx
mov dword [esp + 0x2c], ecx
js 0x4150ad
jg 0x414fbc
test eax, eax
jbe 0x4150ad
mov eax, dword [esi + 0xb178]
mov ecx, dword [esp + 0x24]
push 0
lea ebp, [esi + 0xb170]
push ebp
mov edx, edi
sub edx, eax
push edx
mov edx, dword [esi + 0x1160]
add eax, ecx
push eax
push edx
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [ebp]
mov ecx, dword [esi + 0xb388]
mov ebp, dword [esi + 0xb178]
mov edx, dword [esi + 0xb17c]
add ecx, eax
mov eax, dword [esi + 0xb38c]
adc eax, 0
sub edi, ebp
mov dword [esi + 0xb388], ecx
mov ecx, dword [esi + 0xb390]
mov dword [esi + 0xb38c], eax
mov eax, dword [esi + 0xb394]
sbb ebx, edx
add ecx, edi
adc eax, ebx
pop edi
mov dword [esi + 0xb394], eax
mov dword [esi + 0xb390], ecx
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x10
ret 0x10
mov ecx, dword [esp + 0x24]
mov edx, dword [esi + 0x1160]
push 0
lea eax, [esi + 0xb170]
push eax
push edi
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [esi + 0xb170]
mov edx, dword [esi + 0xb388]
mov ecx, dword [esi + 0xb38c]
add edx, eax
mov eax, dword [esi + 0xb390]
adc ecx, 0
add eax, edi
mov edi, dword [esi + 0xb394]
mov dword [esi + 0xb38c], ecx
mov dword [esi + 0xb388], edx
adc edi, ebx
mov dword [esi + 0xb390], eax
mov dword [esi + 0xb394], edi
mov eax, dword [ebp + 4]
mov ecx, edx
sub ecx, dword [ebp]
mov edx, dword [esi + 0xb38c]
sbb edx, eax
mov dword [ebp], ecx
mov dword [ebp + 4], edx
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x10
ret 0x10