Function at 0x42368b
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [esi + 8]
sub esp, 0x1c
test eax, eax
jne 0x42377a
mov eax, dword [esi + 4]
push 0
lea ecx, [ebp - 0x18]
push ecx
push edx
push dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x4236be
and dword [ebp - 0x18], eax
mov dword [esi + 0x10], 7
mov dword [ebp - 8], 0x2c
mov dword [ebp - 0x10], 0x62
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
sub eax, ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 8]
imul eax, ecx
mov ecx, dword [ebp - 0x10]
imul eax, eax, 0x51
imul ecx, ecx, 0xffffffba
sub ecx, eax
mov eax, dword [ebp - 8]
imul eax, eax, 0x35
add ecx, eax
mov eax, dword [ebp - 0x10]
sub ecx, eax
mov eax, dword [ebp - 8]
lea eax, [ecx + eax - 0x20]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 8]
imul eax, eax, 0x2e
sub ecx, eax
mov eax, dword [ebp - 8]
sub ecx, eax
add ecx, dword [ebp - 8]
push 0x3f
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x10]
sub eax, 0x52
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x10]
lea eax, [ecx + eax + 0x32]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
pop ecx
sub ecx, eax
mov eax, dword [ebp - 0x10]
sub ecx, eax
add ecx, dword [ebp - 8]
push 0x25
add ecx, dword [ebp - 8]
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 8]
imul eax, ecx
mov ecx, dword [ebp - 8]
imul eax, eax, 0x3e
sub eax, ecx
mov ecx, dword [ebp - 0x10]
sub eax, ecx
add eax, dword [ebp - 8]
pop ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 8]
cdq
idiv ecx
mov ecx, dword [ebp - 8]
sub eax, ecx
mov dword [ebp - 0x10], eax
add dword [ebp - 0x10], 0xffffffb1
jmp 0x423940
mov ecx, dword [esi + 0xc]
cmp ecx, eax
jbe 0x423853
and dword [ebp - 0x18], 0
fld qword [0x477920]
mov dword [esi + 0x10], 7
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [0x477918]
fsub qword [ebp - 0x14]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fadd qword [0x477910]
fadd qword [ebp - 0x14]
fld qword [ebp - 0x14]
fld qword [0x477908]
fmul st(1), st(0)
fxch st(2)
faddp st(1)
fsub qword [ebp - 0x14]
fsub qword [0x477900]
fld qword [ebp - 0x14]
fmul qword [0x4779b0]
fsubp st(1)
fadd qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [ebp - 0x14]
faddp st(1)
fsub qword [0x4779c0]
fadd qword [ebp - 0x14]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fadd qword [ebp - 0x14]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fdiv qword [0x4778f8]
fsub qword [ebp - 0x14]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fsub qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fsubp st(1)
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fdiv qword [0x4778c8]
fmul qword [ebp - 0x14]
fsubp st(1)
fsub qword [ebp - 0x14]
fsub qword [0x477940]
fsub qword [ebp - 0x14]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fmulp st(1)
fmul qword [ebp - 0x14]
fadd qword [ebp - 0x14]
jmp 0x42393d
sub eax, ecx
mov dword [ebp - 0x18], eax
cmp eax, edx
jb 0x42385f
mov dword [ebp - 0x18], edx
cmp dword [ebp - 0x18], 0
jbe 0x423879
push dword [ebp - 0x18]
mov eax, dword [esi + 4]
add eax, ecx
push eax
push dword [ebp + 8]
call fcn.00412760
add esp, 0xc
fld qword [0x477920]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [0x477918]
fsub qword [ebp - 0x14]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fadd qword [0x477910]
fadd qword [ebp - 0x14]
fld qword [ebp - 0x14]
fld qword [0x477908]
fmul st(1), st(0)
fxch st(2)
faddp st(1)
fsub qword [ebp - 0x14]
fsub qword [0x477900]
fld qword [ebp - 0x14]
fmul qword [0x4779b0]
fsubp st(1)
fadd qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [ebp - 0x14]
faddp st(1)
fsub qword [0x4779c0]
fadd qword [ebp - 0x14]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fadd qword [ebp - 0x14]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fdiv qword [0x4778f8]
fsub qword [ebp - 0x14]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fsub qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fsubp st(1)
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fdiv qword [0x4778c8]
fmul qword [ebp - 0x14]
fsubp st(1)
fsub qword [ebp - 0x14]
fsub qword [0x477940]
fsub qword [ebp - 0x14]
fstp qword [ebp - 0x14]
fld qword [ebp - 0x14]
fmul qword [ebp - 0x14]
fmulp st(1)
fmul qword [ebp - 0x14]
fadd qword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
add dword [esi + 0xc], eax
fstp qword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
leave
ret