8869ce:	f6 45 08 04          	testb  $0x4,0x8(%ebp)
8869d2:	75 08                	jne    0x8869dc
8869d4:	56                   	push   %esi
8869d5:	e8 b5 ad b7 ff       	call   0x40178f
8869da:	eb 0c                	jmp    0x8869e8
8869dc:	68 18 01 00 00       	push   $0x118
8869e1:	56                   	push   %esi
8869e2:	e8 f3 8d b9 ff       	call   0x41f7da
8869e7:	59                   	pop    %ecx
8869e8:	59                   	pop    %ecx
8869e9:	8b c6                	mov    %esi,%eax
8869eb:	5e                   	pop    %esi
8869ec:	5d                   	pop    %ebp
8869ed:	c2 04 00             	ret    $0x4
8869f0:	cc                   	int3
8869f1:	cc                   	int3
8869f2:	cc                   	int3
8869f3:	cc                   	int3
8869f4:	cc                   	int3
8869f5:	cc                   	int3
8869f6:	cc                   	int3
8869f7:	cc                   	int3
8869f8:	cc                   	int3
8869f9:	cc                   	int3
8869fa:	cc                   	int3
8869fb:	cc                   	int3
8869fc:	55                   	push   %ebp
8869fd:	8b ec                	mov    %esp,%ebp
8869ff:	56                   	push   %esi
886a00:	8b f1                	mov    %ecx,%esi
886a02:	c7 06 08 47 c4 00    	movl   $0xc44708,(%esi)
886a08:	e8 96 79 b9 ff       	call   0x41e3a3
886a0d:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
886a11:	74 0a                	je     0x886a1d
886a13:	6a 0c                	push   $0xc
886a15:	56                   	push   %esi
886a16:	e8 81 b4 b7 ff       	call   0x401e9c
886a1b:	59                   	pop    %ecx
886a1c:	59                   	pop    %ecx
886a1d:	8b c6                	mov    %esi,%eax
886a1f:	5e                   	pop    %esi
886a20:	5d                   	pop    %ebp
886a21:	c2 04 00             	ret    $0x4
886a24:	cc                   	int3
886a25:	cc                   	int3
886a26:	cc                   	int3
886a27:	cc                   	int3
886a28:	cc                   	int3
886a29:	cc                   	int3
886a2a:	cc                   	int3
886a2b:	cc                   	int3
886a2c:	cc                   	int3
886a2d:	cc                   	int3
886a2e:	55                   	push   %ebp
886a2f:	8b ec                	mov    %esp,%ebp
886a31:	56                   	push   %esi
886a32:	8b f1                	mov    %ecx,%esi
886a34:	c7 06 0c 4c bd 00    	movl   $0xbd4c0c,(%esi)
886a3a:	e8 f9 23 bb ff       	call   0x438e38
886a3f:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
886a43:	74 18                	je     0x886a5d
886a45:	f6 45 08 04          	testb  $0x4,0x8(%ebp)
886a49:	75 08                	jne    0x886a53
886a4b:	56                   	push   %esi
886a4c:	e8 3e ad b7 ff       	call   0x40178f
886a51:	eb 09                	jmp    0x886a5c
886a53:	6a 08                	push   $0x8
886a55:	56                   	push   %esi
886a56:	e8 7f 8d b9 ff       	call   0x41f7da
886a5b:	59                   	pop    %ecx
886a5c:	59                   	pop    %ecx
886a5d:	8b c6                	mov    %esi,%eax
886a5f:	5e                   	pop    %esi
886a60:	5d                   	pop    %ebp
886a61:	c2 04 00             	ret    $0x4
886a64:	cc                   	int3
886a65:	cc                   	int3
886a66:	cc                   	int3
886a67:	cc                   	int3
886a68:	cc                   	int3
886a69:	cc                   	int3
886a6a:	cc                   	int3
886a6b:	cc                   	int3
886a6c:	cc                   	int3
886a6d:	cc                   	int3
886a6e:	cc                   	int3
886a6f:	cc                   	int3
886a70:	cc                   	int3
886a71:	55                   	push   %ebp
886a72:	8b ec                	mov    %esp,%ebp
886a74:	56                   	push   %esi
886a75:	8b f1                	mov    %ecx,%esi
886a77:	ff 76 04             	push   0x4(%esi)
886a7a:	c7 06 78 46 c4 00    	movl   $0xc44678,(%esi)
886a80:	e8 9b 9e 1e 00       	call   0xa70920
886a85:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
886a89:	74 18                	je     0x886aa3
886a8b:	f6 45 08 04          	testb  $0x4,0x8(%ebp)
886a8f:	75 08                	jne    0x886a99
886a91:	56                   	push   %esi
886a92:	e8 77 9e 1e 00       	call   0xa7090e
886a97:	eb 0a                	jmp    0x886aa3
886a99:	6a 10                	push   $0x10
886a9b:	56                   	push   %esi
886a9c:	e8 39 8d b9 ff       	call   0x41f7da
886aa1:	59                   	pop    %ecx
886aa2:	59                   	pop    %ecx
886aa3:	8b c6                	mov    %esi,%eax
886aa5:	5e                   	pop    %esi
886aa6:	5d                   	pop    %ebp
886aa7:	c2 04 00             	ret    $0x4
886aaa:	cc                   	int3
886aab:	cc                   	int3
886aac:	cc                   	int3
886aad:	cc                   	int3
886aae:	cc                   	int3
886aaf:	cc                   	int3
886ab0:	cc                   	int3
886ab1:	cc                   	int3
886ab2:	cc                   	int3
886ab3:	cc                   	int3
886ab4:	cc                   	int3
886ab5:	cc                   	int3
886ab6:	cc                   	int3
886ab7:	cc                   	int3
886ab8:	68 18 01 00 00       	push   $0x118
886abd:	b8 7e f0 b9 00       	mov    $0xb9f07e,%eax
886ac2:	e8 9e b5 ba ff       	call   0x432065
886ac7:	8b f9                	mov    %ecx,%edi
886ac9:	89 bd 70 ff ff ff    	mov    %edi,-0x90(%ebp)
886acf:	8d 85 14 ff ff ff    	lea    -0xec(%ebp),%eax
886ad5:	50                   	push   %eax
886ad6:	8d 85 04 ff ff ff    	lea    -0xfc(%ebp),%eax
886adc:	50                   	push   %eax
886add:	8d 85 24 ff ff ff    	lea    -0xdc(%ebp),%eax
886ae3:	50                   	push   %eax
886ae4:	ff 75 08             	push   0x8(%ebp)
886ae7:	e8 b9 08 b9 ff       	call   0x4173a5
886aec:	8d 85 1c ff ff ff    	lea    -0xe4(%ebp),%eax
886af2:	50                   	push   %eax
886af3:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
886af9:	50                   	push   %eax
886afa:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
886b00:	50                   	push   %eax
886b01:	ff 75 0c             	push   0xc(%ebp)
886b04:	e8 9c 08 b9 ff       	call   0x4173a5
886b09:	dd 85 54 ff ff ff    	fldl   -0xac(%ebp)
886b0f:	dc a5 24 ff ff ff    	fsubl  -0xdc(%ebp)
886b15:	6a 20                	push   $0x20
886b17:	5e                   	pop    %esi
886b18:	dd 9d 3c ff ff ff    	fstpl  -0xc4(%ebp)
886b1e:	dd 85 1c ff ff ff    	fldl   -0xe4(%ebp)
886b24:	dc a5 14 ff ff ff    	fsubl  -0xec(%ebp)
886b2a:	dd 9d 2c ff ff ff    	fstpl  -0xd4(%ebp)
886b30:	dd 85 0c ff ff ff    	fldl   -0xf4(%ebp)
886b36:	dc a5 04 ff ff ff    	fsubl  -0xfc(%ebp)
886b3c:	dd 9d 34 ff ff ff    	fstpl  -0xcc(%ebp)
886b42:	39 77 08             	cmp    %esi,0x8(%edi)
886b45:	0f 85 8e 01 00 00    	jne    0x886cd9
886b4b:	8d 45 9c             	lea    -0x64(%ebp),%eax
886b4e:	50                   	push   %eax
886b4f:	6a 54                	push   $0x54
886b51:	ff b7 8c 00 00 00    	push   0x8c(%edi)
886b57:	ff 15 44 32 d8 00    	call   *0xd83244
886b5d:	85 c0                	test   %eax,%eax
886b5f:	0f 84 7c 04 00 00    	je     0x886fe1
886b65:	66 39 75 ae          	cmp    %si,-0x52(%ebp)
886b69:	0f 85 72 04 00 00    	jne    0x886fe1
886b6f:	8b 75 b0             	mov    -0x50(%ebp),%esi
886b72:	85 f6                	test   %esi,%esi
886b74:	0f 84 67 04 00 00    	je     0x886fe1
886b7a:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
886b7d:	33 ff                	xor    %edi,%edi
886b7f:	8b 55 a0             	mov    -0x60(%ebp),%edx
886b82:	8b c1                	mov    %ecx,%eax
886b84:	0f af c2             	imul   %edx,%eax
886b87:	85 c0                	test   %eax,%eax
886b89:	0f 8e 52 04 00 00    	jle    0x886fe1
886b8f:	83 c6 02             	add    $0x2,%esi
886b92:	80 7e 01 00          	cmpb   $0x0,0x1(%esi)
886b96:	0f 84 27 01 00 00    	je     0x886cc3
886b9c:	0f b6 4e fe          	movzbl -0x2(%esi),%ecx
886ba0:	8d 85 6c ff ff ff    	lea    -0x94(%ebp),%eax
886ba6:	50                   	push   %eax
886ba7:	8d 85 64 ff ff ff    	lea    -0x9c(%ebp),%eax
886bad:	c1 e1 08             	shl    $0x8,%ecx
886bb0:	50                   	push   %eax
886bb1:	8d 85 5c ff ff ff    	lea    -0xa4(%ebp),%eax
886bb7:	50                   	push   %eax
886bb8:	0f b6 46 ff          	movzbl -0x1(%esi),%eax
886bbc:	0b c8                	or     %eax,%ecx
886bbe:	0f b6 06             	movzbl (%esi),%eax
886bc1:	c1 e1 08             	shl    $0x8,%ecx
886bc4:	0b c8                	or     %eax,%ecx
886bc6:	51                   	push   %ecx
886bc7:	e8 d9 07 b9 ff       	call   0x4173a5
886bcc:	dd 85 5c ff ff ff    	fldl   -0xa4(%ebp)
886bd2:	dc 85 3c ff ff ff    	faddl  -0xc4(%ebp)
886bd8:	d9 e8                	fld1
886bda:	d8 d1                	fcom   %st(1)
886bdc:	df e0                	fnstsw %ax
886bde:	d9 ee                	fldz
886be0:	f6 c4 05             	test   $0x5,%ah
886be3:	7b 0f                	jnp    0x886bf4
886be5:	d8 d2                	fcom   %st(2)
886be7:	df e0                	fnstsw %ax
886be9:	f6 c4 41             	test   $0x41,%ah
886bec:	75 06                	jne    0x886bf4
886bee:	dd da                	fstp   %st(2)
886bf0:	d9 c1                	fld    %st(1)
886bf2:	eb 15                	jmp    0x886c09
886bf4:	d9 c9                	fxch   %st(1)
886bf6:	d8 d2                	fcom   %st(2)
886bf8:	df e0                	fnstsw %ax
886bfa:	f6 c4 05             	test   $0x5,%ah
886bfd:	7a 2e                	jp     0x886c2d
886bff:	dd da                	fstp   %st(2)
886c01:	d9 c1                	fld    %st(1)
886c03:	d9 c9                	fxch   %st(1)
886c05:	d9 ca                	fxch   %st(2)
886c07:	d9 c9                	fxch   %st(1)
886c09:	dd 85 64 ff ff ff    	fldl   -0x9c(%ebp)
886c0f:	dc 85 34 ff ff ff    	faddl  -0xcc(%ebp)
886c15:	d8 d2                	fcom   %st(2)
886c17:	df e0                	fnstsw %ax
886c19:	f6 c4 41             	test   $0x41,%ah
886c1c:	74 15                	je     0x886c33
886c1e:	d8 d3                	fcom   %st(3)
886c20:	df e0                	fnstsw %ax
886c22:	f6 c4 05             	test   $0x5,%ah
886c25:	7a 0c                	jp     0x886c33
886c27:	dd d8                	fstp   %st(0)
886c29:	d9 c2                	fld    %st(2)
886c2b:	eb 13                	jmp    0x886c40
886c2d:	d9 c9                	fxch   %st(1)
886c2f:	d9 ca                	fxch   %st(2)
886c31:	eb d6                	jmp    0x886c09
886c33:	d8 d2                	fcom   %st(2)
886c35:	df e0                	fnstsw %ax
886c37:	f6 c4 41             	test   $0x41,%ah
886c3a:	75 04                	jne    0x886c40
886c3c:	dd d8                	fstp   %st(0)
886c3e:	d9 c1                	fld    %st(1)
886c40:	dd 85 6c ff ff ff    	fldl   -0x94(%ebp)
886c46:	d9 c0                	fld    %st(0)
886c48:	dc 85 2c ff ff ff    	faddl  -0xd4(%ebp)
886c4e:	d8 d4                	fcom   %st(4)
886c50:	df e0                	fnstsw %ax
886c52:	f6 c4 41             	test   $0x41,%ah
886c55:	74 0f                	je     0x886c66
886c57:	d8 d5                	fcom   %st(5)
886c59:	df e0                	fnstsw %ax
886c5b:	f6 c4 05             	test   $0x5,%ah
886c5e:	7a 06                	jp     0x886c66
886c60:	dd dc                	fstp   %st(4)
886c62:	dd db                	fstp   %st(3)
886c64:	eb 13                	jmp    0x886c79
886c66:	dd dd                	fstp   %st(5)
886c68:	d9 cb                	fxch   %st(3)
886c6a:	d8 d4                	fcom   %st(4)
886c6c:	df e0                	fnstsw %ax
886c6e:	f6 c4 05             	test   $0x5,%ah
886c71:	7a 04                	jp     0x886c77
886c73:	dd dc                	fstp   %st(4)
886c75:	eb 02                	jmp    0x886c79
886c77:	dd d8                	fstp   %st(0)
886c79:	dd 05 f0 b7 bd 00    	fldl   0xbdb7f0
886c7f:	dc 9d 54 ff ff ff    	fcompl -0xac(%ebp)
886c85:	df e0                	fnstsw %ax
886c87:	f6 c4 05             	test   $0x5,%ah
886c8a:	7a 04                	jp     0x886c90
886c8c:	dd db                	fstp   %st(3)
886c8e:	eb 08                	jmp    0x886c98
886c90:	dd da                	fstp   %st(2)
886c92:	d9 c9                	fxch   %st(1)
886c94:	d9 ca                	fxch   %st(2)
886c96:	d9 c9                	fxch   %st(1)
886c98:	83 ec 18             	sub    $0x18,%esp
886c9b:	d9 ca                	fxch   %st(2)
886c9d:	dd 5c 24 10          	fstpl  0x10(%esp)
886ca1:	dd 5c 24 08          	fstpl  0x8(%esp)
886ca5:	dd 1c 24             	fstpl  (%esp)
886ca8:	e8 17 f0 ba ff       	call   0x435cc4
886cad:	8b c8                	mov    %eax,%ecx
886caf:	88 06                	mov    %al,(%esi)
886cb1:	c1 e9 08             	shr    $0x8,%ecx
886cb4:	c1 e8 10             	shr    $0x10,%eax
886cb7:	88 4e ff             	mov    %cl,-0x1(%esi)
886cba:	88 46 fe             	mov    %al,-0x2(%esi)
886cbd:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
886cc0:	8b 55 a0             	mov    -0x60(%ebp),%edx
886cc3:	8b c1                	mov    %ecx,%eax
886cc5:	47                   	inc    %edi
886cc6:	0f af c2             	imul   %edx,%eax
886cc9:	83 c6 04             	add    $0x4,%esi
886ccc:	3b f8                	cmp    %eax,%edi
886cce:	0f 8c be fe ff ff    	jl     0x886b92
886cd4:	e9 08 03 00 00       	jmp    0x886fe1
886cd9:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
886cdf:	e8 be 28 b8 ff       	call   0x4095a2
886ce4:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
886ce8:	6a 00                	push   $0x0
886cea:	ff 15 2c 32 d8 00    	call   *0xd8322c
886cf0:	50                   	push   %eax
886cf1:	8d 8d 74 ff ff ff    	lea    -0x8c(%ebp),%ecx
886cf7:	e8 6f 50 b8 ff       	call   0x40bd6b
886cfc:	8d 85 dc fe ff ff    	lea    -0x124(%ebp),%eax
886d02:	50                   	push   %eax
886d03:	6a 18                	push   $0x18
886d05:	ff b7 8c 00 00 00    	push   0x8c(%edi)
886d0b:	ff 15 44 32 d8 00    	call   *0xd83244
886d11:	85 c0                	test   %eax,%eax
886d13:	0f 84 bd 02 00 00    	je     0x886fd6
886d19:	8b 87 8c 00 00 00    	mov    0x8c(%edi),%eax
886d1f:	85 c0                	test   %eax,%eax
886d21:	74 14                	je     0x886d37
886d23:	50                   	push   %eax
886d24:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
886d2a:	ff 15 cc 31 d8 00    	call   *0xd831cc
886d30:	8b f0                	mov    %eax,%esi
886d32:	89 45 8c             	mov    %eax,-0x74(%ebp)
886d35:	eb 05                	jmp    0x886d3c
886d37:	33 f6                	xor    %esi,%esi
886d39:	89 75 8c             	mov    %esi,-0x74(%ebp)
886d3c:	85 f6                	test   %esi,%esi
886d3e:	0f 84 92 02 00 00    	je     0x886fd6
886d44:	8b 8d e4 fe ff ff    	mov    -0x11c(%ebp),%ecx
886d4a:	8b 85 e0 fe ff ff    	mov    -0x120(%ebp),%eax
886d50:	51                   	push   %ecx
886d51:	50                   	push   %eax
886d52:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
886d58:	89 45 98             	mov    %eax,-0x68(%ebp)
886d5b:	89 4d 88             	mov    %ecx,-0x78(%ebp)
886d5e:	ff 15 6c 33 d8 00    	call   *0xd8336c
886d64:	8b d8                	mov    %eax,%ebx
886d66:	89 9d 68 ff ff ff    	mov    %ebx,-0x98(%ebp)
886d6c:	85 db                	test   %ebx,%ebx
886d6e:	75 12                	jne    0x886d82
886d70:	56                   	push   %esi
886d71:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
886d77:	ff 15 cc 31 d8 00    	call   *0xd831cc
886d7d:	e9 54 02 00 00       	jmp    0x886fd6
886d82:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
886d88:	e8 15 28 b8 ff       	call   0x4095a2
886d8d:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
886d93:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
886d97:	ff 15 2c 32 d8 00    	call   *0xd8322c
886d9d:	50                   	push   %eax
886d9e:	8d 8d 44 ff ff ff    	lea    -0xbc(%ebp),%ecx
886da4:	e8 c2 4f b8 ff       	call   0x40bd6b