Function at 0x7149da74
Capabilities:
Inspect section memory permissions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x168
push ebx
mov ebx, dword [ebp + 8]
test dword [ebx + 0x1a60], 0x80000
je 0x7149dab1
mov eax, dword [ecx]
push ebx
call dword [eax + 4]
cmp dword [ebx + 0x684], 0
je 0x7149daa5
xor eax, eax
jmp 0x714a0147
push ebx
call fcn.7142b0a9
pop ecx
jmp 0x714a0147
mov eax, dword [ebx + 0x1a70]
or dword [ebx + 0x225c], 0xffffffff
or dword [ebx + 0x1a44], 0x200000
push esi
mov dword [ebp - 0x88], eax
mov eax, dword [ecx]
xor esi, esi
push ebx
mov dword [ebp - 0x3c], esi
call dword [eax + 4]
mov eax, dword [ebx + 0x225c]
cmp eax, 0xffffffff
jne 0x7149db09
and dword [ebx + 0x1a44], 0xffdfffff
cmp dword [ebx + 0x684], esi
je 0x7149dafe
xor eax, eax
jmp 0x714a0146
push ebx
call fcn.7142b0a9
jmp 0x714a0145
mov ecx, dword [ebx + 0x1a48]
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x60], esi
mov dword [ebp - 0xcc], ecx
cmp eax, 2
jbe 0x7149db3a
dec eax
push eax
lea ecx, [eax - 1]
push ebx
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x3c], 0x11
call fcn.71498f43
pop ecx
pop ecx
mov eax, dword [ebx + 0x1a70]
mov edx, dword [ebx + 0x1a60]
mov ecx, dword [ebx + 0x1a78]
mov dword [ebp - 0x7c], eax
mov eax, dword [ebx + 0x1cd8]
mov dword [ebp - 0xd0], eax
mov eax, dword [ebx + 0x1a54]
push edi
mov dword [ebp - 0xb4], eax
mov eax, dword [ebx + 0x1a7c]
mov edi, 0x8000000
mov dword [ebp - 0xb0], esi
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x8c], esi
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x74], eax
mov dword [ebp - 0xac], ecx
test edi, edx
jne 0x7149dbce
mov eax, dword [ebx + 0x1cc0]
add eax, ecx
mov dword [ebp - 0x54], eax
mov eax, dword [ebx + 0x1cc4]
add eax, ecx
mov dword [ebp - 0x44], eax
mov eax, dword [ebx + 0x1cc8]
add eax, ecx
mov dword [ebp - 0x34], eax
cmp dword [ebx + 0x1a84], esi
je 0x7149dc3d
mov eax, dword [ebx + 0x1cbc]
add eax, ecx
jmp 0x7149dc0c
test byte [ebp - 0x5c], 0x10
mov eax, dword [ebx + 0x1a2c]
mov dword [ebp - 0x54], eax
mov eax, dword [ebx + 0x1a34]
mov dword [ebp - 0x44], eax
mov eax, dword [ebx + 0x1a90]
mov dword [ebp - 0x34], eax
jne 0x7149dc14
test dword [ebx + 0x1a44], edi
jne 0x7149dc14
cmp dword [ebx + 0x1a84], esi
je 0x7149dc3d
mov eax, dword [ebx + 0x688]
mov eax, dword [ebx + eax*8 + 0x1a98]
mov dword [ebp - 0xac], eax
jmp 0x7149dc3d
lea eax, [ebx + 0x1a84]
xor edi, edi
cmp dword [eax], esi
jbe 0x7149dc3d
mov eax, dword [eax]
mov dword [ebp + 8], eax
lea ecx, [ebx + 0x1a98]
mov eax, dword [ecx]
mov dword [ebp + edi*4 - 0xac], eax
inc edi
add ecx, 8
cmp edi, dword [ebp + 8]
jb 0x7149dc2b
mov eax, dword [ebx + 0x1a44]
fldz
or dword [ebx + 0x530], 0xffffffff
mov dword [ebx + 0x560], esi
mov dword [ebx + 0x5b8], esi
test eax, 0x400
je 0x7149dd67
lea esi, [ebx + 0x514]
fst dword [ebx + 0x524]
lea edi, [ebx + 0x504]
fst dword [ebx + 0x528]
movsd dword es:[edi], dword [esi]
fstp dword [ebx + 0x52c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
test edx, 0x10000000
je 0x7149dd69
mov ecx, dword [ebx + 0x1a5c]
mov edx, 0x2200
mov esi, 0x4200
mov edi, 0x10200
test cl, 0x40
je 0x7149dd07
cmp dword [ebx + 0x5f8], 0
jne 0x7149dcc4
or eax, edx
mov dword [ebx + 0x1a44], eax
lea eax, [ebp - 0x44]
mov dword [ebp - 0x8c], eax
cmp dword [ebx + 0x5f0], 0
jne 0x7149dcd9
or dword [ebx + 0x1a44], esi
lea eax, [ebp - 0x44]
mov dword [ebp - 0x64], eax
cmp dword [ebx + 0x5ec], 0
jne 0x7149dcee
or dword [ebx + 0x1a44], edi
lea eax, [ebp - 0x44]
mov dword [ebp - 0x80], eax
cmp dword [ebx + 0x5f4], 0
jne 0x7149dd07
or dword [ebx + 0x1a44], 0x8200
lea eax, [ebp - 0x44]
mov dword [ebp - 0x68], eax
test cl, cl
jns 0x7149dd69
xor eax, eax
inc eax
cmp dword [ebx + 0x5f8], eax
jne 0x7149dd25
or dword [ebx + 0x1a44], edx
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x8c], ecx
cmp dword [ebx + 0x5f0], eax
jne 0x7149dd39
or dword [ebx + 0x1a44], esi
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x64], ecx
cmp dword [ebx + 0x5ec], eax
jne 0x7149dd4d
or dword [ebx + 0x1a44], edi
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x80], ecx
cmp dword [ebx + 0x5f4], eax
jne 0x7149dd69
or dword [ebx + 0x1a44], 0x8200
lea eax, [ebp - 0x34]
mov dword [ebp - 0x68], eax
jmp 0x7149dd69
fstp st(0)
and dword [ebp - 0x70], 0
test dword [ebp - 0x5c], 0x80000
jne 0x7149dd7a
or dword [ebp - 0x70], 0xffffffff
mov edi, dword [ebp - 0x38]
and dword [ebp - 0xb8], 0
lea esi, [ebx + 0x1cdc]
push esi
push edi
push ebx
mov dword [ebp - 0x40], esi
call fcn.71498af8
mov ecx, dword [esi + 0x2c]
add edi, dword [ebp - 0x74]
mov dword [ebp - 0x6c], ecx
mov ecx, dword [esi + 0x10]
mov edx, ecx
and ecx, eax
and dword [ebp - 0x70], ecx
or edx, eax
add esp, 0xc
cmp dword [ebx + 0x225c], 2
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x84], edx
jbe 0x7149ddcc
and dword [esi + 0x10], 0
and dword [ebp - 0x70], 0
jmp 0x7149efa1
push dword [ebp - 0x6c]
push dword [ebp - 0x78]
push ebx
call fcn.71498af8
or dword [ebp - 0x84], eax
add esp, 0xc
and dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax + 0x10]
mov edx, dword [ebp - 0x40]
mov eax, dword [edx + 0x10]
test ecx, eax
jne 0x7149de10
or eax, ecx
test dword [ebp - 0xd0], eax
jne 0x7149de07
or dword [ebp - 0x3c], 0x221
jmp 0x7149de17
or dword [ebp - 0x3c], 0x142
jmp 0x7149de17
or dword [ebp - 0x3c], 0x80
mov eax, dword [ebx + 0x1cd8]
test dword [edx + 0x10], eax
jne 0x7149dedc
test dword [ebx + 0x1a60], 0x100000
fld dword [edx + 0xc]
fld1
fdivrp st(1)
fstp dword [ebp + 8]
fld dword [edx]
fmul dword [ebp + 8]
fmul dword [ebx + 0x5fc]
fadd dword [ebx + 0x604]
fstp dword [ebp - 0x48]
fld dword [edx + 4]
fmul dword [ebp + 8]
fmul dword [ebx + 0x600]
fadd dword [ebx + 0x608]
fstp dword [ebp - 0x50]
fld dword [ebp - 0x48]
fld dword [ebp - 0x50]
jne 0x7149dec3
lea ecx, [ebx + 0x1b1c]
fld dword [ecx]
fcomp st(2)
fnstsw ax
test ah, 0x41
jne 0x7149de82
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 0x7149de99
fxch st(1)
fstp dword [ecx]
jmp 0x7149de9b
fstp st(1)
lea ecx, [ebx + 0x1b20]
fld dword [ecx]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x7149deae
fst dword [ecx]
lea ecx, [ebx + 0x1b28]
fld dword [ecx]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x7149dec5
fstp dword [ecx]
jmp 0x7149dec7
fstp st(1)
fstp st(0)
fld dword [edx + 8]
fmul dword [ebx + 0x60c]
fmul dword [ebp + 8]
fadd dword [ebx + 0x610]
fstp dword [ebp - 0x4c]
test byte [ebp - 0x3c], 3
je 0x7149e6fe
mov edx, dword [ebp - 0x38]
xor ecx, ecx
test dword [ebx + 0x1a60], 0x20000000
mov dword [ebx + 0x5b8], ecx
je 0x7149e079
fld dword [ebx + 0x454]
mov eax, dword [ebx + 0x1cb4]
fmul dword [edx + 4]
fld dword [ebx + 0x444]
fmul dword [edx]
faddp st(1)
fld dword [ebx + 0x464]
fmul dword [edx + 8]
faddp st(1)
fadd dword [ebx + 0x474]
fstp dword [ebp - 0x30]
fld dword [ebx + 0x458]
fmul dword [edx + 4]
fld dword [ebx + 0x448]
fmul dword [edx]
faddp st(1)
fld dword [ebx + 0x468]
fmul dword [edx + 8]
faddp st(1)
fadd dword [ebx + 0x478]
fstp dword [ebp - 0x2c]
fld dword [ebx + 0x45c]
fmul dword [edx + 4]
fld dword [ebx + 0x44c]
fmul dword [edx]
faddp st(1)
fld dword [ebx + 0x46c]
fmul dword [edx + 8]
faddp st(1)
fadd dword [ebx + 0x47c]
fstp dword [ebp - 0x28]
fldz
cmp eax, ecx
je 0x7149e06d
fst dword [ebp - 0xc]
fld dword [ebp - 0x30]
fstp dword [ebp - 0x10]
fld dword [ebp - 0x2c]
fstp dword [ebp - 0x14]
fld dword [ebp - 0x28]
fstp dword [ebp - 4]
fst dword [ebp - 0x30]
fst dword [ebp - 0x2c]
fst dword [ebp - 0x28]
jbe 0x7149e03f
mov esi, eax
lea eax, [ebx + 0x2e4]
fld dword [edx + ecx*4 + 0xc]
inc ecx
fstp dword [ebp - 8]
fld dword [ebp - 8]
fld st(0)
fmul dword [ebp - 0x10]
fadd dword [ebp - 0x30]
fstp dword [ebp - 0x30]
fld st(0)
fmul dword [ebp - 0x14]
fadd dword [ebp - 0x2c]
fstp dword [ebp - 0x2c]
fld st(0)
fmul dword [ebp - 4]
fadd dword [ebp - 0x28]
fstp dword [ebp - 0x28]
fadd dword [ebp - 0xc]
fstp dword [ebp - 0xc]
fld dword [eax - 0x20]
fmul dword [edx]
fld dword [eax - 0x10]
fmul dword [edx + 4]
faddp st(1)
fld dword [eax]
add eax, 0x40
fmul dword [edx + 8]
faddp st(1)
fadd dword [eax - 0x30]
fstp dword [ebp - 0x10]
fld dword [eax - 0x5c]
fmul dword [edx]
fld dword [eax - 0x4c]
fmul dword [edx + 4]
faddp st(1)
fld dword [eax - 0x3c]
fmul dword [edx + 8]
faddp st(1)
fadd dword [eax - 0x2c]
fstp dword [ebp - 0x14]
fld dword [eax - 0x58]
fmul dword [edx]
fld dword [eax - 0x48]
fmul dword [edx + 4]
faddp st(1)
fld dword [eax - 0x38]
fmul dword [edx + 8]
faddp st(1)
fadd dword [eax - 0x28]
fstp dword [ebp - 4]
cmp ecx, esi
jb 0x7149dfb2
fld dword [ebp - 0xc]
fld1
fsubrp st(1)
fstp dword [ebp - 0xc]
fld dword [ebp - 0x10]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x30]
fstp dword [ebp - 0x30]
fld dword [ebp - 0x14]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x2c]
fstp dword [ebp - 0x2c]
fld dword [ebp - 4]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x28]
fstp dword [ebp - 0x28]
mov dword [ebx + 0x5b8], 1
jmp 0x7149e07b
fldz
test dword [ebx + 0x1a60], 0x40000000
mov edi, dword [ebp - 0x54]
je 0x7149e200
fld dword [ebx + 0x484]
mov eax, dword [ebx + 0x1cb4]
fmul dword [edi]
fld dword [ebx + 0x488]
fmul dword [edi + 4]
faddp st(1)
fld dword [ebx + 0x48c]
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 0x24]
fld dword [ebx + 0x494]
fmul dword [edi]
fld dword [ebx + 0x498]
fmul dword [edi + 4]
faddp st(1)
fld dword [ebx + 0x49c]
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 0x20]
fld dword [ebx + 0x4a4]
fmul dword [edi]
fld dword [ebx + 0x4a8]
fmul dword [edi + 4]
faddp st(1)
fld dword [ebx + 0x4ac]
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 0x1c]
test eax, eax
je 0x7149e1df
fst dword [ebp - 0xc]
xor ecx, ecx
fld dword [ebp - 0x24]
fstp dword [ebp - 4]
fld dword [ebp - 0x20]
fstp dword [ebp - 0x14]
fld dword [ebp - 0x1c]
fstp dword [ebp - 0x10]
fst dword [ebp - 0x24]
fst dword [ebp - 0x20]
fstp dword [ebp - 0x1c]
test eax, eax
jbe 0x7149e1af
mov esi, eax
lea eax, [ebx + 0x38c]
fld dword [edx + ecx*4 + 0xc]
inc ecx
fstp dword [ebp - 8]
fld dword [ebp - 8]
fld st(0)
fmul dword [ebp - 4]
fadd dword [ebp - 0x24]
fstp dword [ebp - 0x24]
fld st(0)
fmul dword [ebp - 0x14]
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 - 0xc]
fstp dword [ebp - 0xc]
fld dword [eax - 8]
fmul dword [edi]
fld dword [eax - 4]
fmul dword [edi + 4]
faddp st(1)
fld dword [eax]
add eax, 0x40
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 4]
fld dword [eax - 0x38]
fmul dword [edi]
fld dword [eax - 0x34]
fmul dword [edi + 4]
faddp st(1)
fld dword [eax - 0x30]
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 0x14]
fld dword [eax - 0x28]
fmul dword [edi]
fld dword [eax - 0x24]
fmul dword [edi + 4]
faddp st(1)
fld dword [eax - 0x20]
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 0x10]
cmp ecx, esi
jb 0x7149e12f
fld dword [ebp - 0xc]
fld1
fsubrp st(1)
fstp dword [ebp - 0xc]
fld dword [ebp - 4]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x24]
fstp dword [ebp - 0x24]
fld dword [ebp - 0x14]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x20]
fstp dword [ebp - 0x20]
fld dword [ebp - 0x10]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x1c]
fstp dword [ebp - 0x1c]
jmp 0x7149e1e1
fstp st(0)
test dword [ebx + 0x1a60], 0x2000000
je 0x7149e1f7
lea edx, [ebp - 0x24]
mov ecx, edx
call fcn.714d1d5a
or dword [ebx + 0x5b8], 2
fldz
mov ecx, dword [ebx + 0x1a44]
test ecx, 0x400
je 0x7149e6b8
fst dword [ebx + 0x504]
fst dword [ebx + 0x508]
fst dword [ebx + 0x50c]
fst dword [ebx + 0x524]
fst dword [ebx + 0x528]
fstp dword [ebx + 0x52c]
test ecx, 0x200
je 0x7149e295
test ecx, 0x10000
je 0x7149e25b
mov eax, dword [ebp - 0x80]
test eax, eax
je 0x7149e253
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x7149e255
xor eax, eax
mov dword [ebx + 0x540], eax
test ecx, 0x4000
je 0x7149e278
mov eax, dword [ebp - 0x64]
test eax, eax
je 0x7149e270
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x7149e272
xor eax, eax
mov dword [ebx + 0x550], eax
test ecx, 0x8000
je 0x7149e295
mov eax, dword [ebp - 0x68]
test eax, eax
je 0x7149e28d
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x7149e28f
xor eax, eax
mov dword [ebx + 0x570], eax
mov esi, dword [ebx + 0x5c0]
jmp 0x7149e2b3
lea eax, [ebp - 0x30]
push eax
push edi
push dword [ebp - 0x38]
push esi
push ebx
call dword [esi + 0x80]
mov esi, dword [esi + 0x58]
add esp, 0x14
test esi, esi
jne 0x7149e29d
mov eax, dword [ebx + 0x1a44]
mov esi, eax
and esi, 0x12000
je 0x7149e44b
mov ecx, dword [ebx + 0x5b8]
test cl, 8
jne 0x7149e2ea
fldz
fst dword [ebx + 0x504]
fst dword [ebx + 0x508]
fstp dword [ebx + 0x50c]
test eax, 0x10000
je 0x7149e354
mov eax, dword [ebp - 0x80]
test eax, eax
je 0x7149e2fe
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x7149e300
xor eax, eax
mov edi, eax
shr edi, 0x10
mov edx, 0xff
and edi, edx
mov dword [ebp - 8], edi
fild dword [ebp - 8]
mov edi, eax
shr edi, 8
fmul dword [ebx + 0x554]
and edi, edx
mov dword [ebp - 8], edi
movzx eax, al
fadd dword [ebx + 0x504]
fstp dword [ebx + 0x504]
fild dword [ebp - 8]
mov dword [ebp - 8], eax
fmul dword [ebx + 0x558]
fadd dword [ebx + 0x508]
fstp dword [ebx + 0x508]
fild dword [ebp - 8]
fmul dword [ebx + 0x55c]
jmp 0x7149e395
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 0x7149e3fc
mov eax, dword [ebp - 0x8c]
test eax, eax
je 0x7149e3bd
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x7149e3bf
xor eax, eax
mov edi, eax
shr edi, 0x10
and edi, edx
mov dword [ebp - 8], edi
fild dword [ebp - 8]
mov edi, eax
shr edi, 8
fadd dword [ebx + 0x504]
and edi, edx
mov dword [ebp - 8], edi
movzx eax, al
fstp dword [ebx + 0x504]
fild dword [ebp - 8]
mov dword [ebp - 8], eax
fadd dword [ebx + 0x508]
fstp dword [ebx + 0x508]
fild dword [ebp - 8]
jmp 0x7149e434
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 0x7149e450
mov edx, 0xff
test byte [ebx + 0x5b8], 8
je 0x7149e552
test esi, esi
jne 0x7149e497
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 - 0xe0]
fld dword [ebx + 0x508]
mov eax, dword [ebp - 0xe0]
fstp dword [ebp - 8]
fld dword [ebp - 8]
fistp qword [ebp - 0x120]
mov ecx, dword [ebp - 0x120]
fld dword [ebx + 0x50c]
fstp dword [ebp - 8]
mov dword [ebp - 0xc], ecx
fld dword [ebp - 8]
fistp qword [ebp - 0xe8]
mov esi, dword [ebp - 0xe8]
test eax, eax
jge 0x7149e4ea
xor eax, eax
jmp 0x7149e4f0
cmp eax, edx
jle 0x7149e4f0
mov eax, edx
test ecx, ecx
jge 0x7149e4fa
and dword [ebp - 0xc], 0
jmp 0x7149e501
cmp ecx, edx
jle 0x7149e501
mov dword [ebp - 0xc], edx
test esi, esi
jge 0x7149e509
xor esi, esi
jmp 0x7149e50f
cmp esi, edx
jle 0x7149e50f
mov esi, edx
mov edi, dword [ebx + 0x1a44]
test edi, 0x4000
jne 0x7149e530
shl eax, 8
add eax, dword [ebp - 0xc]
shl eax, 8
add eax, dword [ebx + 0x510]
add eax, esi
jmp 0x7149e56c
mov ecx, dword [ebp - 0x64]
test ecx, ecx
je 0x7149e53d
mov ecx, dword [ecx]
mov ecx, dword [ecx]
jmp 0x7149e53f
xor ecx, ecx
shl eax, 8
add eax, dword [ebp - 0xc]
and ecx, 0xff000000
shl eax, 8
add eax, esi
jmp 0x7149e58e
mov edi, dword [ebx + 0x1a44]
test edi, 0x4000
jne 0x7149e574
mov eax, dword [ebx + 0x5e8]
add eax, dword [ebx + 0x510]
mov dword [ebx + 0x530], eax
jmp 0x7149e596
mov eax, dword [ebp - 0x64]
test eax, eax
je 0x7149e586
mov eax, dword [eax]
mov eax, dword [eax]
and eax, 0xff000000
jmp 0x7149e588
xor eax, eax
mov ecx, dword [ebx + 0x5e8]
add ecx, eax
mov dword [ebx + 0x530], ecx
test byte [ebx + 0x5b8], 4
je 0x7149e668
fld dword [ebx + 0x524]
fstp dword [ebp - 8]
fld dword [ebp - 8]
fistp qword [ebp - 0x110]
fld dword [ebx + 0x528]
mov eax, dword [ebp - 0x110]
fstp dword [ebp - 8]
fld dword [ebp - 8]
fistp qword [ebp - 0x108]
fld dword [ebx + 0x52c]
mov esi, dword [ebp - 0x108]
fstp dword [ebp - 8]
fld dword [ebp - 8]
fistp qword [ebp - 0xc8]
mov edi, dword [ebp - 0xc8]
test eax, eax
jge 0x7149e5f3
xor eax, eax
jmp 0x7149e5f9
cmp eax, edx
jle 0x7149e5f9
mov eax, edx
test esi, esi
jge 0x7149e601
xor esi, esi
jmp 0x7149e607
cmp esi, edx
jle 0x7149e607
mov esi, edx
cmp dword [ebp - 0xc8], 0
jge 0x7149e614
xor edi, edi
jmp 0x7149e61e
cmp dword [ebp - 0xc8], edx
jle 0x7149e61e
mov edi, edx
test dword [ebx + 0x1a44], 0x8000
jne 0x7149e63f
shl eax, 8
add eax, esi
shl eax, 8
add eax, dword [ebx + 0x5bc]
add eax, edi
jmp 0x7149e6dc
mov ecx, dword [ebp - 0x68]
test ecx, ecx
je 0x7149e64c
mov ecx, dword [ecx]
mov ecx, dword [ecx]
jmp 0x7149e64e
xor ecx, ecx
shl eax, 8
add eax, esi
shl eax, 8
and ecx, 0xff000000
add eax, edi
add ecx, eax
mov dword [ebx + 0x560], ecx
jmp 0x7149e6e2
test edi, 0x100000
jne 0x7149e6e2
test dword [ebx + 0x1a60], 0x800
jne 0x7149e68e
test byte [ebx + 0x1a5c], 0x80
jne 0x7149e6d7
and dword [ebx + 0x560], 0
jmp 0x7149e6e2
test dword [ebx + 0x1a44], 0x8000
jne 0x7149e6a2
mov eax, dword [ebx + 0x5bc]
jmp 0x7149e6dc
mov eax, dword [ebp - 0x68]
test eax, eax
je 0x7149e6b4
mov eax, dword [eax]
mov eax, dword [eax]
and eax, 0xff000000
jmp 0x7149e6dc
xor eax, eax
jmp 0x7149e6dc
mov eax, dword [ebx + 0x1a5c]
fstp st(0)
test al, 0xc0
je 0x7149e6e2
test al, 0x40
je 0x7149e6d3
mov ecx, dword [ebp - 0x44]
mov ecx, dword [ecx]
mov dword [ebx + 0x530], ecx
test al, al
jns 0x7149e6e2
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov dword [ebx + 0x560], eax
test dword [ebx + 0x1a44], 0x100
je 0x7149e6fe
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x38]
push ebx
call fcn.71492c10
add esp, 0xc
test byte [ebp - 0x3c], 1
je 0x7149eaa7
mov ecx, dword [ebp - 0x7c]
fld dword [ebp - 0x48]
fstp dword [ecx]
fld dword [ebp - 0x50]
fstp dword [ecx + 4]
fld dword [ebp - 0x4c]
fstp dword [ecx + 8]
fld dword [ebp + 8]
fstp dword [ecx + 0xc]
mov eax, dword [ebx + 0x1cd0]
add eax, ecx
lea ecx, [ebx + 0x1a6c]
test byte [ecx], 0x40
je 0x7149e740
mov edx, dword [ebx + 0x530]
mov dword [eax], edx
add eax, 4
test byte [ecx], 0x80
je 0x7149e750
mov ecx, dword [ebx + 0x560]
mov dword [eax], ecx
add eax, 4
test dword [ebx + 0x1a44], 0x10000000
jne 0x7149ea9e
mov ecx, dword [ebx + 0x1a60]
test ecx, 0x8000000
je 0x7149e916
test dword [ebp - 0x5c], 0x200000
mov dword [ebp - 0xc], eax
jne 0x7149ea97
test ecx, 0x4010000
jne 0x7149e7cf
xor esi, esi
cmp dword [ebx + 0x1a88], esi
jbe 0x7149ea9e
lea eax, [ebx + 0x1ad8]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
mov edi, dword [eax]
push edi
push dword [ebp + esi*4 - 0xac]
push dword [ebp - 0xc]
call sub.msvcrt.dll_memcpy
add dword [ebp - 0xc], edi
add dword [ebp - 4], 4
add esp, 0xc
inc esi
cmp esi, dword [ebx + 0x1a88]
jae 0x7149ea9e
jmp 0x7149e7a1
test ecx, 0x10000
jne 0x7149e84c
xor esi, esi
cmp dword [ebx + 0x1a88], esi
jbe 0x7149ea9e
lea edi, [ebx + 0x1c30]
lea eax, [edi - 0x138]
mov ecx, dword [eax - 0x20]
mov eax, dword [eax]
mov dword [ebp - 4], ecx
mov ecx, dword [edi]
test ecx, ecx
jne 0x7149e813
push dword [ebp - 4]
push dword [ebp + esi*4 - 0xac]
push dword [ebp - 0xc]
call sub.msvcrt.dll_memcpy
jmp 0x7149e831
mov edx, dword [ebp - 4]
push ecx
push dword [ebp - 0xc]
shr edx, 2
push dword [ebp + esi*4 - 0xac]
shr eax, 2
lea eax, [eax + edx*4]
call dword [eax*4 + 0x714bf23c]
mov eax, dword [ebp - 4]
add dword [ebp - 0xc], eax
add esp, 0xc
inc esi
add edi, 4
cmp esi, dword [ebx + 0x1a88]
jae 0x7149ea9e
jmp 0x7149e7eb
and dword [ebp - 0x14], 0
cmp dword [ebx + 0x1c2c], 0
mov dword [ebp - 0xc], eax
jbe 0x7149ea9e
lea eax, [ebx + 0x1ad8]
mov dword [ebp - 4], eax
lea esi, [ebx + 0x1b48]
mov eax, dword [esi]
test eax, eax
jne 0x7149e881
mov eax, dword [esi - 0x1c]
mov ecx, dword [ebp + eax*4 - 0xac]
jmp 0x7149e8cb
cmp eax, 0x20000
jne 0x7149e88d
lea ecx, [ebp - 0x30]
jmp 0x7149e8cb
cmp eax, 0x10000
jne 0x7149e899
lea ecx, [ebp - 0x24]
jmp 0x7149e8cb
test dword [ebx + 0x1a60], 0x1000000
lea eax, [ebp - 0x12c]
push eax
lea eax, [ebp - 0x24]
push eax
je 0x7149e8be
lea eax, [ebp - 0x30]
push eax
call fcn.71491e76
add esp, 0xc
jmp 0x7149e8c5
call fcn.71491ee4
pop ecx
pop ecx
lea ecx, [ebp - 0x12c]
mov eax, dword [ebp - 4]
mov edi, dword [eax]
mov eax, dword [esi - 8]
test eax, eax
je 0x7149e8e8
mov edx, dword [esi - 4]
push eax
push dword [ebp - 0xc]
push ecx
call dword [edx*4 + 0x714bf250]
jmp 0x7149e8f2
push edi
push ecx
push dword [ebp - 0xc]
call sub.msvcrt.dll_memcpy
add dword [ebp - 0xc], edi
add dword [ebp - 4], 4
add esp, 0xc
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
add esi, 0x20
cmp eax, dword [ebx + 0x1c2c]
jae 0x7149ea9e
jmp 0x7149e86f
test dword [ebp - 0x5c], 0x200000
jne 0x7149ea97
test ecx, 0x4010000
jne 0x7149e945
push dword [ebx + 0x1a8c]
push dword [ebp - 0xac]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
jmp 0x7149ea9e
mov dword [ebp - 0x10], eax
test ecx, 0x10000
jne 0x7149e9d5
mov ecx, dword [ebp - 0xac]
and dword [ebp - 4], 0
cmp dword [ebx + 0x1a88], 0
mov dword [ebp - 0xc], ecx
jbe 0x7149ea9e
lea esi, [ebx + 0x1c30]
lea eax, [esi - 0x138]
mov edi, dword [eax - 0x20]
mov eax, dword [eax]
mov dword [ebp - 8], eax
mov eax, dword [esi]
test eax, eax
je 0x7149e9a6
mov edx, dword [ebp - 8]
push eax
push dword [ebp - 0x10]
mov ecx, edi
push dword [ebp - 0xc]
shr ecx, 2
shr edx, 2
lea ecx, [edx + ecx*4]
call dword [ecx*4 + 0x714bf23c]
jmp 0x7149e9b2
push edi
push dword [ebp - 0xc]
push dword [ebp - 0x10]
call sub.msvcrt.dll_memcpy
mov eax, dword [ebp - 8]
add dword [ebp - 0xc], eax
add dword [ebp - 0x10], edi
add esp, 0xc
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
add esi, 4
cmp eax, dword [ebx + 0x1a88]
jae 0x7149ea9e
jmp 0x7149e974
and dword [ebp - 0x14], 0
cmp dword [ebx + 0x1c2c], 0
jbe 0x7149ea9e
lea eax, [ebx + 0x1ad8]
mov dword [ebp - 4], eax
lea esi, [ebx + 0x1b48]
mov eax, dword [esi]
test eax, eax
jne 0x7149ea06
mov eax, dword [esi - 0x18]
add eax, dword [ebp - 0xac]
jmp 0x7149ea50
cmp eax, 0x20000
jne 0x7149ea12
lea eax, [ebp - 0x30]
jmp 0x7149ea50
cmp eax, 0x10000
jne 0x7149ea1e
lea eax, [ebp - 0x24]
jmp 0x7149ea50
test dword [ebx + 0x1a60], 0x1000000
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0x24]
push eax
je 0x7149ea43
lea eax, [ebp - 0x30]
push eax
call fcn.71491e76
add esp, 0xc
jmp 0x7149ea4a
call fcn.71491ee4
pop ecx
pop ecx
lea eax, [ebp - 0x150]
mov ecx, dword [ebp - 4]
mov edi, dword [ecx]
mov ecx, dword [esi - 8]
test ecx, ecx
je 0x7149ea6d
mov edx, dword [esi - 4]
push ecx
push dword [ebp - 0x10]
push eax
call dword [edx*4 + 0x714bf250]
jmp 0x7149ea77
push edi
push eax
push dword [ebp - 0x10]
call sub.msvcrt.dll_memcpy
add dword [ebp - 0x10], edi
add dword [ebp - 4], 4
add esp, 0xc
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
add esi, 0x20
cmp eax, dword [ebx + 0x1c2c]
jae 0x7149ea9e
jmp 0x7149e9f5
fldz
fst dword [eax]
fstp dword [eax + 4]
mov eax, dword [ebx + 0x1a64]
add dword [ebp - 0x7c], eax
test byte [ebp - 0x3c], 2
je 0x7149ee62
mov ecx, dword [ebx + 0x1cd8]
mov eax, dword [ebp - 0x40]
test dword [eax + 0x10], ecx
jne 0x7149ead7
fld dword [ebp - 0x48]
fstp dword [eax + 0x1c]
fld dword [ebp - 0x50]
fstp dword [eax + 0x20]
fld dword [ebp - 0x4c]
fstp dword [eax + 0x24]
fld dword [ebp + 8]
fstp dword [eax + 0x28]
mov ecx, dword [ebx + 0x530]
mov dword [eax + 0x14], ecx
mov ecx, dword [ebx + 0x560]
mov dword [eax + 0x18], ecx
test dword [ebx + 0x1a44], 0x10000000
jne 0x7149ee62
mov ecx, dword [ebx + 0x1a60]
test ecx, 0x8000000
je 0x7149ecc1
mov eax, dword [ebp - 0x40]
add eax, 0x30
test dword [ebp - 0x5c], 0x200000
mov dword [ebp - 0xc], eax
jne 0x7149ecb5
test ecx, 0x4010000
jne 0x7149eb6e
xor esi, esi
cmp dword [ebx + 0x1a88], esi
jbe 0x7149ee62
lea eax, [ebx + 0x1ad8]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
mov edi, dword [eax]
push edi
push dword [ebp + esi*4 - 0xac]
push dword [ebp - 0xc]
call sub.msvcrt.dll_memcpy
add dword [ebp - 0xc], edi
add dword [ebp - 4], 4
add esp, 0xc
inc esi
cmp esi, dword [ebx + 0x1a88]
jae 0x7149ee62
jmp 0x7149eb40
test ecx, 0x10000
jne 0x7149ebeb
xor esi, esi
cmp dword [ebx + 0x1a88], esi
jbe 0x7149ee62
lea edi, [ebx + 0x1c30]
lea eax, [edi - 0x138]
mov ecx, dword [eax - 0x20]
mov eax, dword [eax]
mov dword [ebp - 4], ecx
mov ecx, dword [edi]
test ecx, ecx
jne 0x7149ebb2
push dword [ebp - 4]
push dword [ebp + esi*4 - 0xac]
push dword [ebp - 0xc]
call sub.msvcrt.dll_memcpy
jmp 0x7149ebd0
mov edx, dword [ebp - 4]
push ecx
push dword [ebp - 0xc]
shr edx, 2
push dword [ebp + esi*4 - 0xac]
shr eax, 2
lea eax, [eax + edx*4]
call dword [eax*4 + 0x714bf23c]
mov eax, dword [ebp - 4]
add dword [ebp - 0xc], eax
add esp, 0xc
inc esi
add edi, 4
cmp esi, dword [ebx + 0x1a88]
jae 0x7149ee62
jmp 0x7149eb8a
and dword [ebp - 0x14], 0
cmp dword [ebx + 0x1c2c], 0
mov dword [ebp - 0x10], eax
jbe 0x7149ee62
lea eax, [ebx + 0x1ad8]
mov dword [ebp - 4], eax
lea esi, [ebx + 0x1b48]
mov eax, dword [esi]
test eax, eax
jne 0x7149ec20
mov eax, dword [esi - 0x1c]
mov ecx, dword [ebp + eax*4 - 0xac]
jmp 0x7149ec6a
cmp eax, 0x20000
jne 0x7149ec2c
lea ecx, [ebp - 0x30]
jmp 0x7149ec6a
cmp eax, 0x10000
jne 0x7149ec38
lea ecx, [ebp - 0x24]
jmp 0x7149ec6a
test dword [ebx + 0x1a60], 0x1000000
lea eax, [ebp - 0x168]
push eax
lea eax, [ebp - 0x24]
push eax
je 0x7149ec5d
lea eax, [ebp - 0x30]
push eax
call fcn.71491e76
add esp, 0xc
jmp 0x7149ec64
call fcn.71491ee4
pop ecx
pop ecx
lea ecx, [ebp - 0x168]
mov eax, dword [ebp - 4]
mov edi, dword [eax]
mov eax, dword [esi - 8]
test eax, eax
je 0x7149ec87
mov edx, dword [esi - 4]
push eax
push dword [ebp - 0x10]
push ecx
call dword [edx*4 + 0x714bf250]
jmp 0x7149ec91
push edi
push ecx
push dword [ebp - 0x10]
call sub.msvcrt.dll_memcpy
add dword [ebp - 0x10], edi
add dword [ebp - 4], 4
add esp, 0xc
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
add esi, 0x20
cmp eax, dword [ebx + 0x1c2c]
jae 0x7149ee62
jmp 0x7149ec0e
fldz
fst dword [eax]
fstp dword [eax + 4]
jmp 0x7149ee62
test dword [ebp - 0x5c], 0x200000
jne 0x7149ee57
test ecx, 0x4010000
jne 0x7149ecf6
push dword [ebx + 0x1a8c]
mov eax, dword [ebp - 0x40]
push dword [ebp - 0xac]
add eax, 0x30
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
jmp 0x7149ee62
test ecx, 0x10000
jne 0x7149ed8c
mov eax, dword [ebp - 0xac]
and dword [ebp - 4], 0
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x40]
add eax, 0x30
cmp dword [ebx + 0x1a88], 0
mov dword [ebp - 0xc], eax
jbe 0x7149ee62
lea esi, [ebx + 0x1c30]
lea eax, [esi - 0x138]
mov edi, dword [eax - 0x20]
mov eax, dword [eax]
mov dword [ebp - 8], eax
mov eax, dword [esi]
test eax, eax
je 0x7149ed5d
mov edx, dword [ebp - 8]
push eax
push dword [ebp - 0xc]
mov ecx, edi
push dword [ebp - 0x10]
shr ecx, 2
shr edx, 2
lea ecx, [edx + ecx*4]
call dword [ecx*4 + 0x714bf23c]
jmp 0x7149ed69
push edi
push dword [ebp - 0x10]
push dword [ebp - 0xc]
call sub.msvcrt.dll_memcpy
mov eax, dword [ebp - 8]
add dword [ebp - 0x10], eax
add dword [ebp - 0xc], edi
add esp, 0xc
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
add esi, 4
cmp eax, dword [ebx + 0x1a88]
jae 0x7149ee62
jmp 0x7149ed2b
mov eax, dword [ebp - 0x40]
and dword [ebp - 0x14], 0
add eax, 0x30
cmp dword [ebx + 0x1c2c], 0
mov dword [ebp - 0x10], eax
jbe 0x7149ee62
lea eax, [ebx + 0x1ad8]
mov dword [ebp - 4], eax
lea esi, [ebx + 0x1b48]
mov eax, dword [esi]
test eax, eax
jne 0x7149edc6
mov eax, dword [esi - 0x18]
add eax, dword [ebp - 0xac]
jmp 0x7149ee10
cmp eax, 0x20000
jne 0x7149edd2
lea eax, [ebp - 0x30]
jmp 0x7149ee10
cmp eax, 0x10000
jne 0x7149edde
lea eax, [ebp - 0x24]
jmp 0x7149ee10
test dword [ebx + 0x1a60], 0x1000000
lea eax, [ebp - 0x144]
push eax
lea eax, [ebp - 0x24]
push eax
je 0x7149ee03
lea eax, [ebp - 0x30]
push eax
call fcn.71491e76
add esp, 0xc
jmp 0x7149ee0a
call fcn.71491ee4
pop ecx
pop ecx
lea eax, [ebp - 0x144]
mov ecx, dword [ebp - 4]
mov edi, dword [ecx]
mov ecx, dword [esi - 8]
test ecx, ecx
je 0x7149ee2d
mov edx, dword [esi - 4]
push ecx
push dword [ebp - 0x10]
push eax
call dword [edx*4 + 0x714bf250]
jmp 0x7149ee37
push edi
push eax
push dword [ebp - 0x10]
call sub.msvcrt.dll_memcpy
add dword [ebp - 0x10], edi
add dword [ebp - 4], 4
add esp, 0xc
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
add esi, 0x20
cmp eax, dword [ebx + 0x1c2c]
jae 0x7149ee62
jmp 0x7149edb5
fldz
mov eax, dword [ebp - 0x40]
fst dword [eax + 0x30]
fstp dword [eax + 0x34]
test byte [ebp - 0x3c], 0x10
je 0x7149ee6d
inc dword [ebp - 0x58]
jmp 0x7149eed3
cmp dword [ebp - 0x58], 0
jle 0x7149eeb3
mov eax, dword [ebp - 0x58]
push eax
lea esi, [eax + 1]
push esi
push dword [ebp - 0x88]
push 3
push ebx
call fcn.71497551
add esp, 0x14
mov dword [ebp - 0xb0], eax
test eax, eax
jne 0x714a001f
mov eax, dword [ebx + 0x1a64]
add dword [ebx + 0x1a48], esi
imul eax, esi
add dword [ebp - 0x88], eax
and dword [ebp - 0x58], 0
test byte [ebp - 0x3c], 8
je 0x7149eed3
push dword [ebp - 0x40]
push dword [ebp - 0xb8]
push ebx
call fcn.714977ed
add esp, 0xc
test eax, eax
jne 0x714a001f
mov esi, dword [ebp - 0x74]
add dword [ebp - 0x38], esi
test dword [ebx + 0x1a60], 0x8000000
je 0x7149ef33
test dword [ebx + 0x1a44], 0x40000000
jne 0x7149ef4e
mov eax, dword [ebx + 0x1a30]
add dword [ebp - 0x54], eax
mov eax, dword [ebx + 0x1a38]
add dword [ebp - 0x44], eax
mov eax, dword [ebx + 0x1a94]
add dword [ebp - 0x34], eax
xor edx, edx
lea eax, [ebx + 0x1a84]
cmp dword [eax], edx
jbe 0x7149ef4e
mov eax, dword [eax]
lea ecx, [ebx + 0x1a9c]
mov edi, dword [ecx]
add dword [ebp + edx*4 - 0xac], edi
inc edx
add ecx, 8
cmp edx, eax
jae 0x7149ef4e
jmp 0x7149ef20
test dword [ebx + 0x1a44], 0x40000000
jne 0x7149ef4e
add dword [ebp - 0x54], esi
add dword [ebp - 0x44], esi
add dword [ebp - 0x34], esi
add dword [ebp - 0xac], esi
mov eax, dword [ebp - 0x40]
add dword [ebp - 0x78], esi
inc dword [ebp - 0x60]
shr dword [ebp - 0x3c], 5
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x40], eax
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0xb4]
cmp dword [ebp - 0x60], eax
jb 0x7149ef8a
inc eax
cmp dword [ebp - 0x60], eax
jae 0x714a001f
mov edx, dword [ebp - 0x40]
jmp 0x7149de17
cmp dword [ebp - 0x84], 0
jne 0x7149ddcc
cmp dword [ebp - 0x58], 1
jne 0x7149ddcc
mov esi, dword [ebp - 0x78]
fld dword [ebx + 0x4c4]
fmul dword [esi]
mov eax, dword [ebx + 0x1cb4]
fld dword [esi + 4]
mov edi, dword [ebp - 0x54]
fmul dword [ebx + 0x4d4]
faddp st(1)
fld dword [esi + 8]
fmul dword [ebx + 0x4e4]
faddp st(1)
fadd dword [ebx + 0x4f4]
fstp dword [ebp - 0x48]
fld dword [ebx + 0x4c8]
fmul dword [esi]
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 - 0x50]
fld dword [ebx + 0x4cc]
fmul dword [esi]
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 - 0x4c]
fld dword [ebx + 0x4e0]
fmul dword [esi + 4]
fld dword [ebx + 0x4d0]
fmul dword [esi]
faddp st(1)
fld dword [ebx + 0x4f0]
fmul dword [esi + 8]
faddp st(1)
fadd dword [ebx + 0x500]
fstp dword [ebp + 8]
fldz
test eax, eax
je 0x7149f180
fst dword [ebp - 0xc]
xor ecx, ecx
fld dword [ebp - 0x48]
fstp dword [ebp - 4]
fld dword [ebp - 0x50]
fstp dword [ebp - 0x14]
fld dword [ebp - 0x4c]
fstp dword [ebp - 0x10]
fld dword [ebp + 8]
fstp dword [ebp - 8]
fst dword [ebp - 0x48]
fst dword [ebp - 0x50]
fst dword [ebp - 0x4c]
fst dword [ebp + 8]
test eax, eax
jbe 0x7149f13f
mov edx, eax
lea eax, [ebx + 0x224]
fld dword [esi + ecx*4 + 0xc]
inc ecx
fstp dword [ebp - 0x18]
fld dword [ebp - 0x18]
fld st(0)
fmul dword [ebp - 4]
fadd dword [ebp - 0x48]
fstp dword [ebp - 0x48]
fld st(0)
fmul dword [ebp - 0x14]
fadd dword [ebp - 0x50]
fstp dword [ebp - 0x50]
fld st(0)
fmul dword [ebp - 0x10]
fadd dword [ebp - 0x4c]
fstp dword [ebp - 0x4c]
fld st(0)
fmul dword [ebp - 8]
fadd dword [ebp + 8]
fstp dword [ebp + 8]
fadd dword [ebp - 0xc]
fstp dword [ebp - 0xc]
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 - 0x14]
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]
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 - 8]
cmp ecx, edx
jb 0x7149f08c
fld dword [ebp - 0xc]
fld1
fsubrp st(1)
fstp dword [ebp - 0xc]
fld dword [ebp - 4]
fld dword [ebp - 0xc]
fld st(0)
fmulp st(2)
fld dword [ebp - 0x48]
faddp st(2)
fxch st(1)
fstp dword [ebp - 0x48]
fld dword [ebp - 0x14]
fld st(1)
fmulp st(1)
fadd dword [ebp - 0x50]
fstp dword [ebp - 0x50]
fld dword [ebp - 0x10]
fld st(1)
fmulp st(1)
fadd dword [ebp - 0x4c]
fstp dword [ebp - 0x4c]
fmul dword [ebp - 8]
fadd dword [ebp + 8]
fstp dword [ebp + 8]
fld dword [ebp + 8]
mov ecx, dword [ebp - 0x48]
fld st(0)
shr ecx, 1
fld dword [ebp - 0x48]
fld st(0)
fsubp st(2)
fxch st(1)
fstp dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
and eax, 0xbfffffff
fld st(1)
fld dword [ebp - 0x50]
or ecx, eax
fld st(0)
shr ecx, 1
fsubp st(2)
fxch st(1)
fstp dword [ebp - 8]
mov eax, dword [ebp - 8]
and eax, 0x9fffffff
fld st(2)
fsub dword [ebp - 0x4c]
or ecx, eax
mov eax, dword [ebp - 0x50]
shr ecx, 1
and eax, 0x8fffffff
fstp dword [ebp - 4]
or ecx, eax
mov eax, dword [ebp - 0x4c]
shr ecx, 1
and eax, 0x87ffffff
or ecx, eax
mov eax, dword [ebp - 4]
shr ecx, 1
and eax, 0x83ffffff
or ecx, eax
mov eax, dword [ebx + 0x1cb8]
shr ecx, 0x1a
test eax, eax
je 0x7149f240
mov dword [ebp - 8], 0x40
jbe 0x7149f240
lea edx, [ebx + 0x1c54]
mov dword [ebp - 4], eax
fld dword [edx - 4]
fld st(2)
fmulp st(1)
fld dword [edx]
fld st(2)
fmulp st(1)
faddp st(1)
fld dword [edx + 4]
fmul dword [ebp - 0x4c]
faddp st(1)
fld dword [edx + 8]
fld st(4)
fmulp st(1)
faddp st(1)
fcomp qword [0x7141be80]
fnstsw ax
test ah, 5
jp 0x7149f235
or ecx, dword [ebp - 8]
shl dword [ebp - 8], 1
add edx, 0x10
dec dword [ebp - 4]
jne 0x7149f205
mov eax, dword [ebp - 0x6c]
fxch st(1)
and dword [eax + 0x10], 0
fst dword [eax]
fxch st(1)
fst dword [eax + 4]
fld dword [ebp - 0x4c]
fstp dword [eax + 8]
fxch st(2)
fst dword [eax + 0xc]
test ecx, ecx
jne 0x7149ff9e
add esi, dword [ebp - 0x74]
fstp st(0)
fstp st(0)
fstp st(0)
mov dword [ebp - 0x78], esi
mov eax, dword [ebp - 0x40]
fld dword [eax + 0xc]
mov edx, dword [ebx + 0x1a60]
fld1
inc dword [ebp - 0x58]
fld st(0)
fdivrp st(2)
fxch st(1)
fstp dword [ebp + 8]
fld dword [eax]
fmul dword [ebp + 8]
fmul dword [ebx + 0x5fc]
fadd dword [ebx + 0x604]
fstp dword [ebp - 0x48]
fld dword [eax + 4]
fmul dword [ebp + 8]
fmul dword [ebx + 0x600]
fadd dword [ebx + 0x608]
fstp dword [ebp - 0x50]
fld dword [ebp - 0x48]
fld dword [ebp - 0x50]
test edx, 0x100000
jne 0x7149f318
lea ecx, [ebx + 0x1b1c]
fld dword [ecx]
fcomp st(2)
fnstsw ax
test ah, 0x41
jne 0x7149f2d7
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 0x7149f2ee
fxch st(1)
fstp dword [ecx]
jmp 0x7149f2f0
fstp st(1)
lea ecx, [ebx + 0x1b20]
fld dword [ecx]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x7149f303
fst dword [ecx]
lea ecx, [ebx + 0x1b28]
fld dword [ecx]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x7149f31a
fstp dword [ecx]
jmp 0x7149f31c
fstp st(1)
fstp st(0)
mov eax, dword [ebp - 0x40]
fld dword [eax + 8]
xor ecx, ecx
fmul dword [ebx + 0x60c]
test edx, 0x20000000
mov edx, dword [ebp - 0x38]
mov dword [ebx + 0x5b8], ecx
fmul dword [ebp + 8]
fadd dword [ebx + 0x610]
fstp dword [ebp - 0x4c]
je 0x7149f4c3
fld dword [ebx + 0x454]
mov eax, dword [ebx + 0x1cb4]
fmul dword [edx + 4]
fld dword [ebx + 0x444]
fmul dword [edx]
faddp st(1)
fld dword [ebx + 0x464]
fmul dword [edx + 8]
faddp st(1)
fadd dword [ebx + 0x474]
fstp dword [ebp - 0x30]
fld dword [ebx + 0x458]
fmul dword [edx + 4]
fld dword [ebx + 0x448]
fmul dword [edx]
faddp st(1)
fld dword [ebx + 0x468]
fmul dword [edx + 8]
faddp st(1)
fadd dword [ebx + 0x478]
fstp dword [ebp - 0x2c]
fld dword [ebx + 0x45c]
fmul dword [edx + 4]
fld dword [ebx + 0x44c]
fmul dword [edx]
faddp st(1)
fld dword [ebx + 0x46c]
fmul dword [edx + 8]
faddp st(1)
fadd dword [ebx + 0x47c]
fstp dword [ebp - 0x28]
cmp eax, ecx
je 0x7149f4b9
fxch st(1)
fst dword [ebp - 0xc]
fld dword [ebp - 0x30]
fstp dword [ebp - 8]
fld dword [ebp - 0x2c]
fstp dword [ebp - 4]
fld dword [ebp - 0x28]
fstp dword [ebp - 0x14]
fst dword [ebp - 0x30]
fst dword [ebp - 0x2c]
fst dword [ebp - 0x28]
jbe 0x7149f489
mov esi, eax
lea eax, [ebx + 0x2e4]
fld dword [edx + ecx*4 + 0xc]
inc ecx
fstp dword [ebp - 0x18]
fld dword [ebp - 0x18]
fld st(0)
fmul dword [ebp - 8]
fadd dword [ebp - 0x30]
fstp dword [ebp - 0x30]
fld st(0)
fmul dword [ebp - 4]
fadd dword [ebp - 0x2c]
fstp dword [ebp - 0x2c]
fld st(0)
fmul dword [ebp - 0x14]
fadd dword [ebp - 0x28]
fstp dword [ebp - 0x28]
fadd dword [ebp - 0xc]
fstp dword [ebp - 0xc]
fld dword [eax - 0x20]
fmul dword [edx]
fld dword [eax - 0x10]
fmul dword [edx + 4]
faddp st(1)
fld dword [edx + 8]
fmul dword [eax]
add eax, 0x40
faddp st(1)
fadd dword [eax - 0x30]
fstp dword [ebp - 8]
fld dword [eax - 0x5c]
fmul dword [edx]
fld dword [eax - 0x4c]
fmul dword [edx + 4]
faddp st(1)
fld dword [eax - 0x3c]
fmul dword [edx + 8]
faddp st(1)
fadd dword [eax - 0x2c]
fstp dword [ebp - 4]
fld dword [eax - 0x58]
fmul dword [edx]
fld dword [eax - 0x48]
fmul dword [edx + 4]
faddp st(1)
fld dword [eax - 0x38]
fmul dword [edx + 8]
faddp st(1)
fadd dword [eax - 0x28]
fstp dword [ebp - 0x14]
cmp ecx, esi
jb 0x7149f3fc
fld dword [ebp - 0xc]
fld st(2)
fsubrp st(1)
fstp dword [ebp - 0xc]
fld dword [ebp - 8]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x30]
fstp dword [ebp - 0x30]
fld dword [ebp - 4]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x2c]
fstp dword [ebp - 0x2c]
fld dword [ebp - 0x14]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x28]
fstp dword [ebp - 0x28]
fxch st(1)
mov dword [ebx + 0x5b8], 1
test dword [ebx + 0x1a60], 0x40000000
je 0x7149f647
fld dword [ebx + 0x484]
mov eax, dword [ebx + 0x1cb4]
fmul dword [edi]
fld dword [ebx + 0x488]
fmul dword [edi + 4]
faddp st(1)
fld dword [ebx + 0x48c]
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 0x24]
fld dword [ebx + 0x494]
fmul dword [edi]
fld dword [ebx + 0x498]
fmul dword [edi + 4]
faddp st(1)
fld dword [ebx + 0x49c]
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 0x20]
fld dword [ebx + 0x4a4]
fmul dword [edi]
fld dword [ebx + 0x4a8]
fmul dword [edi + 4]
faddp st(1)
fld dword [ebx + 0x4ac]
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 0x1c]
test eax, eax
je 0x7149f622
fxch st(1)
xor ecx, ecx
fst dword [ebp - 0xc]
fld dword [ebp - 0x24]
fstp dword [ebp - 8]
fld dword [ebp - 0x20]
fstp dword [ebp - 4]
fld dword [ebp - 0x1c]
fstp dword [ebp - 0x14]
fst dword [ebp - 0x24]
fst dword [ebp - 0x20]
fstp dword [ebp - 0x1c]
test eax, eax
jbe 0x7149f5f6
mov esi, eax
lea eax, [ebx + 0x38c]
fld dword [edx + ecx*4 + 0xc]
inc ecx
fstp dword [ebp - 0x18]
fld dword [ebp - 0x18]
fld st(0)
fmul dword [ebp - 8]
fadd dword [ebp - 0x24]
fstp dword [ebp - 0x24]
fld st(0)
fmul dword [ebp - 4]
fadd dword [ebp - 0x20]
fstp dword [ebp - 0x20]
fld st(0)
fmul dword [ebp - 0x14]
fadd dword [ebp - 0x1c]
fstp dword [ebp - 0x1c]
fadd dword [ebp - 0xc]
fstp dword [ebp - 0xc]
fld dword [eax - 4]
fmul dword [edi + 4]
fld dword [eax - 8]
fmul dword [edi]
faddp st(1)
fld dword [eax]
add eax, 0x40
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 8]
fld dword [eax - 0x34]
fmul dword [edi + 4]
fld dword [eax - 0x38]
fmul dword [edi]
faddp st(1)
fld dword [eax - 0x30]
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 4]
fld dword [eax - 0x24]
fmul dword [edi + 4]
fld dword [eax - 0x28]
fmul dword [edi]
faddp st(1)
fld dword [eax - 0x20]
fmul dword [edi + 8]
faddp st(1)
fstp dword [ebp - 0x14]
cmp ecx, esi
jb 0x7149f576
fsub dword [ebp - 0xc]
fstp dword [ebp - 0xc]
fld dword [ebp - 8]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x24]
fstp dword [ebp - 0x24]
fld dword [ebp - 4]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x20]
fstp dword [ebp - 0x20]
fld dword [ebp - 0x14]
fmul dword [ebp - 0xc]
fadd dword [ebp - 0x1c]
fstp dword [ebp - 0x1c]
jmp 0x7149f626
fstp st(1)
fstp st(0)
test dword [ebx + 0x1a60], 0x2000000
je 0x7149f63c
lea edx, [ebp - 0x24]
mov ecx, edx
call fcn.7140c2d7
or dword [ebx + 0x5b8], 2
fldz
jmp 0x7149f649
fstp st(0)
mov ecx, dword [ebx + 0x1a44]
test ecx, 0x400
je 0x7149fb01
fst dword [ebx + 0x504]
fst dword [ebx + 0x508]
fst dword [ebx + 0x50c]
fst dword [ebx + 0x524]
fst dword [ebx + 0x528]
fstp dword [ebx + 0x52c]
test ecx, 0x200
je 0x7149f6de
test ecx, 0x10000
je 0x7149f6a4
mov eax, dword [ebp - 0x80]
test eax, eax
je 0x7149f69c
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x7149f69e
xor eax, eax
mov dword [ebx + 0x540], eax
test ecx, 0x4000
je 0x7149f6c1
mov eax, dword [ebp - 0x64]
test eax, eax
je 0x7149f6b9
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x7149f6bb
xor eax, eax
mov dword [ebx + 0x550], eax
test ecx, 0x8000
je 0x7149f6de
mov eax, dword [ebp - 0x68]
test eax, eax
je 0x7149f6d6
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x7149f6d8
xor eax, eax
mov dword [ebx + 0x570], eax
mov esi, dword [ebx + 0x5c0]
jmp 0x7149f6fc
lea eax, [ebp - 0x30]
push eax
push edi
push dword [ebp - 0x38]
push esi
push ebx
call dword [esi + 0x80]
mov esi, dword [esi + 0x58]
add esp, 0x14
test esi, esi
jne 0x7149f6e6
mov eax, dword [ebx + 0x1a44]
mov esi, eax
and esi, 0x12000
je 0x7149f894
mov ecx, dword [ebx + 0x5b8]
test cl, 8
jne 0x7149f733
fldz
fst dword [ebx + 0x504]
fst dword [ebx + 0x508]
fstp dword [ebx + 0x50c]
test eax, 0x10000
je 0x7149f79d
mov eax, dword [ebp - 0x80]
test eax, eax
je 0x7149f747
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x7149f749
xor eax, eax
mov edi, eax
shr edi, 0x10
mov edx, 0xff
and edi, edx
mov dword [ebp - 0x18], edi
fild dword [ebp - 0x18]
mov edi, eax
shr edi, 8
fmul dword [ebx + 0x554]
and edi, edx
mov dword [ebp - 0x18], edi
movzx eax, al
fadd dword [ebx + 0x504]
fstp dword [ebx + 0x504]
fild dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
fmul dword [ebx + 0x558]
fadd dword [ebx + 0x508]
fstp dword [ebx + 0x508]
fild dword [ebp - 0x18]
fmul dword [ebx + 0x55c]
jmp 0x7149f7de
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 0x7149f845
mov eax, dword [ebp - 0x8c]
test eax, eax
je 0x7149f806
mov eax, dword [eax]
mov eax, dword [eax]
jmp 0x7149f808
xor eax, eax
mov edi, eax
shr edi, 0x10
and edi, edx
mov dword [ebp - 0x18], edi
fild dword [ebp - 0x18]
mov edi, eax
shr edi, 8
fadd dword [ebx + 0x504]
and edi, edx
mov dword [ebp - 0x18], edi
movzx eax, al
fstp dword [ebx + 0x504]
fild dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
fadd dword [ebx + 0x508]
fstp dword [ebx + 0x508]
fild dword [ebp - 0x18]
jmp 0x7149f87d
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 0x7149f899
mov edx, 0xff
test byte [ebx + 0x5b8], 8
je 0x7149f99b
test esi, esi
jne 0x7149f8e0
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 - 0x18]
fld dword [ebp - 0x18]
fistp qword [ebp - 0xf8]
fld dword [ebx + 0x508]
mov eax, dword [ebp - 0xf8]
fstp dword [ebp - 0x18]
fld dword [ebp - 0x18]
fistp qword [ebp - 0x118]
mov ecx, dword [ebp - 0x118]
fld dword [ebx + 0x50c]
fstp dword [ebp - 0x18]
mov dword [ebp - 0x10], ecx
fld dword [ebp - 0x18]
fistp qword [ebp - 0xd8]
mov esi, dword [ebp - 0xd8]
test eax, eax
jge 0x7149f933
xor eax, eax
jmp 0x7149f939
cmp eax, edx
jle 0x7149f939
mov eax, edx
test ecx, ecx
jge 0x7149f943
and dword [ebp - 0x10], 0
jmp 0x7149f94a
cmp ecx, edx
jle 0x7149f94a
mov dword [ebp - 0x10], edx
test esi, esi
jge 0x7149f952
xor esi, esi
jmp 0x7149f958
cmp esi, edx
jle 0x7149f958
mov esi, edx
mov edi, dword [ebx + 0x1a44]
test edi, 0x4000
jne 0x7149f979
shl eax, 8
add eax, dword [ebp - 0x10]
shl eax, 8
add eax, dword [ebx + 0x510]
add eax, esi
jmp 0x7149f9b5
mov ecx, dword [ebp - 0x64]
test ecx, ecx
je 0x7149f986
mov ecx, dword [ecx]
mov ecx, dword [ecx]
jmp 0x7149f988
xor ecx, ecx
shl eax, 8
add eax, dword [ebp - 0x10]
and ecx, 0xff000000
shl eax, 8
add eax, esi
jmp 0x7149f9d7
mov edi, dword [ebx + 0x1a44]
test edi, 0x4000
jne 0x7149f9bd
mov eax, dword [ebx + 0x5e8]
add eax, dword [ebx + 0x510]
mov dword [ebx + 0x530], eax
jmp 0x7149f9df
mov eax, dword [ebp - 0x64]
test eax, eax
je 0x7149f9cf
mov eax, dword [eax]
mov eax, dword [eax]
and eax, 0xff000000
jmp 0x7149f9d1
xor eax, eax
mov ecx, dword [ebx + 0x5e8]
add ecx, eax
mov dword [ebx + 0x530], ecx
test byte [ebx + 0x5b8], 4
je 0x7149fab1
fld dword [ebx + 0x524]
fstp dword [ebp - 0x18]
fld dword [ebp - 0x18]
fistp qword [ebp - 0xf0]
fld dword [ebx + 0x528]
mov eax, dword [ebp - 0xf0]
fstp dword [ebp - 0x18]
fld dword [ebp - 0x18]
fistp qword [ebp - 0x100]
fld dword [ebx + 0x52c]
mov esi, dword [ebp - 0x100]
fstp dword [ebp - 0x18]
fld dword [ebp - 0x18]
fistp qword [ebp - 0xc0]
mov edi, dword [ebp - 0xc0]
test eax, eax
jge 0x7149fa3c
xor eax, eax
jmp 0x7149fa42
cmp eax, edx
jle 0x7149fa42
mov eax, edx
test esi, esi
jge 0x7149fa4a
xor esi, esi
jmp 0x7149fa50
cmp esi, edx
jle 0x7149fa50
mov esi, edx
cmp dword [ebp - 0xc0], 0
jge 0x7149fa5d
xor edi, edi
jmp 0x7149fa67
cmp dword [ebp - 0xc0], edx
jle 0x7149fa67
mov edi, edx
test dword [ebx + 0x1a44], 0x8000
jne 0x7149fa88
shl eax, 8
add eax, esi
shl eax, 8
add eax, dword [ebx + 0x5bc]
add eax, edi
jmp 0x7149fb25
mov ecx, dword [ebp - 0x68]
test ecx, ecx
je 0x7149fa95
mov ecx, dword [ecx]
mov ecx, dword [ecx]
jmp 0x7149fa97
xor ecx, ecx
shl eax, 8
add eax, esi
shl eax, 8
and ecx, 0xff000000
add eax, edi
add ecx, eax
mov dword [ebx + 0x560], ecx
jmp 0x7149fb2b
test edi, 0x100000
jne 0x7149fb2b
test dword [ebx + 0x1a60], 0x800
jne 0x7149fad7
test byte [ebx + 0x1a5c], 0x80
jne 0x7149fb20
and dword [ebx + 0x560], 0
jmp 0x7149fb2b
test dword [ebx + 0x1a44], 0x8000
jne 0x7149faeb
mov eax, dword [ebx + 0x5bc]
jmp 0x7149fb25
mov eax, dword [ebp - 0x68]
test eax, eax
je 0x7149fafd
mov eax, dword [eax]
mov eax, dword [eax]
and eax, 0xff000000
jmp 0x7149fb25
xor eax, eax
jmp 0x7149fb25
mov eax, dword [ebx + 0x1a5c]
fstp st(0)
test al, 0xc0
je 0x7149fb2b
test al, 0x40
je 0x7149fb1c
mov ecx, dword [ebp - 0x44]
mov ecx, dword [ecx]
mov dword [ebx + 0x530], ecx
test al, al
jns 0x7149fb2b
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov dword [ebx + 0x560], eax
test dword [ebx + 0x1a44], 0x100
je 0x7149fb47
lea eax, [ebp - 0x30]
push eax
push dword [ebp - 0x38]
push ebx
call fcn.71492c10
add esp, 0xc
mov ecx, dword [ebp - 0x7c]
fld dword [ebp - 0x48]
fstp dword [ecx]
fld dword [ebp - 0x50]
fstp dword [ecx + 4]
fld dword [ebp - 0x4c]
fstp dword [ecx + 8]
fld dword [ebp + 8]
fstp dword [ecx + 0xc]
mov eax, dword [ebx + 0x1cd0]
add eax, ecx
test byte [ebx + 0x1a6c], 0x40
je 0x7149fb7d
mov ecx, dword [ebx + 0x530]
mov dword [eax], ecx
add eax, 4
test byte [ebx + 0x1a6c], 0x80
je 0x7149fb91
mov ecx, dword [ebx + 0x560]
mov dword [eax], ecx
add eax, 4
test dword [ebx + 0x1a44], 0x10000000
jne 0x7149fee2
mov ecx, dword [ebx + 0x1a60]
test ecx, 0x8000000
je 0x7149fd57
test dword [ebp - 0x5c], 0x200000
mov dword [ebp + 8], eax
jne 0x7149fedb
test ecx, 0x4010000
jne 0x7149fc10
xor esi, esi
cmp dword [ebx + 0x1a88], esi
jbe 0x7149fee2
lea eax, [ebx + 0x1ad8]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov edi, dword [eax]
push edi
push dword [ebp + esi*4 - 0xac]
push dword [ebp + 8]
call sub.msvcrt.dll_memcpy
add dword [ebp + 8], edi
add dword [ebp - 8], 4
add esp, 0xc
inc esi
cmp esi, dword [ebx + 0x1a88]
jae 0x7149fee2
jmp 0x7149fbe2
test ecx, 0x10000
jne 0x7149fc8d
xor esi, esi
cmp dword [ebx + 0x1a88], esi
jbe 0x7149fee2
lea edi, [ebx + 0x1c30]
lea eax, [edi - 0x138]
mov ecx, dword [eax - 0x20]
mov eax, dword [eax]
mov dword [ebp - 8], ecx
mov ecx, dword [edi]
test ecx, ecx
jne 0x7149fc54
push dword [ebp - 8]
push dword [ebp + esi*4 - 0xac]
push dword [ebp + 8]
call sub.msvcrt.dll_memcpy
jmp 0x7149fc72
mov edx, dword [ebp - 8]
push ecx
push dword [ebp + 8]
shr edx, 2
push dword [ebp + esi*4 - 0xac]
shr eax, 2
lea eax, [eax + edx*4]
call dword [eax*4 + 0x714bf23c]
mov eax, dword [ebp - 8]
add dword [ebp + 8], eax
add esp, 0xc
inc esi
add edi, 4
cmp esi, dword [ebx + 0x1a88]
jae 0x7149fee2
jmp 0x7149fc2c
and dword [ebp - 4], 0
cmp dword [ebx + 0x1c2c], 0
mov dword [ebp + 8], eax
jbe 0x7149fee2
lea eax, [ebx + 0x1ad8]
mov dword [ebp - 8], eax
lea esi, [ebx + 0x1b48]
mov eax, dword [esi]
test eax, eax
jne 0x7149fcc2
mov eax, dword [esi - 0x1c]
mov ecx, dword [ebp + eax*4 - 0xac]
jmp 0x7149fd0c
cmp eax, 0x20000
jne 0x7149fcce
lea ecx, [ebp - 0x30]
jmp 0x7149fd0c
cmp eax, 0x10000
jne 0x7149fcda
lea ecx, [ebp - 0x24]
jmp 0x7149fd0c
test dword [ebx + 0x1a60], 0x1000000
lea eax, [ebp - 0x15c]
push eax
lea eax, [ebp - 0x24]
push eax
je 0x7149fcff
lea eax, [ebp - 0x30]
push eax
call fcn.71491e76
add esp, 0xc
jmp 0x7149fd06
call fcn.71491ee4
pop ecx
pop ecx
lea ecx, [ebp - 0x15c]
mov eax, dword [ebp - 8]
mov edi, dword [eax]
mov eax, dword [esi - 8]
test eax, eax
je 0x7149fd29
mov edx, dword [esi - 4]
push eax
push dword [ebp + 8]
push ecx
call dword [edx*4 + 0x714bf250]
jmp 0x7149fd33
push edi
push ecx
push dword [ebp + 8]
call sub.msvcrt.dll_memcpy
add dword [ebp + 8], edi
add dword [ebp - 8], 4
add esp, 0xc
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
add esi, 0x20
cmp eax, dword [ebx + 0x1c2c]
jae 0x7149fee2
jmp 0x7149fcb0
test dword [ebp - 0x5c], 0x200000
jne 0x7149fedb
test ecx, 0x4010000
jne 0x7149fd86
push dword [ebx + 0x1a8c]
push dword [ebp - 0xac]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
jmp 0x7149fee2
test ecx, 0x10000
jne 0x7149fe16
mov ecx, dword [ebp - 0xac]
and dword [ebp - 8], 0
cmp dword [ebx + 0x1a88], 0
mov dword [ebp + 8], ecx
mov dword [ebp - 0x10], eax
jbe 0x7149fee2
lea esi, [ebx + 0x1c30]
lea eax, [esi - 0x138]
mov edi, dword [eax - 0x20]
mov eax, dword [eax]
mov dword [ebp - 4], eax
mov eax, dword [esi]
test eax, eax
je 0x7149fde7
mov edx, dword [ebp - 4]
push eax
push dword [ebp - 0x10]
mov ecx, edi
push dword [ebp + 8]
shr ecx, 2
shr edx, 2
lea ecx, [edx + ecx*4]
call dword [ecx*4 + 0x714bf23c]
jmp 0x7149fdf3
push edi
push dword [ebp + 8]
push dword [ebp - 0x10]
call sub.msvcrt.dll_memcpy
mov eax, dword [ebp - 4]
add dword [ebp + 8], eax
add dword [ebp - 0x10], edi
add esp, 0xc
inc dword [ebp - 8]
mov eax, dword [ebp - 8]
add esi, 4
cmp eax, dword [ebx + 0x1a88]
jae 0x7149fee2
jmp 0x7149fdb5
and dword [ebp - 4], 0
cmp dword [ebx + 0x1c2c], 0
mov dword [ebp + 8], eax
jbe 0x7149fee2
lea eax, [ebx + 0x1ad8]
mov dword [ebp - 8], eax
lea esi, [ebx + 0x1b48]
mov eax, dword [esi]
test eax, eax
jne 0x7149fe4a
mov eax, dword [esi - 0x18]
add eax, dword [ebp - 0xac]
jmp 0x7149fe94
cmp eax, 0x20000
jne 0x7149fe56
lea eax, [ebp - 0x30]
jmp 0x7149fe94
cmp eax, 0x10000
jne 0x7149fe62
lea eax, [ebp - 0x24]
jmp 0x7149fe94
test dword [ebx + 0x1a60], 0x1000000
lea eax, [ebp - 0x138]
push eax
lea eax, [ebp - 0x24]
push eax
je 0x7149fe87
lea eax, [ebp - 0x30]
push eax
call fcn.71491e76
add esp, 0xc
jmp 0x7149fe8e
call fcn.71491ee4
pop ecx
pop ecx
lea eax, [ebp - 0x138]
mov ecx, dword [ebp - 8]
mov edi, dword [ecx]
mov ecx, dword [esi - 8]
test ecx, ecx
je 0x7149feb1
mov edx, dword [esi - 4]
push ecx
push dword [ebp + 8]
push eax
call dword [edx*4 + 0x714bf250]
jmp 0x7149febb
push edi
push eax
push dword [ebp + 8]
call sub.msvcrt.dll_memcpy
add dword [ebp + 8], edi
add dword [ebp - 8], 4
add esp, 0xc
inc dword [ebp - 4]
mov eax, dword [ebp - 4]
add esi, 0x20
cmp eax, dword [ebx + 0x1c2c]
jae 0x7149fee2
jmp 0x7149fe39
fldz
fst dword [eax]
fstp dword [eax + 4]
mov eax, dword [ebx + 0x1a64]
add dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x2c]
inc dword [ebp - 0x60]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x74]
add dword [ebp - 0x38], eax
test dword [ebx + 0x1a60], 0x8000000
je 0x7149ff60
test dword [ebx + 0x1a44], 0x40000000
jne 0x7149ff7b
mov eax, dword [ebx + 0x1a30]
add dword [ebp - 0x54], eax
mov eax, dword [ebx + 0x1a38]
add dword [ebp - 0x44], eax
mov eax, dword [ebx + 0x1a94]
add dword [ebp - 0x34], eax
xor edx, edx
lea eax, [ebx + 0x1a84]
cmp dword [eax], edx
jbe 0x7149ff7b
mov eax, dword [eax]
lea ecx, [ebx + 0x1a9c]
mov esi, dword [ecx]
add dword [ebp + edx*4 - 0xac], esi
inc edx
add ecx, 8
cmp edx, eax
jae 0x7149ff7b
jmp 0x7149ff4d
test dword [ebx + 0x1a44], 0x40000000
jne 0x7149ff7b
add dword [ebp - 0x54], eax
add dword [ebp - 0x44], eax
add dword [ebp - 0x34], eax
add dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xb4]
cmp dword [ebp - 0x60], eax
jb 0x7149efa1
inc eax
cmp dword [ebp - 0x60], eax
jae 0x714a001f
fldz
mov edi, dword [ebp - 0x54]
jmp 0x7149f26f
fstp st(3)
fmul dword [ebx + 0x634]
fld dword [ebx + 0x63c]
fld st(3)
fmulp st(1)
faddp st(1)
fstp dword [ebp - 8]
mov edx, dword [ebp - 8]
shr edx, 1
fmul dword [ebx + 0x638]
and edx, 0x40000000
fld dword [ebx + 0x640]
fld st(2)
fmulp st(1)
faddp st(1)
fstp dword [ebp - 4]
fld st(0)
fsub dword [ebp - 8]
fstp dword [ebp - 0x18]
mov esi, dword [ebp - 0x18]
and esi, 0x8003ffff
fsub dword [ebp - 4]
or edx, esi
shr edx, 1
fstp dword [ebp - 0x14]
mov esi, dword [ebp - 0x14]
and esi, 0x8001ffff
or edx, esi
mov esi, dword [ebp - 4]
shr edx, 1
and esi, 0x8000ffff
or edx, esi
shr edx, 0x10
or ecx, edx
or dword [ebp - 0x84], ecx
or dword [ebp - 0x3c], 0x11
mov dword [eax + 0x10], ecx
jmp 0x7149dde4
mov eax, dword [ebp - 0x58]
pop edi
test eax, eax
jle 0x714a0049
push eax
lea esi, [eax + 1]
push esi
push dword [ebp - 0x88]
push 3
push ebx
call fcn.71497551
add esp, 0x14
add dword [ebx + 0x1a48], esi
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0x84]
mov dword [ebx + 0x680], eax
test dword [ebx + 0x1a60], 0x100000
mov eax, dword [ebp - 0x70]
mov dword [ebx + 0x684], eax
jne 0x714a0132
fld dword [ebx + 0x1b24]
lea ecx, [ebx + 0x624]
fadd dword [ebx + 0x68c]
fstp dword [ebx + 0x1b24]
fld dword [ebx + 0x1b28]
fadd dword [ebx + 0x68c]
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 0x714a00d5
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 0x714a00f4
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 0x714a0113
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 0x714a0132
fld dword [ecx]
fstp dword [ebx + 0x1b28]
push dword [ebp - 0xcc]
push ebx
call fcn.71498f18
mov eax, dword [ebp - 0xb0]
pop ecx
pop ecx
pop esi
pop ebx
leave
ret 4