Function at 0x1000f685
Capabilities:
Read file via mapping

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
cmp dword [ebp + 0x1c], 0
jle 0x1000fc32
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
cmp dword [ebx], 0
je 0x1000f79d
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 4]
mov eax, dword [ebx]
xor ecx, ecx
cmp dword [ebp + 0x18], edx
jl 0x1000f6ed
jg 0x1000f6ec
cmp dword [ebp + 0x14], eax
jb 0x1000f6ed
inc ecx
mov eax, ecx
test eax, eax
je 0x1000f79d
fild qword [ebp + 0x14]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
fild dword [ebp + 0x1c]
fstp qword [ebp - 0x20]
fadd qword [ebp - 0x20]
fstp qword [ebp - 0x28]
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x2c
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x2c]
fild qword [ebx]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
mov ebx, dword [ebp - 0x30]
fild dword [ebx]
fstp qword [ebp - 0x40]
fadd qword [ebp - 0x40]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x28]
fsub qword [ebp - 0x48]
fcomp qword [0x1009b6d0]
fnstsw ax
test ah, 0x41
je 0x1000f79d
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
fild dword [ebx]
fstp qword [ebp - 0x1c]
fld qword [ebp - 0x1c]
fild qword [ebp + 0x14]
fstp qword [ebp - 0x24]
fadd qword [ebp - 0x24]
fstp qword [ebp - 0x2c]
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x30], ebx
fld qword [ebp - 0x2c]
mov ebx, dword [ebp - 0x30]
fild qword [ebx]
fstp qword [ebp - 0x38]
fsub qword [ebp - 0x38]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
call fcn.10001e7f
jmp 0x1000fc3c
cmp dword [ebp + 0x20], 0
je 0x1000f7ed
fild qword [ebp + 0x14]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
fild dword [ebp + 0x1c]
fstp qword [ebp - 0x20]
fadd qword [ebp - 0x20]
fstp qword [ebp - 0x28]
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
fild qword [ebx]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x28]
fsub qword [ebp - 0x34]
fcomp qword [0x1009b6d0]
fnstsw ax
test ah, 0x41
jne 0x1000f7ed
mov eax, 1
jmp 0x1000f7f2
mov eax, 0
test eax, eax
je 0x1000f838
fild qword [ebp + 0x14]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
fild dword [ebp + 0x1c]
fstp qword [ebp - 0x20]
fadd qword [ebp - 0x20]
fstp qword [ebp - 0x28]
mov dword [ebp - 0x2c], 0
push 0
push dword [ebp - 0x2c]
fld qword [ebp - 0x28]
call fcn.10001e7f
push edx
push eax
push dword [ebp + 8]
call fcn.1000fc42
push dword [ebp + 0x10]
push dword [ebp + 0xc]
call fcn.10009be9
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
cmp dword [ebx], 0
je 0x1000f891
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x30
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x14]
fild dword [ebx]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
mov ebx, dword [ebp - 0x18]
fild dword [ebx]
fstp qword [ebp - 0x28]
fsub qword [ebp - 0x28]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
call fcn.10001e7f
push eax
xor eax, eax
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
nop
nop
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x34
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
fild dword [ebx]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
fdiv qword [0x1009b370]
fstp qword [ebp - 0x28]
fild qword [ebp + 0x14]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
fsub qword [ebp - 0x28]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
call fcn.10001e7f
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x14], ebx
xor eax, eax
mov ebx, dword [ebp - 0x14]
cmp dword [ebx + 4], 0
jg 0x1000f8fb
jl 0x1000f8fa
mov ebx, dword [ebp - 0x14]
cmp dword [ebx], 0
jae 0x1000f8fb
inc eax
test eax, eax
je 0x1000f91e
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x34
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
fild dword [ebx]
fstp qword [ebp - 0x1c]
fld qword [ebp - 0x1c]
fild dword [ebp + 0x1c]
fstp qword [ebp - 0x24]
fadd qword [ebp - 0x24]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
call fcn.10001e7f
mov dword [ebp - 4], eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x14]
fild qword [ebx]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
mov ebx, dword [ebp - 0x18]
fild qword [ebx]
fstp qword [ebp - 0x28]
fsub qword [ebp - 0x28]
fstp qword [ebp - 0x30]
fild dword [ebp - 4]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
fsub qword [ebp - 0x30]
fcomp qword [0x1009b6d0]
fnstsw ax
test ah, 0x41
jne 0x1000f9d1
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x14]
fild qword [ebx]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
mov ebx, dword [ebp - 0x18]
fild qword [ebx]
fstp qword [ebp - 0x28]
fsub qword [ebp - 0x28]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
call fcn.10001e7f
mov dword [ebp - 4], eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x14], ebx
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 8]
push eax
mov ebx, dword [ebp - 0x14]
push dword [ebx + 4]
push dword [ebx]
call fcn.100116af
push dword [ebp + 0x10]
push dword [ebp + 0xc]
call fcn.1000a2ee
test eax, eax
je 0x1000fa6b
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x1c], ebx
fild dword [ebp - 4]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fild dword [ebp - 0x10]
fstp qword [ebp - 0x2c]
fadd qword [ebp - 0x2c]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
call fcn.10001e7f
push eax
push dword [ebp - 0xc]
push dword [ebp - 8]
mov ebx, dword [ebp - 0x1c]
push dword [ebx]
mov ebx, dword [ebp - 0x18]
push dword [ebx]
xor eax, eax
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
nop
nop
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
jmp 0x1000fa7f
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebx], 0
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
cmp dword [ebx], 0
jne 0x1000fade
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x2c
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebx], 0
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x30
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebx], 0
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebx], 0
mov dword [ebx + 4], 0
jmp 0x1000fb3e
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x28
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x18]
fild dword [ebx]
fstp qword [ebp - 0x20]
fld qword [ebp - 0x20]
fild dword [ebp - 0x10]
fstp qword [ebp - 0x28]
fadd qword [ebp - 0x28]
fstp qword [ebp - 0x30]
fld qword [ebp - 0x30]
call fcn.10001e7f
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x2c
mov dword [ebp - 0x14], ebx
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x30
mov dword [ebp - 0x14], ebx
mov eax, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x14]
mov dword [ebx], eax
push dword [ebp + 0x10]
push dword [ebp + 0xc]
call fcn.1000a078
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
cmp dword [ebx], 0
je 0x1000fc32
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 4]
mov eax, dword [ebx]
xor ecx, ecx
cmp dword [ebp + 0x18], edx
jl 0x1000fb82
jg 0x1000fb81
cmp dword [ebp + 0x14], eax
jb 0x1000fb82
inc ecx
mov eax, ecx
test eax, eax
je 0x1000fc32
fild qword [ebp + 0x14]
fstp qword [ebp - 0x18]
fld qword [ebp - 0x18]
fild dword [ebp + 0x1c]
fstp qword [ebp - 0x20]
fadd qword [ebp - 0x20]
fstp qword [ebp - 0x28]
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x2c
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x2c]
fild qword [ebx]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
mov ebx, dword [ebp - 0x30]
fild dword [ebx]
fstp qword [ebp - 0x40]
fadd qword [ebp - 0x40]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x28]
fsub qword [ebp - 0x48]
fcomp qword [0x1009b6d0]
fnstsw ax
test ah, 0x41
je 0x1000fc32
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x14]
fild dword [ebx]
fstp qword [ebp - 0x1c]
fld qword [ebp - 0x1c]
fild qword [ebp + 0x14]
fstp qword [ebp - 0x24]
fadd qword [ebp - 0x24]
fstp qword [ebp - 0x2c]
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx]
add ebx, 0x20
mov dword [ebp - 0x30], ebx
fld qword [ebp - 0x2c]
mov ebx, dword [ebp - 0x30]
fild qword [ebx]
fstp qword [ebp - 0x38]
fsub qword [ebp - 0x38]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
call fcn.10001e7f
jmp 0x1000fc3c
mov eax, 0
jmp 0x1000fc3c
mov esp, ebp
pop ebp
ret 0x1c