Function at 0x1006e290
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x124
mov eax, dword [0x101e9b30]
mov ecx, dword [eax + 0x1994]
mov edx, dword [ebp + 8]
push ebx
push esi
push edi
mov edi, eax
add eax, 0x1994
mov byte [ecx + 0x7c], 1
mov eax, dword [eax]
mov esi, dword [eax + 0x274]
push edx
mov dword [esp + 0x78], edi
mov dword [esp + 0xf4], eax
call fcn.1004b630
add esp, 4
call fcn.1004b7f0
mov ebx, dword [ebp + 0x10]
test ebx, 0x100
jne 0x1006e2ea
or ebx, 0x10
mov dword [ebp + 0x10], ebx
test bl, 8
jne 0x1006e2fc
mov eax, dword [ebp + 0xc]
push ebx
push eax
call fcn.1006fd60
add esp, 8
test ebx, 0x6000000
jne 0x1006e320
mov eax, dword [edi + 0x2bd8]
test eax, 0x6000000
jne 0x1006e316
mov eax, 0x2900000
and eax, 0x6000000
or ebx, eax
mov dword [ebp + 0x10], ebx
test bl, 8
jne 0x1006e336
mov ecx, dword [edi + 0x2bd8]
and ecx, 0x10000
or ebx, ecx
mov dword [ebp + 0x10], ebx
mov eax, ebx
and eax, 2
mov edi, eax
neg edi
sbb edi, edi
add edi, 4
test ebx, 0x10000
mov dword [esp + 0x1c], eax
je 0x1006e359
test eax, eax
mov byte [esp + 0x27], 1
je 0x1006e35e
mov byte [esp + 0x27], 0
mov eax, dword [esp + 0xf0]
mov edx, dword [eax + 0xc8]
mov dword [esp + 0x48], edx
mov eax, dword [eax + 0xcc]
mov dword [esp + 0x4c], eax
call fcn.10040d70
fstp dword [esp + 0x60]
call fcn.10051080
mov ecx, dword [esp + 0x74]
fld dword [ecx + 0x155c]
xor edx, edx
cmp byte [esp + 0x27], dl
fld dword [esp + 0x60]
fld st(0)
setne dl
faddp st(2)
add edx, 1
mov dword [esp + 0x7c], edx
fild dword [esp + 0x7c]
fmulp st(2)
fxch st(2)
fsubrp st(1)
fstp dword [esp + 0x7c]
fld dword [esp + 0x7c]
fcom st(1)
fnstsw ax
test ah, 0x41
jp 0x1006e3cc
fstp st(0)
fst dword [esp + 0x3c]
jmp 0x1006e3d0
fstp dword [esp + 0x3c]
fld dword [esp + 0x48]
mov eax, ecx
fadd dword [esp + 0x3c]
fadd dword [eax + 0x155c]
fstp dword [esp + 0x80]
fld dword [esp + 0x80]
fadd st(1)
fst qword [esp + 0xc0]
fadd dword [eax + 0x155c]
fstp dword [esp + 0xd0]
fmul qword [0x101a6aa0]
call fcn.101185e0
mov dword [esp + 0x7c], eax
fild dword [esp + 0x7c]
add edi, edi
add edi, edi
push edi
mov dword [esp + 0x80], edi
fstp dword [esp + 0xf0]
mov edi, dword [ebp + 0xc]
lea eax, [esp + 0x124]
push edi
push eax
call fcn.10118d70
fld dword [esp + 0x48]
fld qword [0x101a7dc8]
add esp, 0xc
fmul st(1)
fstp dword [esp + 0x64]
fld st(0)
fld qword [0x101a4158]
fmul st(1), st(0)
fxch st(1)
fst dword [esp + 0x18]
fld dword [esp + 0x18]
fsub dword [esp + 0x64]
fstp dword [esp + 0x94]
fld st(2)
fadd dword [esp + 0x60]
fmulp st(2)
fld dword [esp + 0x48]
faddp st(2)
fxch st(1)
fstp dword [esp + 0xb0]
fadd dword [esp + 0x4c]
fstp dword [esp + 0xb4]
fld dword [esp + 0x94]
fst qword [esp + 0x50]
fxch st(1)
fmul qword [0x101a7dc0]
call fcn.101185e0
mov dword [esp + 0xc], eax
fisub dword [esp + 0xc]
lea edx, [esp + 0x84]
push edx
lea edx, [esp + 0x8c]
push edx
lea edx, [esp + 0x64]
lea eax, [edi + 8]
fstp dword [esp + 0x14]
lea ecx, [edi + 4]
fld dword [esp + 0x14]
push edx
fst dword [esp + 0xf0]
mov dword [esp + 0x7c], eax
fldz
mov dword [esp + 0x74], ecx
fstp dword [esp + 0xf4]
sub esp, 0xc
fld qword [0x101a7db8]
fmul st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fst dword [esp + 0xf4]
fld st(1)
fmul qword [0x101a7db0]
fstp dword [esp + 0xf8]
fstp dword [esp + 0xec]
fmul qword [0x101a7da8]
fstp dword [esp + 0xf0]
fld dword [eax]
fstp dword [esp + 8]
fld dword [ecx]
fstp dword [esp + 4]
fld dword [edi]
fstp dword [esp]
call fcn.10044630
push 1
push 8
mov byte [esp + 0x37], 0
mov byte [esp + 0x5b], 0
mov byte [esp + 0x5a], 0
call fcn.1004b280
mov eax, ebx
add esp, 0x20
and eax, 0x4000000
mov dword [esp + 0x10], eax
je 0x1006e8b4
mov edi, dword [esp + 0x74]
fld dword [edi + 0x155c]
lea eax, [esp + 0x28]
fld dword [esp + 0x3c]
push eax
fld st(0)
push 0x101a7da0
faddp st(2)
fld dword [esp + 0x68]
faddp st(2)
fxch st(1)
fstp dword [esp + 0x30]
fstp dword [esp + 0x34]
call fcn.100570f0
add esp, 8
call fcn.1003fd20
test al, al
je 0x1006e897
fld dword [edi + 0x390]
fld dword [esp + 0xb0]
fld st(0)
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x98]
fld dword [edi + 0x394]
fld dword [esp + 0xb4]
fld st(0)
fsubp st(2)
fxch st(1)
fstp dword [esp + 0x9c]
fld dword [edi + 0xf0]
fsubrp st(2)
fxch st(1)
fstp dword [esp + 0x8c]
fsubr dword [edi + 0xf4]
fstp dword [esp + 0x90]
fld dword [esp + 0x98]
fld dword [esp + 0x9c]
fmul st(0), st(0)
fld st(1)
fmulp st(2)
faddp st(1)
fstp dword [esp + 0xc]
fld dword [esp + 0x94]
fst qword [esp + 0x50]
fld1
fsub st(1), st(0)
fld dword [esp + 0xc]
fld st(2)
fmulp st(3)
fcom st(2)
fnstsw ax
fstp st(2)
test ah, 1
jne 0x1006e6a7
fadd dword [esp + 0x18]
fmul st(0), st(0)
fcompp
fnstsw ax
test ah, 1
jne 0x1006e6ab
fld dword [esp + 0x90]
fld dword [esp + 0x8c]
call fcn.1011c3ba
fstp dword [esp + 0xc]
fld dword [esp + 0xc]
fdiv qword [0x101a7d98]
fmul qword [0x101a4158]
fstp dword [esp + 0x5c]
fldz
fld dword [esp + 0x5c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 5
jp 0x1006e699
fadd qword [0x101a5210]
mov byte [esp + 0x3b], 1
mov byte [esp + 0x17], 1
fstp dword [esp + 0x5c]
jmp 0x1006e6ab
fstp st(0)
mov byte [esp + 0x3b], 1
mov byte [esp + 0x17], 1
jmp 0x1006e6ab
fstp st(1)
fstp st(0)
fld dword [esp + 0x5c]
fchs
fadd st(0), st(0)
fmul qword [0x101a7d98]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
call fcn.1011a200
fstp dword [esp + 0xc]
fld dword [esp + 0xc]
fstp dword [esp + 0xc]
fld dword [esp + 0x20]
call fcn.1011a330
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
lea ecx, [esp + 0x28]
fstp dword [esp + 0x20]
push ecx
fld dword [esp + 0x9c]
lea edx, [esp + 0xd8]
fld st(0)
push edx
fld dword [esp + 0x14]
lea eax, [esp + 0xe4]
fld st(0)
push eax
fmulp st(2)
lea ecx, [esp + 0xf0]
fld dword [esp + 0xa8]
push ecx
fld st(0)
fld dword [esp + 0x30]
fld st(0)
fmulp st(2)
fxch st(4)
fsubrp st(1)
fstp dword [esp + 0x38]
fxch st(3)
fmulp st(2)
fmulp st(2)
faddp st(1)
fstp dword [esp + 0x3c]
call fcn.1003d990
add esp, 0x10
test al, al
je 0x1006e897
fld dword [esp + 0xc]
lea edx, [esp + 0x98]
fld st(0)
push edx
fld dword [esp + 0x90]
lea eax, [esp + 0xd8]
fld st(0)
push eax
fmulp st(2)
lea ecx, [esp + 0xe4]
fld dword [esp + 0x28]
push ecx
fld st(0)
lea edx, [esp + 0xf0]
fld dword [esp + 0x9c]
push edx
fld st(0)
fmulp st(2)
fxch st(4)
fsubrp st(1)
fstp dword [esp + 0xa8]
fxch st(3)
fmulp st(2)
fmulp st(2)
faddp st(1)
fstp dword [esp + 0xac]
call fcn.1003d990
add esp, 0x10
test al, al
jne 0x1006e7f2
lea eax, [esp + 0x98]
push eax
lea ecx, [esp + 0xd8]
push ecx
lea edx, [esp + 0xe4]
push edx
lea eax, [esp + 0xf0]
push eax
lea ecx, [esp + 0x38]
push ecx
call fcn.10044420
mov edx, dword [eax]
mov dword [esp + 0xac], edx
mov eax, dword [eax + 4]
add esp, 0x14
mov dword [esp + 0x9c], eax
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0xa4]
push ecx
lea edx, [esp + 0xe4]
push edx
lea eax, [esp + 0xf0]
push eax
lea ecx, [esp + 0xfc]
push ecx
call fcn.1003da40
fld1
fstp dword [esp + 0x18]
add esp, 0x10
fld dword [0x101a7d94]
fstp dword [esp + 4]
fld dword [esp + 0x18]
fld1
fsubrp st(1)
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
call fcn.10058ed0
fstp dword [esp + 0x90]
fld1
fstp dword [esp + 8]
fld dword [0x101a7d94]
fstp dword [esp + 4]
fld dword [esp + 0x2c]
fdiv dword [esp + 0x90]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fstp dword [esp]
call fcn.10058ed0
fstp dword [esp + 0x94]
add esp, 0xc
mov byte [esp + 0x3a], 1
mov byte [esp + 0x17], 1
test bl, 8
jne 0x1006e9ef
push 1
push str.context
call fcn.1004bc70
add esp, 8
jmp 0x1006e9f3
test ebx, 0x2000000
je 0x1006e9ef
fld dword [esp + 0x3c]
lea edx, [esp + 0x28]
push edx
fst dword [esp + 0x2c]
push 0x101a7d90
fstp dword [esp + 0x34]
call fcn.100570f0
add esp, 8
call fcn.1003fd20
test al, al
je 0x1006e953
fld dword [esp + 0x3c]
mov ecx, dword [esp + 0x74]
fsub qword [0x101a5210]
push ecx
fst qword [esp + 0x2c]
fld dword [ecx + 0xf0]
fsub dword [esp + 0x4c]
fdivrp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.10056540
fstp dword [esp + 0x8c]
fld dword [ecx + 0xf4]
fsub dword [esp + 0x50]
fdiv qword [esp + 0x2c]
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.10056540
fld1
fsubrp st(1)
add esp, 4
mov byte [esp + 0x3a], 1
mov byte [esp + 0x17], 1
fstp dword [esp + 0x84]
test bl, 8
jne 0x1006e967
push 1
push str.context
call fcn.1004bc70
add esp, 8
fld dword [esp + 0x80]
lea eax, [esp + 0x28]
fstp dword [esp + 0x28]
push eax
fld dword [esp + 0x50]
fstp dword [esp + 0x30]
call fcn.10040fe0
fld dword [esp + 0x64]
lea ecx, [esp + 0x2c]
fstp dword [esp + 0x2c]
push ecx
fld dword [esp + 0x44]
push 0x101a7d8c
fstp dword [esp + 0x38]
call fcn.100570f0
add esp, 0xc
call fcn.1003fd20
test al, al
je 0x1006e9ef
mov edx, dword [esp + 0x74]
fld dword [edx + 0xf4]
push ecx
fsub dword [esp + 0x50]
fld dword [esp + 0x40]
fsub qword [0x101a5210]
fdivp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp]
call fcn.10056540
fstp dword [esp + 0x60]
add esp, 4
mov byte [esp + 0x3b], 1
mov byte [esp + 0x17], 1
mov edi, edx
jmp 0x1006e9f3
mov edi, dword [esp + 0x74]
cmp byte [esp + 0x27], 0
je 0x1006ea95
fld dword [esp + 0xd0]
lea eax, [esp + 0x28]
fstp dword [esp + 0x28]
push eax
fld dword [esp + 0x50]
fstp dword [esp + 0x30]
call fcn.10040fe0
fld dword [esp + 0x64]
lea ecx, [esp + 0x2c]
fstp dword [esp + 0x2c]
push ecx
fld dword [esp + 0x44]
push str.alpha
fstp dword [esp + 0x38]
call fcn.100570f0
add esp, 0xc
call fcn.1003fd20
test al, al
je 0x1006ea95
fld dword [edi + 0xf4]
fsub dword [esp + 0x4c]
fld dword [esp + 0x3c]
fld1
fsub st(1), st(0)
fxch st(2)
fdivrp st(1)
fstp dword [esp + 0xc]
fldz
fld dword [esp + 0xc]
fcom st(1)
fnstsw ax
test ah, 5
jnp 0x1006ea80
fstp st(1)
fld1
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1006ea80
fstp st(1)
jmp 0x1006ea82
fstp st(0)
mov edx, dword [ebp + 0xc]
fstp dword [esp + 0x20]
mov byte [esp + 0x17], 1
fsub dword [esp + 0x20]
fstp dword [edx + 0xc]
call fcn.100466d0
mov eax, ebx
and eax, 0x100
mov dword [esp + 0xc], eax
jne 0x1006eac6
fld dword [edi + 0x155c]
sub esp, 8
fstp dword [esp + 4]
fldz
fstp dword [esp]
call fcn.100413b0
add esp, 8
call fcn.1004b7f0
mov eax, ebx
and eax, 0x80
mov dword [esp + 0x20], eax
jne 0x1006eb1a
mov eax, dword [ebp + 8]
push 0
push eax
call fcn.1003e910
mov edi, eax
add esp, 8
cmp dword [ebp + 8], edi
je 0x1006eb1a
cmp dword [esp + 0xc], 0
je 0x1006eb0d
mov ecx, dword [esp + 0x74]
fld dword [ecx + 0x155c]
sub esp, 8
fstp dword [esp + 4]
fldz
fstp dword [esp]
call fcn.100413b0
add esp, 8
mov edx, dword [ebp + 8]
push edi
push edx
call fcn.100599d0
add esp, 8
cmp dword [esp + 0xc], 0
jne 0x1006ec90
push 1
push 0x10
call fcn.1004b280
add esp, 8
cmp dword [esp + 0x1c], 0
je 0x1006eb3c
fld1
jmp 0x1006eb42
mov eax, dword [ebp + 0xc]
fld dword [eax + 0xc]
cmp dword [esp + 0x20], 0
fstp dword [esp + 0xc]
mov ecx, dword [ebp + 0xc]
fld dword [ecx]
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x70]
fstp dword [esp + 0x28]
fld dword [edx]
fstp dword [esp + 0x2c]
fld dword [eax]
fstp dword [esp + 0x30]
fld dword [esp + 0xc]
fstp dword [esp + 0x34]
je 0x1006eb7f
push str.Current
call fcn.10061e00
add esp, 4
fld dword [esp + 0x60]
mov eax, ebx
fld qword [0x101a4150]
and eax, 0xe0040
fmul st(1)
mov dword [esp + 0x44], eax
fstp dword [esp + 0xc]
fld dword [esp + 0xc]
fstp dword [esp + 0xb8]
mov edx, dword [esp + 0xb8]
fadd st(0), st(0)
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fstp dword [esp + 0xbc]
mov ecx, dword [esp + 0xbc]
push ecx
push edx
push eax
lea eax, [esp + 0x34]
push eax
push str.current
call fcn.1006a350
mov edi, dword [ebp + 0x14]
add esp, 0x14
test edi, edi
je 0x1006ec86
push str.Original
call fcn.10061e00
add esp, 4
cmp dword [esp + 0x1c], 0
je 0x1006ebfc
fld1
jmp 0x1006ebff
fld dword [edi + 0xc]
fstp dword [esp + 0x1c]
mov eax, dword [esp + 0x44]
fld dword [edi]
fstp dword [esp + 0x98]
fld dword [edi + 4]
fstp dword [esp + 0x9c]
fld dword [edi + 8]
fstp dword [esp + 0xa0]
fld dword [esp + 0x1c]
fstp dword [esp + 0xa4]
fld dword [esp + 0xc]
fstp dword [esp + 0xb8]
mov edx, dword [esp + 0xb8]
fld dword [esp + 0x20]
fstp dword [esp + 0xbc]
mov ecx, dword [esp + 0xbc]
push ecx
push edx
push eax
lea ecx, [esp + 0xa4]
push ecx
push 0x101a7d58
call fcn.1006a350
add esp, 0x14
test al, al
je 0x1006ec86
mov edx, dword [esp + 0x7c]
mov eax, dword [ebp + 0xc]
push edx
push edi
push eax
call fcn.10118d70
add esp, 0xc
mov byte [esp + 0x17], 1
call fcn.100466d0
call fcn.1004b940
cmp byte [esp + 0x3b], 0
jne 0x1006eca2
cmp byte [esp + 0x3a], 0
je 0x1006ed29
fldz
fld dword [esp + 0x84]
fcom st(1)
fnstsw ax
test ah, 0x41
je 0x1006ecbc
fstp st(0)
fld dword [0x101a7a34]
fstp dword [esp + 0x1c]
fld dword [esp + 0x88]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
je 0x1006ecda
fstp st(0)
fld dword [0x101a6ea0]
fstp dword [esp + 0xc]
fld1
fld dword [esp + 0x5c]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 1
jne 0x1006ecf5
fsub qword [0x101a7d50]
mov ecx, dword [esp + 0x70]
fld dword [esp + 0x1c]
mov edx, dword [esp + 0x68]
mov eax, dword [ebp + 0xc]
push ecx
push edx
push eax
sub esp, 0xc
fstp dword [esp + 8]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fstp dword [esp + 0x5c]
fld dword [esp + 0x5c]
fstp dword [esp]
call fcn.1003e600
add esp, 0x18
test bl, 0x20
mov byte [esp + 0x43], 0
jne 0x1006ef45
cmp byte [esp + 0x27], 0
je 0x1006ed47
fld dword [esp + 0xd0]
jmp 0x1006ed4e
fld dword [esp + 0x80]
fstp dword [esp + 0x1c]
push ecx
fld dword [esp + 0x20]
fadd dword [esp + 0x64]
fsub dword [esp + 0x4c]
fstp dword [esp + 0x48]
fld dword [esp + 0x48]
fstp dword [esp]
call fcn.1004b150
mov edi, ebx
and edi, 0x18e001a
add esp, 4
or edi, 4
test ebx, 0x100000
jne 0x1006ed8d
test ebx, 0x700000
jne 0x1006edd0
mov edx, dword [ebp + 0xc]
mov ecx, edi
or ecx, 0x100000
push ecx
push edx
push str.rgb
call fcn.1006d710
add esp, 0xc
test al, al
je 0x1006edd0
mov eax, dword [esp + 0x74]
cmp dword [eax + 0x19b4], 0
je 0x1006edc6
cmp byte [eax + 0x19c5], 0
mov byte [esp + 0x43], 1
je 0x1006edcb
mov byte [esp + 0x43], 0
mov byte [esp + 0x17], 1
test ebx, 0x200000
jne 0x1006ede0
test ebx, 0x700000
jne 0x1006edfd
mov ecx, dword [ebp + 0xc]
mov eax, edi
or eax, 0x200000
push eax
push ecx
push str.hsv
call fcn.1006d710
add esp, 0xc
or byte [esp + 0x17], al
test ebx, 0x400000
jne 0x1006ee0d
test ebx, 0x700000
jne 0x1006ee29
mov edx, dword [ebp + 0xc]
or edi, 0x400000
push edi
push edx
push 0x101a7d38
call fcn.1006d710
add esp, 0xc
or byte [esp + 0x17], al
call fcn.10046600
cmp byte [esp + 0x43], 0
je 0x1006ef45
lea eax, [esp + 0x1c]
push eax
mov eax, dword [esp + 0x74]
fld dword [eax]
lea ecx, [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x70]
lea edx, [esp + 0x4c]
push edx
mov edx, dword [ebp + 0xc]
sub esp, 0xc
fstp dword [esp + 8]
fld dword [ecx]
fstp dword [esp + 4]
fld dword [edx]
fstp dword [esp]
call fcn.10044630
fldz
add esp, 0x18
fcom dword [esp + 0x44]
fnstsw ax
test ah, 1
jne 0x1006ef43
fld dword [esp + 0x5c]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x1006ef41
fld dword [esp + 0x1c]
fcom st(2)
fnstsw ax
test ah, 0x41
jp 0x1006eef5
fld dword [esp + 0x84]
fld st(0)
fld st(2)
fucompp
fnstsw ax
test ah, 0x44
jnp 0x1006eef3
mov eax, dword [esp + 0x70]
fstp st(1)
mov ecx, dword [esp + 0x68]
fstp st(2)
mov edx, dword [ebp + 0xc]
fxch st(1)
fmul qword [0x101a4158]
push eax
push ecx
push edx
fstp dword [esp + 0x18]
sub esp, 0xc
fld dword [esp + 0x24]
fstp dword [esp + 8]
fld dword [esp + 0xa0]
fstp dword [esp + 4]
fstp dword [esp]
call fcn.1003e600
add esp, 0x18
jmp 0x1006ef45
fstp st(0)
fxch st(2)
fcomp dword [esp + 0x20]
fnstsw ax
test ah, 1
jne 0x1006ef41
mov eax, dword [esp + 0x70]
fld dword [esp + 0x88]
fmul qword [0x101a4158]
mov ecx, dword [esp + 0x68]
mov edx, dword [ebp + 0xc]
fxch st(2)
push eax
push ecx
push edx
sub esp, 0xc
fstp dword [esp + 8]
fxch st(1)
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fstp dword [esp]
call fcn.1003e600
add esp, 0x18
jmp 0x1006ef45
fstp st(1)
fstp st(0)
fld1
lea eax, [esp + 0xfc]
push eax
fst dword [esp + 0xf8]
lea ecx, [esp + 0xfc]
fst dword [esp + 0xfc]
push ecx
fst dword [esp + 0x104]
lea edx, [esp + 0xfc]
fst dword [esp + 0x108]
push edx
sub esp, 0xc
fst dword [esp + 8]
fstp dword [esp + 4]
fld dword [esp + 0x74]
fstp dword [esp]
call fcn.1003e600
lea eax, [esp + 0x10c]
push eax
call fcn.1003e460
mov ecx, dword [ebp + 0xc]
fld dword [ecx]
mov edx, dword [esp + 0x84]
fstp dword [esp + 0x44]
mov ebx, eax
fld dword [edx]
mov eax, dword [esp + 0x8c]
fstp dword [esp + 0x48]
lea ecx, [esp + 0x44]
fld dword [eax]
push ecx
fstp dword [esp + 0x50]
fld1
fstp dword [esp + 0x54]
call fcn.1003e460
fldz
mov edi, eax
fst dword [esp + 0xcc]
mov eax, 0xff0000ff
fstp dword [esp + 0xc8]
add esp, 0x20
cmp dword [esp + 0x10], 0
mov dword [esp + 0x70], edi
mov dword [esp + 0x104], eax
mov dword [esp + 0x108], 0xff00ffff
mov dword [esp + 0x10c], 0xff00ff00
mov dword [esp + 0x110], 0xffffff00
mov dword [esp + 0x114], 0xffff0000
mov dword [esp + 0x118], 0xffff00ff
mov dword [esp + 0x11c], eax
je 0x1006f700
fld dword [esp + 0x18]
fld st(0)
fld qword [0x101a7b90]
fdiv st(1)
fstp dword [esp + 0x1c]
fxch st(1)
call fcn.101185e0
mov ecx, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 4
mov dword [esp + 0xc], 4
jle 0x1006f07e
mov dword [esp + 0xc], eax
fadd qword [esp + 0x50]
xor edi, edi
mov dword [esp + 0x18], edi
fst qword [esp + 0xc0]
fmul qword [0x101a4158]
fstp dword [esp + 0x44]
lea esp, [esp]
fld dword [esp + 0x1c]
mov eax, dword [esp + 0xc]
fld qword [0x101a6e40]
mov edx, dword [esi + 0x18]
fild dword [esp + 0x18]
push eax
sub esp, 0xc
lea ecx, [esp + 0xc0]
fstp dword [esp + 0x20]
mov dword [esp + 0x90], edx
fld dword [esp + 0x20]
fld st(0)
fdiv st(2)
fld qword [0x101a4ff8]
fmul st(1), st(0)
fld qword [0x101a7d98]
fmul st(2), st(0)
fld st(5)
fsubp st(3)
fxch st(2)
fstp dword [esp + 0x28]
fxch st(2)
fadd qword [0x101a5210]
fdivrp st(3)
fxch st(2)
fmulp st(1)
fmulp st(1)
faddp st(1)
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fstp dword [esp + 8]
fld dword [esp + 0x28]
fstp dword [esp + 4]
fld dword [esp + 0x54]
fstp dword [esp]
push ecx
mov ecx, esi
call fcn.1007d810
fld dword [esp + 0x64]
mov edx, dword [esi + 0x54]
mov eax, dword [esi + 0x5c]
push ecx
fstp dword [esp]
push 0
push 0xffffffffffffffff
push edx
push eax
mov ecx, esi
call fcn.1007c780
fld dword [esp + 0x18]
mov dword [esi + 0x54], 0
call fcn.1011a200
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fmul dword [esp + 0x94]
fadd dword [esp + 0xb0]
fstp dword [esp + 0x28]
fld dword [esp + 0x18]
call fcn.1011a330
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fmul dword [esp + 0x94]
fadd dword [esp + 0xb4]
fstp dword [esp + 0x2c]
fld dword [esp + 0x20]
call fcn.1011a200
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fmul dword [esp + 0x94]
fadd dword [esp + 0xb0]
fstp dword [esp + 0x50]
fld dword [esp + 0x20]
call fcn.1011a330
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
mov ecx, dword [esp + edi*4 + 0x108]
fmul dword [esp + 0x94]
mov edx, dword [esp + edi*4 + 0x104]
push ecx
fadd dword [esp + 0xb8]
fstp dword [esp + 0x58]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
push edx
mov edx, dword [esp + 0x34]
push eax
mov eax, dword [esp + 0x34]
push ecx
mov ecx, dword [esi + 0x18]
push edx
mov edx, dword [esp + 0x94]
push eax
push ecx
push edx
push esi
call fcn.1007aa80
add edi, 1
add esp, 0x24
cmp edi, 6
mov dword [esp + 0x18], edi
jl 0x1006f0a0
fld dword [esp + 0x5c]
fadd st(0), st(0)
fmul qword [0x101a7d98]
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
call fcn.1011a200
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fstp dword [esp + 0xc]
fld dword [esp + 0x1c]
call fcn.1011a330
fstp dword [esp + 0x10]
cmp byte [esp + 0x3b], 0
fld dword [esp + 0x10]
fstp dword [esp + 0x1c]
fld dword [esp + 0xc]
fld qword [esp + 0xc0]
fmul st(1), st(0)
fld qword [0x101a4158]
fmul st(2), st(0)
fld dword [esp + 0xb0]
faddp st(3)
fxch st(2)
fstp dword [esp + 0xb8]
fmul dword [esp + 0x1c]
fmulp st(1)
fadd dword [esp + 0xb4]
fstp dword [esp + 0xbc]
fld dword [esp + 0x64]
je 0x1006f2a1
fmul qword [0x101a6ec0]
jmp 0x1006f2a7
fmul qword [0x101a7d30]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fld qword [0x101a7d28]
fdivr st(1)
call fcn.101185e0
cmp eax, 9
jge 0x1006f2c8
mov edi, 9
jmp 0x1006f2d4
cmp eax, 0x20
mov edi, 0x20
jg 0x1006f2d4
mov edi, eax
push edi
push ebx
push ecx
lea eax, [esp + 0xc4]
fstp dword [esp]
push eax
mov ecx, esi
call fcn.1007fec0
fld1
push ecx
fstp dword [esp]
fld dword [esp + 0x1c]
push edi
fadd qword [0x101a5210]
push 0xff808080
push ecx
lea ecx, [esp + 0xc8]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fstp dword [esp]
push ecx
mov ecx, esi
call fcn.1007fe30
fld1
push ecx
fstp dword [esp]
fld dword [esp + 0x1c]
push edi
push 0xffffffffffffffff
push ecx
lea edx, [esp + 0xc8]
fstp dword [esp]
push edx
mov ecx, esi
call fcn.1007fe30
fld dword [esp + 0xe4]
fld st(0)
fld dword [esp + 0xc]
fld st(0)
fmulp st(2)
fld dword [esp + 0xe8]
fld st(0)
fld dword [esp + 0x1c]
fld st(0)
fmulp st(2)
fxch st(4)
fsubrp st(1)
fstp dword [esp + 0x28]
fmul st(1)
fld st(2)
fmulp st(4)
faddp st(3)
fxch st(2)
fstp dword [esp + 0x2c]
fld dword [esp + 0x28]
fld dword [esp + 0xb0]
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x74]
fld dword [esp + 0x2c]
fld dword [esp + 0xb4]
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x78]
fld dword [esp + 0xdc]
fld st(0)
fmul st(5)
fld dword [esp + 0xe0]
fmul st(5)
fsubp st(1)
fstp dword [esp + 0x28]
fld dword [esp + 0xe0]
fmul st(5)
fld st(4)
fmulp st(2)
faddp st(1)
fstp dword [esp + 0x2c]
fld dword [esp + 0x28]
fadd st(2)
fstp dword [esp + 0x98]
lea eax, [esp + 0x68]
fld dword [esp + 0x2c]
push eax
fadd st(1)
fstp dword [esp + 0xa0]
fld dword [esp + 0xd8]
fld st(0)
fmul st(5)
fld dword [esp + 0xdc]
fmul st(5)
fsubp st(1)
fstp dword [esp + 0x2c]
fld dword [esp + 0xdc]
fmulp st(5)
fmulp st(3)
fxch st(3)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x30]
fadd dword [esp + 0x2c]
fstp dword [esp + 0x90]
fadd dword [esp + 0x30]
fstp dword [esp + 0x94]
call fcn.10040e00
add esp, 4
push 6
push 6
mov ecx, esi
call fcn.1007c6d0
mov ecx, dword [esi + 0x38]
mov dx, word [esi + 0x30]
mov word [ecx], dx
mov eax, dword [esi + 0x34]
mov ecx, dword [esp + 0x74]
mov edx, 2
add dword [esi + 0x38], edx
mov dword [eax], ecx
mov ecx, dword [esp + 0x78]
mov dword [eax + 4], ecx
mov eax, dword [esi + 0x34]
mov ecx, dword [esp + 0x68]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x6c]
mov dword [eax + 0xc], ecx
mov eax, dword [esi + 0x34]
mov dword [eax + 0x10], ebx
add dword [esi + 0x30], 1
mov eax, dword [esi + 0x38]
mov di, word [esi + 0x30]
mov ecx, 0x14
add dword [esi + 0x34], ecx
mov word [eax], di
mov eax, dword [esi + 0x34]
add dword [esi + 0x38], edx
mov edi, dword [esp + 0x98]
mov dword [eax], edi
mov edi, dword [esp + 0x9c]
mov dword [eax + 4], edi
mov eax, dword [esi + 0x34]
mov edi, dword [esp + 0x68]
mov dword [eax + 8], edi
mov edi, dword [esp + 0x6c]
mov dword [eax + 0xc], edi
mov eax, dword [esi + 0x34]
mov dword [eax + 0x10], ebx
add dword [esi + 0x34], ecx
mov eax, dword [esi + 0x38]
mov edi, 1
add dword [esi + 0x30], edi
movzx ebx, word [esi + 0x30]
mov word [eax], bx
mov eax, dword [esi + 0x34]
mov ebx, dword [esp + 0x8c]
add dword [esi + 0x38], edx
mov dword [eax], ebx
mov ebx, dword [esp + 0x90]
mov dword [eax + 4], ebx
mov eax, dword [esi + 0x34]
mov ebx, dword [esp + 0x68]
mov dword [eax + 8], ebx
mov ebx, dword [esp + 0x6c]
fld dword [0x101a431c]
mov dword [eax + 0xc], ebx
mov eax, dword [esi + 0x34]
mov dword [eax + 0x10], 0xffffffff
add dword [esi + 0x34], ecx
add dword [esi + 0x30], edi
movzx ebx, word [esi + 0x30]
mov eax, dword [esi + 0x38]
mov word [eax], bx
add dword [esi + 0x38], edx
mov eax, dword [esi + 0x34]
mov ebx, dword [esp + 0x74]
mov dword [eax], ebx
mov ebx, dword [esp + 0x78]
mov dword [eax + 4], ebx
mov eax, dword [esi + 0x34]
mov ebx, dword [esp + 0x68]
mov dword [eax + 8], ebx
mov ebx, dword [esp + 0x6c]
mov dword [eax + 0xc], ebx
mov eax, dword [esi + 0x34]
mov dword [eax + 0x10], 0
add dword [esi + 0x34], ecx
add dword [esi + 0x30], edi
movzx ebx, word [esi + 0x30]
mov eax, dword [esi + 0x38]
mov word [eax], bx
add dword [esi + 0x38], edx
mov eax, dword [esi + 0x34]
mov ebx, dword [esp + 0x98]
mov dword [eax], ebx
mov ebx, dword [esp + 0x9c]
mov dword [eax + 4], ebx
mov eax, dword [esi + 0x34]
mov ebx, dword [esp + 0x68]
mov dword [eax + 8], ebx
mov ebx, dword [esp + 0x6c]
mov dword [eax + 0xc], ebx
mov eax, dword [esi + 0x34]
mov dword [eax + 0x10], 0xff000000
add dword [esi + 0x34], ecx
add dword [esi + 0x30], edi
movzx ebx, word [esi + 0x30]
mov eax, dword [esi + 0x38]
mov word [eax], bx
add dword [esi + 0x38], edx
mov eax, dword [esi + 0x34]
mov edx, dword [esp + 0x8c]
mov dword [eax], edx
mov edx, dword [esp + 0x90]
mov dword [eax + 4], edx
mov eax, dword [esi + 0x34]
mov edx, dword [esp + 0x68]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x6c]
mov dword [eax + 0xc], edx
mov eax, dword [esi + 0x34]
push ecx
mov dword [eax + 0x10], 0
add dword [esi + 0x34], ecx
add dword [esi + 0x30], edi
fstp dword [esp]
push 0xff808080
lea ecx, [esp + 0x94]
push ecx
lea edx, [esp + 0xa4]
push edx
lea eax, [esp + 0x84]
push eax
mov ecx, esi
call fcn.1007fd70
fld dword [esp + 0x84]
fld1
fsubrp st(1)
fstp dword [esp + 0x10]
fldz
fld dword [esp + 0x10]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1006f62a
fstp st(0)
fst dword [esp + 0x20]
fld1
jmp 0x1006f643
fld1
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1006f63d
fstp st(1)
fst dword [esp + 0x20]
jmp 0x1006f643
fxch st(1)
fstp dword [esp + 0x20]
fld dword [esp + 0x88]
fcom st(2)
fnstsw ax
test ah, 5
jp 0x1006f6ea
fstp st(0)
fstp st(0)
fstp dword [esp + 0x18]
fld dword [esp + 0x74]
fld dword [esp + 0x8c]
fld st(0)
fsubp st(2)
fld dword [esp + 0x18]
fld st(0)
fmulp st(3)
fxch st(2)
faddp st(1)
fstp dword [esp + 0x28]
fld dword [esp + 0x78]
fld dword [esp + 0x90]
fld st(0)
fsubp st(2)
fxch st(1)
fmulp st(2)
faddp st(1)
fstp dword [esp + 0x2c]
fld dword [esp + 0x98]
fld dword [esp + 0x28]
fld st(0)
fsubp st(2)
fld dword [esp + 0x20]
fld st(0)
fmulp st(3)
fxch st(2)
faddp st(1)
fstp dword [esp + 0x50]
mov ecx, dword [esp + 0x50]
fld dword [esp + 0x9c]
mov dword [esp + 0xa8], ecx
fld dword [esp + 0x2c]
fld st(0)
fsubp st(2)
fxch st(1)
fmulp st(2)
faddp st(1)
fstp dword [esp + 0x54]
mov edx, dword [esp + 0x54]
mov dword [esp + 0xac], edx
jmp 0x1006fa52
fstp st(2)
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1006f659
fstp st(1)
jmp 0x1006f65b
test dword [ebp + 0x10], 0x2000000
je 0x1006fa56
fld dword [esp + 0x48]
push 0xffffffffffffffff
fld dword [esp + 0x40]
push ebx
fld st(0)
push ebx
faddp st(2)
push 0xffffffffffffffff
fxch st(1)
lea eax, [esp + 0x38]
push eax
fstp dword [esp + 0x3c]
lea ecx, [esp + 0x5c]
push ecx
fadd dword [esp + 0x64]
mov ecx, esi
fstp dword [esp + 0x44]
call fcn.1007e080
fld dword [esp + 0x48]
push 0xff000000
fld dword [esp + 0x40]
push 0xff000000
fld st(0)
push 0
faddp st(2)
push 0
fxch st(1)
lea edx, [esp + 0x38]
push edx
fstp dword [esp + 0x3c]
lea eax, [esp + 0x5c]
push eax
fadd dword [esp + 0x64]
mov ecx, esi
fstp dword [esp + 0x44]
call fcn.1007e080
fld dword [esp + 0x48]
mov eax, dword [esp + 0x4c]
fld dword [esp + 0x3c]
push ecx
fld st(0)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
fadd dword [esp + 0x50]
fstp dword [esp + 0x30]
mov ecx, dword [esp + 0x30]
fldz
fstp dword [esp]
push ecx
mov ecx, dword [esp + 0x50]
push edx
push eax
push ecx
call fcn.1003ea50
fldz
fld dword [esp + 0x9c]
add esp, 0x14
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1006f7cd
fstp st(0)
fst dword [esp + 0x18]
jmp 0x1006f7e2
fld1
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1006f7dc
fstp st(1)
jmp 0x1006f7de
fstp st(0)
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fld dword [esp + 0x3c]
fld st(0)
fmulp st(2)
fld dword [esp + 0x48]
fld st(0)
faddp st(3)
fld qword [0x101a4158]
fadd st(3), st(0)
fxch st(3)
call fcn.101185e0
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fstp dword [esp + 0x10]
fld st(0)
fld qword [0x101a4ff8]
fadd st(1), st(0)
fxch st(1)
fstp dword [esp + 0x44]
fld st(2)
faddp st(2)
fsub st(1), st(0)
fxch st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x10]
fld dword [esp + 0x44]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x1006f842
fstp st(1)
jmp 0x1006f857
fstp st(0)
fld dword [esp + 0x1c]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1006f855
fstp st(1)
jmp 0x1006f857
fstp st(0)
fstp dword [esp + 0xa8]
fld dword [esp + 0x84]
fld1
fsubrp st(1)
fstp dword [esp + 0x10]
fld dword [esp + 0x10]
fcom st(4)
fnstsw ax
test ah, 5
jnp 0x1006f88b
fstp st(4)
fld1
fcom st(4)
fnstsw ax
test ah, 5
jp 0x1006f88b
fstp st(4)
jmp 0x1006f88d
fstp st(0)
fxch st(3)
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fmul st(1)
fld dword [esp + 0x4c]
fld st(0)
faddp st(2)
fxch st(1)
faddp st(3)
fxch st(2)
call fcn.101185e0
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fstp dword [esp + 0x10]
fld st(1)
fadd st(3)
fstp dword [esp + 0x44]
fld st(1)
fadd st(1)
fsubrp st(3)
fxch st(2)
fstp dword [esp + 0x1c]
fld dword [esp + 0x10]
fld dword [esp + 0x44]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x1006f8e1
fstp st(1)
jmp 0x1006f8f6
fstp st(0)
fld dword [esp + 0x1c]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1006f8f4
fstp st(1)
jmp 0x1006f8f6
fstp st(0)
fstp dword [esp + 0xac]
xor eax, eax
fld qword [esp + 0xc0]
mov dword [esp + 0x1c], eax
fstp dword [esp + 0xc]
fxch st(1)
fdiv qword [0x101a6e40]
fst qword [esp + 0xc0]
jmp 0x1006f92b
fld dword [esp + 0x4c]
fld qword [esp + 0xc0]
fld dword [esp + 0xc]
mov ecx, dword [esp + eax*4 + 0x108]
fstp dword [esp + 0x28]
lea edi, [eax + 1]
mov eax, dword [esp + eax*4 + 0x104]
mov dword [esp + 0x10], edi
fild dword [esp + 0x10]
push ecx
push ecx
push eax
fmul st(1)
push eax
lea edx, [esp + 0x38]
push edx
fadd st(2)
lea eax, [esp + 0x64]
push eax
mov ecx, esi
fstp dword [esp + 0x44]
fld dword [esp + 0x98]
fstp dword [esp + 0x68]
fimul dword [esp + 0x34]
faddp st(1)
fstp dword [esp + 0x6c]
call fcn.1007e080
mov eax, edi
cmp eax, 6
mov dword [esp + 0x1c], eax
jl 0x1006f920
fld dword [esp + 0x5c]
fld dword [esp + 0x3c]
fld st(0)
fmulp st(2)
fld dword [esp + 0x4c]
fld st(0)
faddp st(3)
fxch st(2)
fadd qword [0x101a4158]
call fcn.101185e0
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
push ecx
fstp dword [esp + 0x14]
fld dword [esp + 0x10]
fstp dword [esp + 0x2c]
mov edx, dword [esp + 0x2c]
fadd st(1)
fstp dword [esp + 0x30]
mov ecx, dword [esp + 0x30]
fld dword [esp + 0x84]
fstp dword [esp + 0x54]
fstp dword [esp + 0x58]
mov eax, dword [esp + 0x58]
fldz
fstp dword [esp]
push ecx
mov ecx, dword [esp + 0x58]
push edx
push eax
push ecx
call fcn.1003ea50
fld dword [esp + 0x100]
fld st(0)
add esp, 0x10
fld1
fadd st(1), st(0)
fxch st(1)
fstp dword [esp + 0x2c]
mov eax, dword [esp + 0x2c]
fxch st(1)
fstp dword [esp + 0x30]
mov edx, dword [esp + 0x30]
fsubr dword [esp + 0x84]
fstp dword [esp + 0x54]
fld dword [esp + 0x14]
fstp dword [esp + 0x58]
mov ecx, dword [esp + 0x58]
fld dword [esp + 0x64]
fadd qword [0x101a4ff8]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp]
push edx
mov edx, dword [esp + 0x58]
push eax
push ecx
push edx
call fcn.100584f0
add esp, 0x14
mov edi, dword [esp + 0x70]
cmp byte [esp + 0x3a], 0
je 0x1006fa65
fld dword [0x101a6e18]
jmp 0x1006fa6b
fld dword [0x101a5204]
push 0xc
fstp dword [esp + 0x68]
fld dword [esp + 0x68]
push edi
push ecx
lea eax, [esp + 0xb4]
fstp dword [esp]
push eax
mov ecx, esi
call fcn.1007fec0
fld1
push ecx
fstp dword [esp]
fld dword [esp + 0x68]
push 0xc
fadd qword [0x101a5210]
push 0xff808080
push ecx
lea ecx, [esp + 0xb8]
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fstp dword [esp]
push ecx
mov ecx, esi
call fcn.1007fe30
fld1
push ecx
fstp dword [esp]
fld dword [esp + 0x68]
push 0xc
push 0xffffffffffffffff
push ecx
lea edx, [esp + 0xb8]
fstp dword [esp]
push edx
mov ecx, esi
call fcn.1007fe30
cmp byte [esp + 0x27], 0
je 0x1006fc87
mov eax, dword [ebp + 0xc]
fld dword [eax + 0xc]
fstp dword [esp + 0x10]
fldz
fld dword [esp + 0x10]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1006fb08
fstp st(0)
fst dword [esp + 0x18]
jmp 0x1006fb1d
fld1
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1006fb17
fstp st(1)
jmp 0x1006fb19
fstp st(0)
fstp dword [esp + 0x18]
fld dword [esp + 0xd0]
push 0xffffffffffffffff
fst dword [esp + 0xc4]
push ecx
fld dword [esp + 0x54]
fst dword [esp + 0xcc]
fld st(1)
fadd dword [esp + 0x68]
fstp dword [esp + 0xd0]
fadd dword [esp + 0x44]
fstp dword [esp + 0xd4]
mov eax, dword [esp + 0xd4]
fxch st(1)
fst dword [esp + 0x30]
mov edx, dword [esp + 0x30]
fst dword [esp + 0x34]
mov ecx, dword [esp + 0x34]
fstp dword [esp]
push ecx
push edx
fsubr dword [esp + 0xd8]
mov edx, dword [esp + 0xd4]
push ecx
mov ecx, dword [esp + 0xdc]
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fmul qword [0x101a4158]
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [esp]
push 0
push eax
mov eax, dword [esp + 0xdc]
push ecx
push edx
push eax
call fcn.1005d2e0
add esp, 0x28
mov eax, edi
and eax, 0xffffff
push eax
push eax
push edi
push edi
lea ecx, [esp + 0xd8]
push ecx
lea edx, [esp + 0xd4]
push edx
mov ecx, esi
call fcn.1007e080
fld dword [esp + 0x18]
fld1
fsubrp st(1)
fmul dword [esp + 0x3c]
fadd dword [esp + 0x4c]
fadd qword [0x101a4158]
call fcn.101185e0
mov edx, dword [esp + 0xc4]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
mov eax, dword [esp + 0xcc]
push ecx
mov ecx, dword [esp + 0xcc]
fstp dword [esp + 0x14]
fldz
fstp dword [esp]
push eax
mov eax, dword [esp + 0xc8]
push ecx
push edx
push eax
call fcn.1003ea50
fld dword [esp + 0x100]
fld st(0)
fld1
fadd st(1), st(0)
fxch st(1)
fstp dword [esp + 0x3c]
fxch st(1)
fstp dword [esp + 0x40]
fsubr dword [esp + 0xe4]
mov ecx, dword [esp + 0x40]
fstp dword [esp + 0x64]
fld dword [esp + 0x24]
mov edx, dword [esp + 0x3c]
fstp dword [esp + 0x68]
mov eax, dword [esp + 0x68]
fld dword [esp + 0x74]
add esp, 0x10
fadd qword [0x101a4ff8]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp]
push ecx
mov ecx, dword [esp + 0x58]
push edx
push eax
push ecx
call fcn.100584f0
add esp, 0x14
call fcn.1004b940
mov bl, byte [esp + 0x17]
test bl, bl
je 0x1006fd51
mov eax, dword [esp + 0x7c]
cmp eax, 4
mov ecx, dword [ebp + 0xc]
lea edx, [esp + 0x120]
jb 0x1006fcc4
jmp 0x1006fcb0
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1006fcc8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1006fcb0
test eax, eax
je 0x1006fd25
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x1006fd17
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1006fd25
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x1006fd17
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1006fd25
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x1006fd17
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1006fd25
movzx esi, byte [edx]
movzx edx, byte [ecx]
sub esi, edx
je 0x1006fd25
test esi, esi
mov eax, 1
jg 0x1006fd27
or eax, 0xffffffff
jmp 0x1006fd27
xor eax, eax
test eax, eax
jne 0x1006fd3b
xor bl, bl
call fcn.10046b60
mov al, bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0xf0]
mov ecx, dword [eax + 0x10c]
push ecx
call fcn.1003f220
add esp, 4
call fcn.10046b60
pop edi
pop esi
mov al, bl
pop ebx
mov esp, ebp
pop ebp
ret