Function at 0x101dfcb0
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x50
mov eax, dword [0x106499c8]
xor eax, esp
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x58]
mov eax, dword [esp + 0x5c]
push ebx
mov ebx, dword [esp + 0x58]
push ebp
mov ebp, dword [esp + 0x68]
mov dword [esp + 0x10], eax
lea eax, [ecx + 8]
push esi
mov esi, dword [esp + 0x78]
mov dword [esp + 0xc], eax
lea eax, [esp + 0xc]
push edi
push eax
mov dword [esp + 0x18], ecx
call fcn.101dc300
mov edi, eax
mov eax, edx
add esp, 4
mov dword [esp + 0x1c], eax
test eax, eax
ja 0x101dfeeb
jb 0x101dfd10
cmp edi, 0x7fffffff
ja 0x101dfeeb
mov ecx, edi
add ecx, 0x38
adc eax, 0
test eax, eax
ja 0x101dfeeb
jb 0x101dfd2e
cmp ecx, 0x7fffffff
ja 0x101dfeeb
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
cmp edx, ecx
jb 0x101dfdd3
mov eax, ebp
sub eax, ecx
add eax, edx
lea edx, [edi + 0x38]
mov dword [esp + 0x14], eax
cmp edx, eax
jg 0x101dfdd3
cmp edi, ebp
jl 0x101dfd69
mov eax, dword [esp + 0x74]
add eax, ebp
cmp edx, eax
jg 0x101dfd69
mov eax, edi
sub eax, ebp
add eax, ecx
jmp 0x101dfdc7
push 0
push edi
push ebx
call dword [sym.imp.MSVCR110.dll_fseek]
add esp, 0xc
test eax, eax
je 0x101dfd87
call dword [sym.imp.MSVCR110.dll__errno]
push dword [eax]
jmp 0x101dfeed
push ebx
call dword [sym.imp.MSVCR110.dll_clearerr]
push ebx
push 0x38
lea eax, [esp + 0x30]
push 1
push eax
call dword [sym.imp.MSVCR110.dll_fread]
add esp, 0x14
cmp eax, 0x38
jae 0x101dfdb5
call dword [sym.imp.MSVCR110.dll__errno]
push dword [eax]
push 5
jmp 0x101dfeef
push ebx
call dword [sym.imp.MSVCR110.dll_ferror]
add esp, 4
test eax, eax
jne 0x101dfda6
lea eax, [esp + 0x24]
mov dword [esp + 0x10], eax
cmp dword [eax], 0x6064b50
je 0x101dfddc
push 0
push 0x15
jmp 0x101dfeef
add eax, 4
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push eax
call fcn.101dc300
add esp, 4
and dword [esp + 0x78], 4
mov ebx, eax
mov ecx, edx
je 0x101dfe14
mov eax, dword [esp + 0x14]
add ebx, edi
adc ecx, dword [esp + 0x1c]
add ebx, 0xc
cdq
adc ecx, 0
cmp ebx, eax
jne 0x101dfdd3
cmp ecx, edx
jne 0x101dfdd3
add dword [esp + 0x10], 0xc
lea eax, [esp + 0x10]
push eax
call fcn.101dc300
mov ebp, eax
lea eax, [esp + 0x14]
mov ebx, edx
push eax
mov dword [esp + 0x28], ebp
mov dword [esp + 0x20], ebx
call fcn.101dc300
add esp, 8
cmp ebp, eax
jne 0x101dfee5
cmp ebx, edx
jne 0x101dfee5
lea eax, [esp + 0x10]
push eax
call fcn.101dc300
mov ebx, eax
lea eax, [esp + 0x14]
push eax
mov dword [esp + 0x1c], edx
call fcn.101dc300
mov ecx, dword [esp + 0x1c]
add esp, 8
mov ebp, eax
test ecx, ecx
ja 0x101dfeeb
jb 0x101dfe7d
cmp ebx, 0x7fffffff
ja 0x101dfeeb
test edx, edx
ja 0x101dfeeb
jb 0x101dfe8b
cmp ebp, 0x7fffffff
ja 0x101dfeeb
mov eax, ebp
add eax, ebx
adc edx, ecx
test edx, edx
ja 0x101dfeeb
jb 0x101dfe9e
cmp eax, 0x7fffffff
ja 0x101dfeeb
cmp dword [esp + 0x78], 0
je 0x101dfeb7
cmp eax, edi
jne 0x101dfdd3
cmp edx, dword [esp + 0x1c]
jne 0x101dfdd3
push esi
push dword [esp + 0x1c]
push dword [esp + 0x28]
call fcn.101dabb0
add esp, 0xc
test eax, eax
je 0x101dfef8
pop edi
pop esi
mov dword [eax + 0x1c], ebp
pop ebp
mov dword [eax + 0x18], ebx
pop ebx
mov ecx, dword [esp + 0x4c]
xor ecx, esp
call fcn.10311bec
add esp, 0x50
ret
push 0
push 1
jmp 0x101dfeef
push 0x1b
push 4
push esi
call fcn.101dcb20
add esp, 0xc
mov ecx, dword [esp + 0x5c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
xor eax, eax
call fcn.10311bec
add esp, 0x50
ret