Function at 0x71492f8f
Capabilities:
Inspect section memory permissions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xe8
push ebx
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x1a80]
mov edx, dword [ebx + 0x1a60]
mov ecx, dword [ebx + 0x1a78]
mov dword [ebp - 0x44], eax
mov eax, dword [ebx + 0x1a70]
mov dword [ebp - 0x54], eax
mov eax, dword [ebx + 0x1a64]
mov dword [ebp - 0xa0], eax
xor eax, eax
push esi
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov eax, dword [ebx + 0x1a7c]
mov esi, 0x8000000
push edi
mov dword [ebp - 0x50], edx
mov dword [ebp + 8], ecx
mov dword [ebp - 0x74], eax
mov dword [ebp - 0xc0], ecx
test esi, edx
jne 0x71493030
mov eax, dword [ebx + 0x1cc0]
add eax, ecx
mov dword [ebp - 0x48], eax
mov eax, dword [ebx + 0x1cc4]
add eax, ecx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebx + 0x1cc8]
add eax, ecx
cmp dword [ebx + 0x1a84], 0
mov dword [ebp - 0x18], eax
je 0x71493098
mov eax, dword [ebx + 0x1cbc]
add eax, ecx
mov dword [ebp - 0xc0], eax
jmp 0x71493098
test byte [ebp - 0x50], 0x10
mov eax, dword [ebx + 0x1a2c]
mov dword [ebp - 0x48], eax
mov eax, dword [ebx + 0x1a34]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebx + 0x1a90]
mov dword [ebp - 0x18], eax
jne 0x71493071
test dword [ebx + 0x1a44], esi
jne 0x71493071
cmp dword [ebx + 0x1a84], 0
je 0x71493098
mov eax, dword [ebx + 0x688]
mov eax, dword [ebx + eax*8 + 0x1a98]
jmp 0x71493028
xor ecx, ecx
cmp dword [ebx + 0x1a84], ecx
jbe 0x71493098
mov esi, dword [ebx + 0x1a84]
lea eax, [ebx + 0x1a98]
mov edi, dword [eax]
mov dword [ebp + ecx*4 - 0xc0], edi
inc ecx
add eax, 8
cmp ecx, esi
jb 0x71493087
mov eax, dword [ebx + 0x1a44]
fldz
or dword [ebx + 0x530], 0xffffffff
and dword [ebx + 0x560], 0
and dword [ebx + 0x5b8], 0
test eax, 0x400
je 0x714931bd
lea esi, [ebx + 0x514]
fst dword [ebx + 0x524]
lea edi, [ebx + 0x504]
fst dword [ebx + 0x528]
movsd dword es:[edi], dword [esi]
fst dword [ebx + 0x52c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
test edx, 0x10000000
je 0x714931bd
mov edx, dword [ebx + 0x1a5c]
mov esi, 0x2200
mov ecx, 0x4200
test dl, 0x40
je 0x7149315e
xor edi, edi
cmp dword [ebx + 0x5f8], edi
jne 0x7149311a
or eax, esi
mov dword [ebx + 0x1a44], eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x6c], eax
cmp dword [ebx + 0x5f0], edi
jne 0x7149312e
or dword [ebx + 0x1a44], ecx
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x60], eax
cmp dword [ebx + 0x5ec], edi
jne 0x71493146
or dword [ebx + 0x1a44], 0x10200
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x64], eax
cmp dword [ebx + 0x5f4], edi
jne 0x7149315e
or dword [ebx + 0x1a44], 0x8200
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x5c], eax
test dl, dl
jns 0x714931bd
xor eax, eax
inc eax
cmp dword [ebx + 0x5f8], eax
jne 0x71493179
or dword [ebx + 0x1a44], esi
lea edx, [ebp - 0x18]
mov dword [ebp - 0x6c], edx
cmp dword [ebx + 0x5f0], eax
jne 0x7149318d
or dword [ebx + 0x1a44], ecx
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x60], ecx
cmp dword [ebx + 0x5ec], eax
jne 0x714931a5
or dword [ebx + 0x1a44], 0x10200
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x64], ecx
cmp dword [ebx + 0x5f4], eax
jne 0x714931bd
or dword [ebx + 0x1a44], 0x8200
lea eax, [ebp - 0x18]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x50]
and dword [ebp - 0x58], 0
and dword [ebp - 0x4c], 0
and eax, 0x80000
mov dword [ebp - 0x98], eax
jne 0x714931d9
or dword [ebp - 0x4c], 0xffffffff
mov eax, dword [ebx + 0x1a40]
mov dword [ebp - 0x70], eax
test eax, eax
je 0x7149431d
mov esi, dword [ebp + 8]
fld dword [esi]
push 6
fmul dword [ebx + 0x4c4]
xor eax, eax
fld dword [esi + 4]
pop ecx
fmul dword [ebx + 0x4d4]
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
faddp st(1)
fld dword [esi + 8]
fmul dword [ebx + 0x4e4]
mov eax, dword [ebx + 0x1cb4]
faddp st(1)
fadd dword [ebx + 0x4f4]
fstp dword [ebp - 0x34]
fld dword [esi]
fmul dword [ebx + 0x4c8]
fld dword [ebx + 0x4d8]
fmul dword [esi + 4]
faddp st(1)
fld dword [esi + 8]
fmul dword [ebx + 0x4e8]
faddp st(1)
fadd dword [ebx + 0x4f8]
fstp dword [ebp - 0x40]
fld dword [esi]
fmul dword [ebx + 0x4cc]
fld dword [esi + 4]
fmul dword [ebx + 0x4dc]
faddp st(1)
fld dword [ebx + 0x4ec]
fmul dword [esi + 8]
faddp st(1)
fadd dword [ebx + 0x4fc]
fstp dword [ebp - 0x38]
fld dword [ebx + 0x4e0]
fmul dword [esi + 4]
fld dword [esi]
fmul dword [ebx + 0x4d0]
faddp st(1)
fld dword [ebx + 0x4f0]
fmul dword [esi + 8]
faddp st(1)
fadd dword [ebx + 0x500]
fstp dword [ebp + 8]
test eax, eax
je 0x714933ce
fst dword [ebp - 0x14]
xor ecx, ecx
fld dword [ebp - 0x34]
fstp dword [ebp - 0x68]
fld dword [ebp - 0x40]
fstp dword [ebp - 0x10]
fld dword [ebp - 0x38]
fstp dword [ebp - 8]
fld dword [ebp + 8]
fstp dword [ebp - 4]
fst dword [ebp - 0x34]
fst dword [ebp - 0x40]
fst dword [ebp - 0x38]
fst dword [ebp + 8]
test eax, eax
jbe 0x7149338d
mov edx, eax
lea eax, [ebx + 0x224]
fld dword [esi + ecx*4 + 0xc]
inc ecx
fstp dword [ebp - 0xc]
fld dword [ebp - 0xc]
fld st(0)
fmul dword [ebp - 0x68]
fadd dword [ebp - 0x34]
fstp dword [ebp - 0x34]
fld st(0)
fmul dword [ebp - 0x10]
fadd dword [ebp - 0x40]
fstp dword [ebp - 0x40]
fld st(0)
fmul dword [ebp - 8]
fadd dword [ebp - 0x38]
fstp dword [ebp - 0x38]
fld st(0)
fmul dword [ebp - 4]
fadd dword [ebp + 8]
fstp dword [ebp + 8]
fadd dword [ebp - 0x14]
fstp dword [ebp - 0x14]
fld dword [eax - 0x20]
fmul dword [esi]
fld dword [eax - 0x10]
fmul dword [esi + 4]
faddp st(1)
fld dword [eax]
add eax, 0x40
fmul dword [esi + 8]
faddp st(1)
fadd dword [eax - 0x30]
fstp dword [ebp - 0x68]
fld dword [eax - 0x5c]
fmul dword [esi]
fld dword [eax - 0x4c]
fmul dword [esi + 4]
faddp st(1)
fld dword [eax - 0x3c]
fmul dword [esi + 8]
faddp st(1)
fadd dword [eax - 0x2c]
fstp dword [ebp - 0x10]
fld dword [eax - 0x58]
fmul dword [esi]
fld dword [eax - 0x48]
fmul dword [esi + 4]
faddp st(1)
fld dword [eax - 0x38]
fmul dword [esi + 8]
faddp st(1)
fadd dword [eax - 0x28]
fstp dword [ebp - 8]
fld dword [eax - 0x54]
fmul dword [esi]
fld dword [eax - 0x44]
fmul dword [esi + 4]
faddp st(1)
fld dword [eax - 0x34]
fmul dword [esi + 8]
faddp st(1)
fadd dword [eax - 0x24]
fstp dword [ebp - 4]
cmp ecx, edx
jb 0x714932da
fld dword [ebp - 0x14]
fld1
fsubrp st(1)
fstp dword [ebp - 0x14]
fld dword [ebp - 0x68]
fld dword [ebp - 0x14]
fld st(0)
fmulp st(2)
fld dword [ebp - 0x34]
faddp st(2)
fxch st(1)
fstp dword [ebp - 0x34]
fld dword [ebp - 0x10]
fld st(1)
fmulp st(1)
fadd dword [ebp - 0x40]
fstp dword [ebp - 0x40]
fld dword [ebp - 8]
fld st(1)
fmulp st(1)
fadd dword [ebp - 0x38]
fstp dword [ebp - 0x38]
fmul dword [ebp - 4]
fadd dword [ebp + 8]
fstp dword [ebp + 8]
cmp dword [ebp - 0x98], 0
fld dword [ebp - 0x34]
fld dword [ebp - 0x40]
fld dword [ebp - 0x38]
fld dword [ebp + 8]
jne 0x71493587
mov eax, dword [ebp - 0x34]
fld st(0)
fld st(4)
shr eax, 1
fsubp st(1)
fstp dword [ebp + 8]
mov ecx, dword [ebp + 8]
and ecx, 0xbfffffff
or ecx, eax
fld st(0)
fld st(3)
shr ecx, 1
fsubp st(1)
fstp dword [ebp - 0xc]
mov eax, dword [ebp - 0xc]
and eax, 0x9fffffff
fld st(0)
or ecx, eax
fld st(2)
mov eax, dword [ebp - 0x40]
fsubp st(1)
shr ecx, 1
and eax, 0x8fffffff
or ecx, eax
fstp dword [ebp - 4]
mov eax, dword [ebp - 0x38]
shr ecx, 1
and eax, 0x87ffffff
or ecx, eax
mov eax, dword [ebp - 4]
shr ecx, 1
and eax, 0x83ffffff
or ecx, eax
lea eax, [ebx + 0x1cb8]
mov edx, dword [eax]
shr ecx, 0x1a
test edx, edx
je 0x7149349c
mov dword [ebp + 8], 0x40
jbe 0x7149349c
mov edi, dword [eax]
lea edx, [ebx + 0x1c54]
fld dword [edx - 4]
fld st(4)
fmulp st(1)
fld dword [edx]
fld st(4)
fmulp st(1)
faddp st(1)
fld dword [edx + 4]
fld st(3)
fmulp st(1)
faddp st(1)
fld dword [edx + 8]
fld st(2)
fmulp st(1)
faddp st(1)
fcomp qword [0x7141be80]
fnstsw ax
test ah, 5
jp 0x71493493
or ecx, dword [ebp + 8]
shl dword [ebp + 8], 1
add edx, 0x10
dec edi
jne 0x71493462
test ecx, ecx
jne 0x714934b8
and dword [ebp - 0x4c], ecx
fld1
mov ecx, dword [ebp - 0x44]
fdivrp st(1)
xor eax, eax
add dword [ebp - 0x44], 2
mov word [ecx], ax
jmp 0x714935a8
test byte [ebp - 0x50], 2
je 0x71493556
fld dword [ebx + 0x63c]
fld st(1)
fmulp st(1)
fld dword [ebx + 0x634]
fld st(5)
fmulp st(1)
faddp st(1)
fstp dword [ebp + 8]
mov eax, dword [ebp + 8]
fld dword [ebx + 0x640]
shr eax, 1
fld st(1)
and eax, 0x40000000
fmulp st(1)
fld dword [ebx + 0x638]
fld st(4)
fmulp st(1)
faddp st(1)
fstp dword [ebp - 4]
fld st(0)
fsub dword [ebp + 8]
fstp dword [ebp - 0xc]
mov edx, dword [ebp - 0xc]
fld st(0)
and edx, 0x8003ffff
fsub dword [ebp - 4]
or eax, edx
shr eax, 1
fstp dword [ebp - 8]
mov edx, dword [ebp - 8]
and edx, 0x8001ffff
or eax, edx
mov edx, dword [ebp - 4]
shr eax, 1
and edx, 0x8000ffff
or eax, edx
shr eax, 0x10
or ecx, eax
test ecx, 0xfffffff0
jne 0x71493556
fld1
mov eax, dword [ebp - 0x44]
add dword [ebp - 0x44], 2
fdivrp st(1)
and dword [ebp - 0x4c], ecx
or dword [ebp - 0x58], ecx
mov word [eax], cx
jmp 0x714935a8
test dword [ebx + 0x1a44], 0x200000
jne 0x7149440a
mov eax, dword [ebp - 0x44]
fxch st(3)
and dword [ebp - 0x4c], ecx
or dword [ebp - 0x58], ecx
add dword [ebp - 0x44], 2
mov word [eax], cx
mov eax, dword [ebp - 0x54]
fstp dword [eax]
fxch st(1)
fstp dword [eax + 4]
jmp 0x7149366a
fstp dword [ebp - 0x9c]
test dword [ebp - 0x9c], 0x7fffffff
je 0x714935a2
fld dword [ebp + 8]
fld1
fdivrp st(1)
jmp 0x714935a8
fld dword [0x71494428]
test dword [ebx + 0x1a60], 0x100000
fstp dword [ebp + 8]
fld dword [ebp + 8]
fld st(0)
fmulp st(4)
fld dword [ebx + 0x5fc]
fmulp st(4)
fld dword [ebx + 0x604]
faddp st(4)
fxch st(3)
fstp dword [ebp - 0x34]
fld st(2)
fmulp st(2)
fld dword [ebx + 0x600]
fmulp st(2)
fld dword [ebx + 0x608]
faddp st(2)
fxch st(1)
fstp dword [ebp - 0x40]
fld dword [ebp - 0x34]
fld dword [ebp - 0x40]
jne 0x71493646
lea ecx, [ebx + 0x1b1c]
fld dword [ecx]
fcomp st(2)
fnstsw ax
test ah, 0x41
jne 0x71493609
fxch st(1)
fst dword [ecx]
fxch st(1)
lea ecx, [ebx + 0x1b24]
fld dword [ecx]
fcomp st(2)
fnstsw ax
test ah, 5
jp 0x71493620
fxch st(1)
fst dword [ecx]
fxch st(1)
lea ecx, [ebx + 0x1b20]
fld dword [ecx]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x71493633
fst dword [ecx]
lea ecx, [ebx + 0x1b28]
fld dword [ecx]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x71493646
fst dword [ecx]
fld dword [ebx + 0x60c]
mov eax, dword [ebp - 0x54]
fmulp st(3)
fld st(3)
fmulp st(3)
fld dword [ebx + 0x610]
faddp st(3)
fxch st(2)
fstp dword [ebp - 0x38]
fstp dword [eax]
fstp dword [eax + 4]
fld dword [ebp - 0x38]
fstp dword [eax + 8]
fstp dword [eax + 0xc]
and dword [ebx + 0x5b8], 0
test dword [ebx + 0x1a60], 0x20000000
je 0x714937ff
fld dword [ebx + 0x444]
mov eax, dword [ebx + 0x1cb4]
fmul dword [esi]
fld dword [ebx + 0x454]
fmul dword [esi + 4]
faddp st(1)
fld dword [ebx + 0x464]
fmul dword [esi + 8]
faddp st(1)
fadd dword [ebx + 0x474]
fstp dword [ebp - 0x30]
fld dword [ebx + 0x448]
fmul dword [esi]
fld dword [ebx + 0x458]
fmul dword [esi + 4]
faddp st(1)
fld dword [ebx + 0x468]
fmul dword [esi + 8]
faddp st(1)
fadd dword [ebx + 0x478]
fstp dword [ebp - 0x2c]
fld dword [ebx + 0x44c]
fmul dword [esi]
fld dword [ebx + 0x45c]
fmul dword [esi + 4]
faddp st(1)
fld dword [ebx + 0x46c]
fmul dword [esi + 8]
faddp st(1)
fadd dword [ebx + 0x47c]
fstp dword [ebp - 0x28]
test eax, eax
je 0x714937f5
fst dword [ebp + 8]
xor ecx, ecx
fld dword [ebp - 0x30]
fstp dword [ebp - 4]
fld dword [ebp - 0x2c]
fstp dword [ebp - 8]
fld dword [ebp - 0x28]
fstp dword [ebp - 0x10]
fst dword [ebp - 0x30]
fst dword [ebp - 0x2c]
fst dword [ebp - 0x28]
test eax, eax
jbe 0x714937c7
mov edx, eax
lea eax, [ebx + 0x2e4]
fld dword [esi + ecx*4 + 0xc]
inc ecx
fstp dword [ebp - 0xc]
fld dword [ebp - 0xc]
fld st(0)
fmul dword [ebp - 4]
fadd dword [ebp - 0x30]
fstp dword [ebp - 0x30]
fld st(0)
fmul dword [ebp - 8]
fadd dword [ebp - 0x2c]
fstp dword [ebp - 0x2c]
fld st(0)
fmul dword [ebp - 0x10]
fadd dword [ebp - 0x28]
fstp dword [ebp - 0x28]
fadd dword [ebp + 8]
fstp dword [ebp + 8]
fld dword [eax - 0x20]
fmul dword [esi]
fld dword [eax - 0x10]
fmul dword [esi + 4]
faddp st(1)
fld dword [eax]
add eax, 0x40
fmul dword [esi + 8]
faddp st(1)
fadd dword [eax - 0x30]
fstp dword [ebp - 4]
fld dword [eax - 0x5c]
fmul dword [esi]
fld dword [eax - 0x4c]
fmul dword [esi + 4]
faddp st(1)
fld dword [eax - 0x3c]
fmul dword [esi + 8]
faddp st(1)
fadd dword [eax - 0x2c]
fstp dword [ebp - 8]
fld dword [eax - 0x58]
fmul dword [esi]
fld dword [eax - 0x48]
fmul dword [esi + 4]
faddp st(1)
fld dword [eax - 0x38]
fmul dword [esi + 8]
faddp st(1)
fadd dword [eax - 0x28]
fstp dword [ebp - 0x10]
cmp ecx, edx
jb 0x7149373a
fld dword [ebp + 8]
fld1
fsubrp st(1)
fstp dword [ebp + 8]
fld dword [ebp - 4]
fmul dword [ebp + 8]
fadd dword [ebp - 0x30]
fstp dword [ebp - 0x30]
fld dword [ebp - 8]
fmul dword [ebp + 8]
fadd dword [ebp - 0x2c]
fstp dword [ebp - 0x2c]
fld dword [ebp - 0x10]
fmul dword [ebp + 8]
fadd dword [ebp - 0x28]
fstp dword [ebp - 0x28]
mov dword [ebx + 0x5b8], 1
test dword [ebx + 0x1a60], 0x40000000
je 0x7149398e
mov ecx, dword [ebp - 0x48]
fld dword [ebx + 0x484]
fmul dword [ecx]
mov eax, dword [ebx + 0x1cb4]
fld dword [ebx + 0x488]
fmul dword [ecx + 4]
faddp st(1)
fld dword [ebx + 0x48c]
fmul dword [ecx + 8]
faddp st(1)
fstp dword [ebp - 0x24]
fld dword [ebx + 0x494]
fmul dword [ecx]
fld dword [ebx + 0x498]
fmul dword [ecx + 4]
faddp st(1)
fld dword [ebx + 0x49c]
fmul dword [ecx + 8]
faddp st(1)
fstp dword [ebp - 0x20]
fld dword [ebx + 0x4a4]
fmul dword [ecx]
fld dword [ebx + 0x4a8]
fmul dword [ecx + 4]
faddp st(1)
fld dword [ebx + 0x4ac]
fmul dword [ecx + 8]
faddp st(1)
fstp dword [ebp - 0x1c]
test eax, eax
je 0x7149396d
and dword [ebp - 0x14], 0
fst dword [ebp + 8]
fld dword [ebp - 0x24]
fstp dword [ebp - 4]
fld dword [ebp - 0x20]
fstp dword [ebp - 8]
fld dword [ebp - 0x1c]
fstp dword [ebp - 0x10]
fst dword [ebp - 0x24]
fst dword [ebp - 0x20]
fst dword [ebp - 0x1c]
test eax, eax
jbe 0x7149393f
mov edx, eax
lea eax, [ebx + 0x38c]
mov edi, dword [ebp - 0x14]
fld dword [esi + edi*4 + 0xc]
inc dword [ebp - 0x14]
fstp dword [ebp - 0xc]
fld dword [ebp - 0xc]
fld st(0)
fmul dword [ebp - 4]
fadd dword [ebp - 0x24]
fstp dword [ebp - 0x24]
fld st(0)
fmul dword [ebp - 8]
fadd dword [ebp - 0x20]
fstp dword [ebp - 0x20]
fld st(0)
fmul dword [ebp - 0x10]
fadd dword [ebp - 0x1c]
fstp dword [ebp - 0x1c]
fadd dword [ebp + 8]
fstp dword [ebp + 8]
fld dword [eax - 8]
fmul dword [ecx]
fld dword [eax - 4]
fmul dword [ecx + 4]
faddp st(1)
fld dword [eax]
add eax, 0x40
fmul dword [ecx + 8]
faddp st(1)
fstp dword [ebp - 4]
fld dword [eax - 0x38]
fmul dword [ecx]
fld dword [eax - 0x34]
fmul dword [ecx + 4]
faddp st(1)
fld dword [eax - 0x30]
fmul dword [ecx + 8]
faddp st(1)
fstp dword [ebp - 8]
fld dword [eax - 0x28]
fmul dword [ecx]
fld dword [eax - 0x24]
fmul dword [ecx + 4]
faddp st(1)
fld dword [eax - 0x20]
fmul dword [ecx + 8]
faddp st(1)
fstp dword [ebp - 0x10]
cmp dword [ebp - 0x14], edx
jb 0x714938b5
fld dword [ebp + 8]
fld1
fsubrp st(1)
fstp dword [ebp + 8]
fld dword [ebp - 4]
fmul dword [ebp + 8]
fadd dword [ebp - 0x24]
fstp dword [ebp - 0x24]
fld dword [ebp - 8]
fmul dword [ebp + 8]
fadd dword [ebp - 0x20]
fstp dword [ebp - 0x20]
fld dword [ebp - 0x10]
fmul dword [ebp + 8]
fadd dword [ebp - 0x1c]
fstp dword [ebp - 0x1c]
test dword [ebx + 0x1a60], 0x2000000
je 0x71493987
lea edx, [ebp - 0x24]
fstp st(0)
mov ecx, edx
call fcn.7140c2d7
fldz
or dword [ebx + 0x5b8], 2
mov edx, dword [ebx + 0x1a44]
test edx, 0x400
je 0x71493e7a
fst dword [ebx + 0x504]
fst dword [ebx + 0x508]
fst dword [ebx + 0x50c]
fst dword [ebx + 0x524]
fst dword [ebx + 0x528]
fst dword [ebx + 0x52c]
test edx, 0x200
je 0x71493a23
test edx, 0x10000
je 0x714939e9
mov eax, dword [ebp - 0x64]
test eax, eax
je 0x714939e1
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x714939e3
xor eax, eax
mov dword [ebx + 0x540], eax
test edx, 0x4000
je 0x71493a06
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x714939fe
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x71493a00
xor eax, eax
mov dword [ebx + 0x550], eax
test edx, 0x8000
je 0x71493a23
mov eax, dword [ebp - 0x5c]
test eax, eax
je 0x71493a1b
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x71493a1d
xor eax, eax
mov dword [ebx + 0x570], eax
mov edi, dword [ebx + 0x5c0]
test edi, edi
je 0x71493a4b
fstp st(0)
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x48]
push esi
push edi
push ebx
call dword [edi + 0x80]
mov edi, dword [edi + 0x58]
add esp, 0x14
test edi, edi
jne 0x71493a2f
fldz
mov eax, dword [ebx + 0x1a44]
mov dword [ebp + 8], eax
and dword [ebp + 8], 0x12000
je 0x71493bdc
mov ecx, dword [ebx + 0x5b8]
test cl, 8
jne 0x71493a7e
fst dword [ebx + 0x504]
fst dword [ebx + 0x508]
fst dword [ebx + 0x50c]
test eax, 0x10000
je 0x71493ae8
mov eax, dword [ebp - 0x64]
test eax, eax
je 0x71493a92
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x71493a94
xor eax, eax
mov edi, eax
shr edi, 0x10
mov edx, 0xff
and edi, edx
mov dword [ebp - 0xc], edi
fild dword [ebp - 0xc]
mov edi, eax
shr edi, 8
and edi, edx
fmul dword [ebx + 0x554]
mov dword [ebp - 0xc], edi
movzx eax, al
fadd dword [ebx + 0x504]
fstp dword [ebx + 0x504]
fild dword [ebp - 0xc]
mov dword [ebp - 0xc], eax
fmul dword [ebx + 0x558]
fadd dword [ebx + 0x508]
fstp dword [ebx + 0x508]
fild dword [ebp - 0xc]
fmul dword [ebx + 0x55c]
jmp 0x71493b29
fld dword [ebx + 0x584]
mov edx, 0xff
fmul dword [ebx + 0x544]
fadd dword [ebx + 0x504]
fstp dword [ebx + 0x504]
fld dword [ebx + 0x588]
fmul dword [ebx + 0x548]
fadd dword [ebx + 0x508]
fstp dword [ebx + 0x508]
fld dword [ebx + 0x58c]
fmul dword [ebx + 0x54c]
test dword [ebx + 0x1a44], 0x2000
fadd dword [ebx + 0x50c]
fstp dword [ebx + 0x50c]
je 0x71493b8d
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x71493b4e
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x71493b50
xor eax, eax
mov edi, eax
shr edi, 0x10
and edi, edx
mov dword [ebp - 0xc], edi
fild dword [ebp - 0xc]
mov edi, eax
shr edi, 8
and edi, edx
fadd dword [ebx + 0x504]
mov dword [ebp - 0xc], edi
movzx eax, al
fstp dword [ebx + 0x504]
fild dword [ebp - 0xc]
mov dword [ebp - 0xc], eax
fadd dword [ebx + 0x508]
fstp dword [ebx + 0x508]
fild dword [ebp - 0xc]
jmp 0x71493bc5
fld dword [ebx + 0x5a4]
fld qword [0x7141bf38]
fmul st(1), st(0)
fld dword [ebx + 0x504]
faddp st(2)
fxch st(1)
fstp dword [ebx + 0x504]
fld dword [ebx + 0x5a8]
fmul st(1)
fadd dword [ebx + 0x508]
fstp dword [ebx + 0x508]
fmul dword [ebx + 0x5ac]
fadd dword [ebx + 0x50c]
or ecx, 8
mov dword [ebx + 0x5b8], ecx
fstp dword [ebx + 0x50c]
jmp 0x71493be1
mov edx, 0xff
test byte [ebx + 0x5b8], 8
je 0x71493d04
cmp dword [ebp + 8], 0
fstp st(0)
jne 0x71493c2c
fld dword [ebx + 0x514]
fadd dword [ebx + 0x504]
fstp dword [ebx + 0x504]
fld dword [ebx + 0x518]
fadd dword [ebx + 0x508]
fstp dword [ebx + 0x508]
fld dword [ebx + 0x51c]
fadd dword [ebx + 0x50c]
fstp dword [ebx + 0x50c]
fld dword [ebx + 0x504]
fstp dword [ebp + 8]
fld dword [ebp + 8]
fistp qword [ebp - 0xc8]
fld dword [ebx + 0x508]
mov eax, dword [ebp - 0xc8]
fstp dword [ebp + 8]
fld dword [ebp + 8]
fistp qword [ebp - 0x8c]
mov ecx, dword [ebp - 0x8c]
fld dword [ebx + 0x50c]
fstp dword [ebp + 8]
mov dword [ebp - 0xc], ecx
fld dword [ebp + 8]
fistp qword [ebp - 0x94]
mov ecx, dword [ebp - 0x94]
xor edi, edi
cmp eax, edi
mov dword [ebp + 8], ecx
jge 0x71493c84
xor eax, eax
jmp 0x71493c8a
cmp eax, edx
jle 0x71493c8a
mov eax, edx
cmp dword [ebp - 0x8c], edi
jl 0x71493c9f
cmp dword [ebp - 0x8c], edx
mov edi, edx
jg 0x71493c9f
mov edi, dword [ebp - 0xc]
cmp dword [ebp - 0x94], 0
jge 0x71493cae
and dword [ebp + 8], 0
jmp 0x71493cb9
cmp dword [ebp - 0x94], edx
jle 0x71493cb9
mov dword [ebp + 8], edx
test dword [ebx + 0x1a44], 0x4000
jne 0x71493ce0
fldz
shl eax, 8
add eax, edi
shl eax, 8
add eax, dword [ebx + 0x510]
add eax, dword [ebp + 8]
mov dword [ebx + 0x530], eax
jmp 0x71493d46
mov ecx, dword [ebp - 0x60]
test ecx, ecx
je 0x71493ced
mov ecx, dword [ecx]
mov ecx, dword [ecx]
jmp 0x71493cef
xor ecx, ecx
fldz
shl eax, 8
add eax, edi
shl eax, 8
and ecx, 0xff000000
add eax, dword [ebp + 8]
jmp 0x71493d3e
test dword [ebx + 0x1a44], 0x4000
jne 0x71493d24
mov eax, dword [ebx + 0x5e8]
add eax, dword [ebx + 0x510]
mov dword [ebx + 0x530], eax
jmp 0x71493d46
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x71493d36
mov eax, dword [eax]
mov eax, dword [eax]
and eax, 0xff000000
jmp 0x71493d38
xor eax, eax
mov ecx, dword [ebx + 0x5e8]
add ecx, eax
mov dword [ebx + 0x530], ecx
test byte [ebx + 0x5b8], 4
je 0x71493e28
fstp st(0)
fld dword [ebx + 0x524]
fstp dword [ebp + 8]
fld dword [ebp + 8]
fistp qword [ebp - 0xd0]
fld dword [ebx + 0x528]
mov eax, dword [ebp - 0xd0]
fstp dword [ebp + 8]
fld dword [ebp + 8]
fistp qword [ebp - 0x84]
mov ecx, dword [ebp - 0x84]
fld dword [ebx + 0x52c]
fstp dword [ebp + 8]
mov dword [ebp - 0xc], ecx
fld dword [ebp + 8]
fistp qword [ebp - 0x7c]
mov ecx, dword [ebp - 0x7c]
xor edi, edi
cmp eax, edi
mov dword [ebp + 8], ecx
jge 0x71493da7
xor eax, eax
jmp 0x71493dad
cmp eax, edx
jle 0x71493dad
mov eax, edx
cmp dword [ebp - 0x84], edi
jl 0x71493dc2
cmp dword [ebp - 0x84], edx
mov edi, edx
jg 0x71493dc2
mov edi, dword [ebp - 0xc]
cmp dword [ebp - 0x7c], 0
jge 0x71493dce
and dword [ebp + 8], 0
jmp 0x71493dd6
cmp dword [ebp - 0x7c], edx
jle 0x71493dd6
mov dword [ebp + 8], edx
mov edx, dword [ebx + 0x1a44]
test edx, 0x8000
jne 0x71493dfc
fldz
shl eax, 8
add eax, edi
shl eax, 8
add eax, dword [ebx + 0x5bc]
add eax, dword [ebp + 8]
jmp 0x71493e9c
mov ecx, dword [ebp - 0x5c]
test ecx, ecx
je 0x71493e09
mov ecx, dword [ecx]
mov ecx, dword [ecx]
jmp 0x71493e0b
xor ecx, ecx
fldz
shl eax, 8
add eax, edi
shl eax, 8
add eax, dword [ebp + 8]
and ecx, 0xff000000
add ecx, eax
mov dword [ebx + 0x560], ecx
jmp 0x71493ea2
mov edx, dword [ebx + 0x1a44]
test edx, 0x100000
jne 0x71493ea2
test dword [ebx + 0x1a60], 0x800
jne 0x71493e54
test byte [ebx + 0x1a5c], 0x80
jne 0x71493e97
and dword [ebx + 0x560], 0
jmp 0x71493ea2
test edx, 0x8000
jne 0x71493e64
mov eax, dword [ebx + 0x5bc]
jmp 0x71493e9c
mov eax, dword [ebp - 0x5c]
test eax, eax
je 0x71493e76
mov eax, dword [eax]
mov eax, dword [eax]
and eax, 0xff000000
jmp 0x71493e9c
xor eax, eax
jmp 0x71493e9c
mov eax, dword [ebx + 0x1a5c]
test al, 0xc0
je 0x71493ea2
test al, 0x40
je 0x71493e93
mov ecx, dword [ebp - 0x3c]
mov ecx, dword [ecx]
mov dword [ebx + 0x530], ecx
test al, al
jns 0x71493ea2
mov eax, dword [ebp - 0x18]
mov eax, dword [eax]
mov dword [ebx + 0x560], eax
test edx, 0x100
je 0x71493ebc
lea eax, [ebp - 0x30]
fstp st(0)
push eax
push esi
push ebx
call fcn.71492c10
fldz
add esp, 0xc
test dword [ebx + 0x1a44], 0x80000000
mov ecx, dword [ebp - 0x54]
jne 0x71493eda
mov eax, dword [ebx + 0x1cd0]
mov edx, dword [ebx + 0x530]
mov dword [ecx + eax], edx
test dword [ebx + 0x1a44], 0x100000
jne 0x71493ef5
mov eax, dword [ebx + 0x1cd4]
mov edx, dword [ebx + 0x560]
mov dword [ecx + eax], edx
mov eax, dword [ebx + 0x1ccc]
mov edi, dword [ebx + 0x1a60]
add eax, ecx
test edi, 0x8000000
je 0x7149413f
test dword [ebx + 0x1a44], 0x10000000
jne 0x714940e2
test dword [ebp - 0x50], 0x200000
mov dword [ebp + 8], eax
jne 0x714940dd
test edi, 0x4010000
jne 0x71493f84
xor edi, edi
cmp dword [ebx + 0x1a88], edi
jbe 0x714940e2
lea eax, [ebx + 0x1ad8]
fstp st(0)
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax]
push eax
push dword [ebp + edi*4 - 0xc0]
mov dword [ebp - 0xc], eax
push dword [ebp + 8]
call sub.msvcrt.dll_memcpy
mov eax, dword [ebp - 0xc]
add dword [ebp + 8], eax
add dword [ebp - 4], 4
add esp, 0xc
inc edi
cmp edi, dword [ebx + 0x1a88]
jae 0x714940d9
jmp 0x71493f50
test edi, 0x10000
jne 0x7149400a
xor edi, edi
cmp dword [ebx + 0x1a88], edi
jbe 0x714940e2
lea ecx, [ebx + 0x1c30]
fstp st(0)
mov dword [ebp - 8], ecx
lea eax, [ecx - 0x138]
mov edx, dword [eax - 0x20]
mov ecx, dword [ecx]
mov eax, dword [eax]
mov dword [ebp - 4], edx
test ecx, ecx
jne 0x71493fcb
push edx
push dword [ebp + edi*4 - 0xc0]
push dword [ebp + 8]
call sub.msvcrt.dll_memcpy
jmp 0x71493fe9
mov edx, dword [ebp - 4]
push ecx
push dword [ebp + 8]
shr edx, 2
push dword [ebp + edi*4 - 0xc0]
shr eax, 2
lea eax, [eax + edx*4]
call dword [eax*4 + 0x714bf23c]
mov eax, dword [ebp - 4]
add dword [ebp + 8], eax
mov ecx, dword [ebp - 8]
add esp, 0xc
inc edi
add ecx, 4
mov dword [ebp - 8], ecx
cmp edi, dword [ebx + 0x1a88]
jae 0x714940d9
jmp 0x71493fa5
and dword [ebp - 8], 0
cmp dword [ebx + 0x1c2c], 0
mov dword [ebp + 8], eax
jbe 0x714940e2
lea eax, [ebx + 0x1ad8]
fstp st(0)
mov dword [ebp - 4], eax
lea edi, [ebx + 0x1b48]
mov eax, dword [edi]
test eax, eax
jne 0x71494041
mov eax, dword [edi - 0x1c]
mov ecx, dword [ebp + eax*4 - 0xc0]
jmp 0x7149408b
cmp eax, 0x20000
jne 0x7149404d
lea ecx, [ebp - 0x30]
jmp 0x7149408b
cmp eax, 0x10000
jne 0x71494059
lea ecx, [ebp - 0x24]
jmp 0x7149408b
test dword [ebx + 0x1a60], 0x1000000
lea eax, [ebp - 0xe8]
push eax
lea eax, [ebp - 0x24]
push eax
je 0x7149407e
lea eax, [ebp - 0x30]
push eax
call fcn.71491e76
add esp, 0xc
jmp 0x71494085
call fcn.71491ee4
pop ecx
pop ecx
lea ecx, [ebp - 0xe8]
mov eax, dword [ebp - 4]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov eax, dword [edi - 8]
test eax, eax
je 0x714940ab
mov edx, dword [edi - 4]
push eax
push dword [ebp + 8]
push ecx
call dword [edx*4 + 0x714bf250]
jmp 0x714940b7
push dword [ebp - 0x10]
push ecx
push dword [ebp + 8]
call sub.msvcrt.dll_memcpy
mov eax, dword [ebp - 0x10]
add dword [ebp + 8], eax
add dword [ebp - 4], 4
add esp, 0xc
inc dword [ebp - 8]
mov eax, dword [ebp - 8]
add edi, 0x20
cmp eax, dword [ebx + 0x1c2c]
jb 0x7149402f
fldz
jmp 0x714940e2
fst dword [eax]
fst dword [eax + 4]
add esi, dword [ebp - 0x74]
test dword [ebx + 0x1a44], 0x40000000
jne 0x7149430b
mov eax, dword [ebx + 0x1a30]
add dword [ebp - 0x48], eax
mov eax, dword [ebx + 0x1a38]
add dword [ebp - 0x3c], eax
mov eax, dword [ebx + 0x1a94]
add dword [ebp - 0x18], eax
xor ecx, ecx
cmp dword [ebx + 0x1a84], ecx
jbe 0x7149430b
lea eax, [ebx + 0x1a9c]
mov edx, dword [eax]
add dword [ebp + ecx*4 - 0xc0], edx
inc ecx
add eax, 8
cmp ecx, dword [ebx + 0x1a84]
jae 0x7149430b
jmp 0x71494124
test dword [ebx + 0x1a44], 0x10000000
jne 0x714942eb
test dword [ebp - 0x50], 0x200000
jne 0x714942e6
test edi, 0x4010000
jne 0x71494180
push dword [ebx + 0x1a8c]
fstp st(0)
push dword [ebp - 0xc0]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
jmp 0x714942e2
and dword [ebp - 8], 0
test edi, 0x10000
jne 0x71494218
cmp dword [ebx + 0x1a88], 0
mov ecx, dword [ebp - 0xc0]
mov dword [ebp + 8], ecx
mov dword [ebp - 0x14], eax
jbe 0x714942eb
fstp st(0)
lea edi, [ebx + 0x1c30]
lea eax, [edi - 0x138]
mov ecx, dword [eax - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov eax, dword [edi]
mov dword [ebp - 4], ecx
test eax, eax
je 0x714941e4
mov edx, dword [ebp - 0x10]
push eax
push dword [ebp - 0x14]
shr ecx, 2
push dword [ebp + 8]
shr edx, 2
lea ecx, [edx + ecx*4]
call dword [ecx*4 + 0x714bf23c]
jmp 0x714941f2
push dword [ebp - 4]
push dword [ebp + 8]
push dword [ebp - 0x14]
call sub.msvcrt.dll_memcpy
mov eax, dword [ebp - 0x10]
add dword [ebp + 8], eax
mov eax, dword [ebp - 4]
add dword [ebp - 0x14], eax
add esp, 0xc
inc dword [ebp - 8]
mov eax, dword [ebp - 8]
add edi, 4
cmp eax, dword [ebx + 0x1a88]
jae 0x714942e2
jmp 0x714941b1
cmp dword [ebx + 0x1c2c], 0
mov dword [ebp + 8], eax
jbe 0x714942eb
lea eax, [ebx + 0x1ad8]
fstp st(0)
mov dword [ebp - 4], eax
lea edi, [ebx + 0x1b48]
mov eax, dword [edi]
test eax, eax
jne 0x7149424a
mov eax, dword [edi - 0x18]
add eax, dword [ebp - 0xc0]
jmp 0x71494294
cmp eax, 0x20000
jne 0x71494256
lea eax, [ebp - 0x30]
jmp 0x71494294
cmp eax, 0x10000
jne 0x71494262
lea eax, [ebp - 0x24]
jmp 0x71494294
test dword [ebx + 0x1a60], 0x1000000
lea eax, [ebp - 0xdc]
push eax
lea eax, [ebp - 0x24]
push eax
je 0x71494287
lea eax, [ebp - 0x30]
push eax
call fcn.71491e76
add esp, 0xc
jmp 0x7149428e
call fcn.71491ee4
pop ecx
pop ecx
lea eax, [ebp - 0xdc]
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx]
mov dword [ebp - 0x10], ecx
mov ecx, dword [edi - 8]
test ecx, ecx
je 0x714942b4
mov edx, dword [edi - 4]
push ecx
push dword [ebp + 8]
push eax
call dword [edx*4 + 0x714bf250]
jmp 0x714942c0
push dword [ebp - 0x10]
push eax
push dword [ebp + 8]
call sub.msvcrt.dll_memcpy
mov eax, dword [ebp - 0x10]
add dword [ebp + 8], eax
add dword [ebp - 4], 4
add esp, 0xc
inc dword [ebp - 8]
mov eax, dword [ebp - 8]
add edi, 0x20
cmp eax, dword [ebx + 0x1c2c]
jb 0x71494239
fldz
jmp 0x714942eb
fst dword [eax]
fst dword [eax + 4]
mov eax, dword [ebp - 0x74]
add esi, eax
test dword [ebx + 0x1a44], 0x40000000
jne 0x7149430b
add dword [ebp - 0x48], eax
add dword [ebp - 0x3c], eax
add dword [ebp - 0x18], eax
add dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xa0]
add dword [ebp - 0x54], eax
dec dword [ebp - 0x70]
jne 0x714931ed
test dword [ebx + 0x1a60], 0x100000
fstp st(0)
jne 0x714943f3
fld dword [ebx + 0x1b24]
lea ecx, [ebx + 0x624]
fadd dword [ebx + 0x68c]
fstp dword [ebx + 0x1b24]
fld dword [ebx + 0x68c]
fadd dword [ebx + 0x1b28]
fstp dword [ebx + 0x1b28]
fld dword [ebx + 0x1b1c]
fsub dword [ebx + 0x68c]
fstp dword [ebx + 0x1b1c]
fld dword [ebx + 0x1b20]
fsub dword [ebx + 0x68c]
fstp dword [ebx + 0x1b20]
fld dword [ebx + 0x1b1c]
fld dword [ecx]
fcompp
fnstsw ax
test ah, 0x41
jne 0x71494396
fld dword [ecx]
fstp dword [ebx + 0x1b1c]
fld dword [ebx + 0x1b20]
lea ecx, [ebx + 0x628]
fld dword [ecx]
fcompp
fnstsw ax
test ah, 0x41
jne 0x714943b5
fld dword [ecx]
fstp dword [ebx + 0x1b20]
fld dword [ebx + 0x1b24]
lea ecx, [ebx + 0x62c]
fld dword [ecx]
fcompp
fnstsw ax
test ah, 5
jp 0x714943d4
fld dword [ecx]
fstp dword [ebx + 0x1b24]
fld dword [ebx + 0x1b28]
lea ecx, [ebx + 0x630]
fld dword [ecx]
fcompp
fnstsw ax
test ah, 5
jp 0x714943f3
fld dword [ecx]
fstp dword [ebx + 0x1b28]
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x58]
mov dword [ebx + 0x684], eax
mov dword [ebx + 0x680], ecx
pop edi
pop esi
pop ebx
leave
ret
mov eax, dword [ebx + 0x1a40]
fstp st(4)
sub eax, dword [ebp - 0x70]
fstp st(3)
fstp st(1)
fstp st(0)
mov dword [ebx + 0x225c], eax
fstp st(0)
xor eax, eax
jmp 0x71494405