Function at 0x10076aa0
Capabilities:
Inspect section memory permissions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x8c
push ebx
push esi
mov esi, ecx
push edi
mov edi, dword [esi + 0x7f4]
mov dword [esp + 0x14], edi
mov dword [edi + 0x12fa8], 0
mov eax, dword [esi + 0x7f4]
test byte [eax + 0x12fbc], 0x80
je 0x10076cd3
test dword [esi + 0x7f8], 0x10000
je 0x10076ca6
mov eax, dword [esi + 0x830]
xor ecx, ecx
mov edx, dword [eax + 0x260]
test dl, 1
je 0x10076b42
fld dword [esi + 0x5ec]
mov ecx, 1
fadd st(0), st(0)
fstp dword [edi + 0x131f0]
fld dword [esi + 0x5f0]
fadd st(0), st(0)
fstp dword [edi + 0x131f4]
fld dword [esi + 0x5f4]
fstp dword [edi + 0x131f8]
fld dword [esi + 0x5f8]
fsub dword [esi + 0x5ec]
fsub dword [esi + 0x5f0]
fstp dword [edi + 0x131fc]
test dl, 2
je 0x10076b86
fld dword [esi + 0x5fc]
lea eax, [ecx + 0x131f]
fadd st(0), st(0)
shl eax, 4
add eax, edi
inc ecx
fstp dword [eax]
fld dword [esi + 0x600]
fadd st(0), st(0)
fstp dword [eax + 4]
fld dword [esi + 0x604]
fstp dword [eax + 8]
fld dword [esi + 0x608]
fsub dword [esi + 0x5fc]
fsub dword [esi + 0x600]
fstp dword [eax + 0xc]
test dl, 4
je 0x10076bca
fld dword [esi + 0x60c]
lea eax, [ecx + 0x131f]
fadd st(0), st(0)
shl eax, 4
add eax, edi
inc ecx
fstp dword [eax]
fld dword [esi + 0x610]
fadd st(0), st(0)
fstp dword [eax + 4]
fld dword [esi + 0x614]
fstp dword [eax + 8]
fld dword [esi + 0x618]
fsub dword [esi + 0x60c]
fsub dword [esi + 0x610]
fstp dword [eax + 0xc]
test dl, 8
je 0x10076c0e
fld dword [esi + 0x61c]
lea eax, [ecx + 0x131f]
fadd st(0), st(0)
shl eax, 4
add eax, edi
inc ecx
fstp dword [eax]
fld dword [esi + 0x620]
fadd st(0), st(0)
fstp dword [eax + 4]
fld dword [esi + 0x624]
fstp dword [eax + 8]
fld dword [esi + 0x628]
fsub dword [esi + 0x61c]
fsub dword [esi + 0x620]
fstp dword [eax + 0xc]
test dl, 0x10
je 0x10076c52
fld dword [esi + 0x62c]
lea eax, [ecx + 0x131f]
fadd st(0), st(0)
shl eax, 4
add eax, edi
inc ecx
fstp dword [eax]
fld dword [esi + 0x630]
fadd st(0), st(0)
fstp dword [eax + 4]
fld dword [esi + 0x634]
fstp dword [eax + 8]
fld dword [esi + 0x638]
fsub dword [esi + 0x62c]
fsub dword [esi + 0x630]
fstp dword [eax + 0xc]
test dl, 0x20
je 0x10076c96
fld dword [esi + 0x63c]
lea eax, [ecx + 0x131f]
fadd st(0), st(0)
shl eax, 4
add eax, edi
inc ecx
fstp dword [eax]
fld dword [esi + 0x640]
fadd st(0), st(0)
fstp dword [eax + 4]
fld dword [esi + 0x644]
fstp dword [eax + 8]
fld dword [esi + 0x648]
fsub dword [esi + 0x63c]
fsub dword [esi + 0x640]
fstp dword [eax + 0xc]
mov dword [edi + 0x13260], ecx
and dword [esi + 0x7f8], 0xfffeffff
mov eax, dword [edi + 0x12fc4]
test al, 0x40
jne 0x10076cba
or dword [edi + 0x12fa8], 0x80000000
test al, al
js 0x100771e0
or dword [edi + 0x12fa8], 0x100000
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, edi
call fcn.1005f5e0
test dword [esi + 0x7f8], 0x40000
je 0x10076d4a
and dword [esi + 0x250], 0xfffe7fff
mov ebx, dword [esi + 0x7fc]
mov dword [edi + 0x11b58], 0
test ebx, ebx
je 0x10076d4a
mov eax, dword [ebx + 0xc]
sub eax, 3
neg eax
sbb eax, eax
and eax, 0x8000
add eax, 0x8000
or dword [esi + 0x250], eax
test byte [ebx + 0x94], 0x10
je 0x10076d2e
mov ecx, ebx
call fcn.1005eee0
mov eax, dword [edi + 0x11b58]
mov dword [ebx + 0xcc], eax
lea eax, [ebx + 0x74]
mov dword [edi + 0x11b58], eax
mov ebx, dword [ebx + 8]
test ebx, ebx
jne 0x10076d04
mov ecx, dword [esi + 0x7f8]
test ecx, 0x80000
je 0x10076e10
mov eax, dword [esi + 0x830]
mov eax, dword [eax + 0x25c]
mov dword [edi + 0x13258], eax
mov dword [edi + 0x1325c], 0
test eax, eax
je 0x10076dea
cmp eax, 0xff
je 0x10076dea
mov edx, 1
cmp eax, 0x100
je 0x10076d92
lea edx, [eax + 1]
mov dword [edi + 0x13258], edx
mov ebx, edx
mov eax, dword [edi + 0x12fb8]
mov ecx, dword [edi + 0x12fbc]
shr eax, 1
and eax, 7
sub eax, 2
test ecx, 0x2000
jne 0x10076db9
lea ebx, [edx - 1]
cmp eax, ebx
jl 0x100771e7
lea eax, [edx - 1]
mov dword [edi + 0x1325c], eax
test ecx, 0x800000
je 0x10076e00
and ecx, 0xff7ffbff
mov dword [edi + 0x12fbc], ecx
or dword [esi + 0x7f8], 0x4000
jmp 0x10076e00
test dword [edi + 0x12fbc], 0x800000
jne 0x10076e00
or dword [esi + 0x7f8], 0x400
and dword [esi + 0x7f8], 0xfff7ffff
mov ecx, dword [esi + 0x7f8]
mov eax, dword [esi + 0x830]
cmp dword [eax + 0x25c], 0xff
jne 0x10076e5c
cmp dword [edi + 0x13054], 0
je 0x10076e32
or dword [edi + 0x12fa8], 0x40
cmp dword [edi + 0x1305c], 0
mov eax, dword [edi + 0x12fa8]
je 0x10076e4c
or eax, 0x80
mov dword [edi + 0x12fa8], eax
mov dword [edi + 0x13258], 0
mov ecx, dword [esi + 0x7f8]
test ecx, 0x80301
je 0x10076e71
mov ecx, esi
call fcn.100768d0
mov ecx, dword [esi + 0x7f8]
test ecx, 0x200000
je 0x10076ec3
mov edx, dword [edi + 0x12fbc]
test edx, 0x80000008
jne 0x10076e9e
mov eax, dword [esi + 0x830]
cmp dword [eax + 0x274], 0
jne 0x10076e9e
test edx, 0x60000000
je 0x10076ec3
push edi
lea edx, [edi + 0x280]
lea ecx, [edi + 0x8280]
call fcn.10048c20
add esp, 4
and dword [esi + 0x7f8], 0xffdfffff
mov ecx, dword [esi + 0x7f8]
test ecx, 0x400
je 0x10076f11
mov eax, dword [edi + 0x12fbc]
test eax, eax
jns 0x10076f11
and eax, 0xff7fffff
cmp dword [edi + 0x13258], 0
mov dword [edi + 0x12fbc], eax
jne 0x10076f01
test eax, 0x2000000
jne 0x10076f01
mov ecx, edi
call fcn.10076620
and dword [esi + 0x7f8], 0xfffffbff
or dword [esi + 0x7f8], 0x4000
mov ecx, dword [esi + 0x7f8]
test ecx, 0x2000000
je 0x10076f6e
mov edx, dword [edi + 0x12fbc]
mov eax, edx
and eax, 0x80800000
cmp eax, 0x80000000
je 0x10076f35
test edx, 0x40000000
je 0x10076f6e
lea edx, [edi + 0xc280]
lea ecx, [edi + 0x8280]
call fcn.100484d0
and dword [esi + 0x7f8], 0xfdffffff
mov ecx, dword [edi + 0x11a84]
mov eax, dword [edi + 0x11a80]
mov dword [edi + 0x11280], eax
mov dword [edi + 0x11284], ecx
mov ecx, dword [esi + 0x7f8]
test ecx, 0x10000
je 0x100770ed
test ecx, 0x20000000
je 0x10076fd3
lea ecx, [esi + 0x56c]
lea edx, [esp + 0x58]
call fcn.100484d0
test eax, eax
je 0x10076f9c
mov ecx, edx
call fcn.10076890
lea edx, [esp + 0x18]
mov ecx, edi
call fcn.100484d0
test eax, eax
je 0x10076fb2
mov ecx, edx
call fcn.10076890
lea eax, [esp + 0x18]
push eax
lea ecx, [esi + 0x5ac]
lea edx, [esp + 0x5c]
call fcn.10048c20
add esp, 4
and dword [esi + 0x7f8], 0xdfffffff
mov eax, dword [esi + 0x830]
lea edx, [edi + 0x131f8]
mov dword [esp + 0x10], edx
lea ecx, [esi + 0x5f4]
mov edi, dword [esp + 0x10]
mov dword [esp + 0xc], 0
mov ebx, dword [eax + 0x260]
mov eax, 1
lea edx, [eax + 5]
test ebx, eax
je 0x100770c1
fld dword [esi + 0x5b0]
fmul dword [ecx - 4]
fld dword [ecx - 8]
fmul dword [esi + 0x5ac]
inc dword [esp + 0xc]
faddp st(1)
fld dword [esi + 0x5b4]
fmul dword [ecx]
faddp st(1)
fld dword [esi + 0x5b8]
fmul dword [ecx + 4]
faddp st(1)
fstp dword [edi - 8]
fld dword [esi + 0x5c0]
fmul dword [ecx - 4]
fld dword [esi + 0x5bc]
fmul dword [ecx - 8]
faddp st(1)
fld dword [esi + 0x5c4]
fmul dword [ecx]
faddp st(1)
fld dword [esi + 0x5c8]
fmul dword [ecx + 4]
faddp st(1)
fstp dword [edi - 4]
fld dword [esi + 0x5d0]
fmul dword [ecx - 4]
fld dword [esi + 0x5cc]
fmul dword [ecx - 8]
faddp st(1)
fld dword [esi + 0x5d4]
fmul dword [ecx]
faddp st(1)
fld dword [esi + 0x5d8]
fmul dword [ecx + 4]
faddp st(1)
fstp dword [edi]
fld dword [esi + 0x5e0]
fmul dword [ecx - 4]
fld dword [esi + 0x5dc]
fmul dword [ecx - 8]
faddp st(1)
fld dword [esi + 0x5e4]
fmul dword [ecx]
faddp st(1)
fld dword [esi + 0x5e8]
fmul dword [ecx + 4]
faddp st(1)
fstp dword [edi + 4]
add edi, 0x10
add ecx, 0x10
rol eax, 1
sub edx, 1
jne 0x10077003
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
mov dword [edi + 0x13260], eax
and dword [esi + 0x7f8], 0xfffeffff
mov ecx, dword [esi + 0x7f8]
test ecx, 0x4c000
je 0x10077106
mov ecx, esi
call fcn.10056b00
or dword [edi + 0x12fbc], 0x40000
test byte [edi + 0x12fb8], 0xd0
mov eax, dword [edi + 0x11b78]
mov dword [edi + 0x11aa8], eax
mov eax, dword [edi + 0x11b7c]
mov dword [edi + 0x11b54], eax
jne 0x1007713a
cmp dword [edi + 0x12fd0], 0
jne 0x1007713a
or dword [edi + 0x12fa8], 0x40000000
cmp dword [edi + 0x12fd4], 0
jne 0x1007714d
or dword [edi + 0x12fa8], 0x10000000
and dword [esi + 0x7f8], 0xfffff7ff
test dword [edi + 0x13250], 0xff0000
jne 0x1007716d
and dword [edi + 0x12fbc], 0x9fffffff
mov ecx, dword [edi + 0x12fbc]
mov eax, ecx
and eax, 0x80800000
cmp eax, 0x80000000
jne 0x100771c8
mov ebx, dword [esi + 0x250]
mov edx, ecx
test ebx, 0x8000
je 0x100771b2
mov eax, dword [esi + 0x7f4]
test byte [eax + 0x12fb8], 0x10
je 0x100771b2
or edx, 0x40000000
mov dword [edi + 0x12fbc], edx
mov ebx, dword [esi + 0x250]
mov ecx, edx
test ebx, 0x10000
je 0x100771c8
or ecx, 0x20000000
mov dword [edi + 0x12fbc], ecx
test dword [edi + 0x12fa8], 0x100
je 0x100771e0
or ecx, 0x20000000
mov dword [edi + 0x12fbc], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x100a7210
lea eax, [esp + 0x10]
mov dword [esp + 0x10], 0x8876086c
push eax
call sub.msvcrt.dll__CxxThrowException
int3