41d704:	0f 88 7e 01 00 00    	js     0x41d888
41d70a:	8b bd 08 ff ff ff    	mov    -0xf8(%ebp),%edi
41d710:	8b 87 b4 00 00 00    	mov    0xb4(%edi),%eax
41d716:	e9 ba 00 00 00       	jmp    0x41d7d5
41d71b:	8b 35 74 65 4a 00    	mov    0x4a6574,%esi
41d721:	85 f6                	test   %esi,%esi
41d723:	0f 84 5f 01 00 00    	je     0x41d888
41d729:	8b 76 48             	mov    0x48(%esi),%esi
41d72c:	33 d2                	xor    %edx,%edx
41d72e:	56                   	push   %esi
41d72f:	42                   	inc    %edx
41d730:	e8 e4 1d 03 00       	call   0x44f519
41d735:	db 43 0c             	fildl  0xc(%ebx)
41d738:	56                   	push   %esi
41d739:	33 d2                	xor    %edx,%edx
41d73b:	dd 9d f8 fe ff ff    	fstpl  -0x108(%ebp)
41d741:	dc bd f8 fe ff ff    	fdivrl -0x108(%ebp)
41d747:	8b 0d 5c 58 4a 00    	mov    0x4a585c,%ecx
41d74d:	dd 9d f0 fe ff ff    	fstpl  -0x110(%ebp)
41d753:	e8 c1 1d 03 00       	call   0x44f519
41d758:	db 43 10             	fildl  0x10(%ebx)
41d75b:	51                   	push   %ecx
41d75c:	51                   	push   %ecx
41d75d:	be 5c fa 40 00       	mov    $0x40fa5c,%esi
41d762:	8d 45 c4             	lea    -0x3c(%ebp),%eax
41d765:	dd 9d f8 fe ff ff    	fstpl  -0x108(%ebp)
41d76b:	dc bd f8 fe ff ff    	fdivrl -0x108(%ebp)
41d771:	dd 9d f8 fe ff ff    	fstpl  -0x108(%ebp)
41d777:	dd 85 f0 fe ff ff    	fldl   -0x110(%ebp)
41d77d:	dd 1c 24             	fstpl  (%esp)
41d780:	56                   	push   %esi
41d781:	6a 14                	push   $0x14
41d783:	50                   	push   %eax
41d784:	e8 fd a0 ff ff       	call   0x417886
41d789:	83 c4 14             	add    $0x14,%esp
41d78c:	85 c0                	test   %eax,%eax
41d78e:	0f 88 f4 00 00 00    	js     0x41d888
41d794:	dd 85 f8 fe ff ff    	fldl   -0x108(%ebp)
41d79a:	8d 45 9c             	lea    -0x64(%ebp),%eax
41d79d:	51                   	push   %ecx
41d79e:	51                   	push   %ecx
41d79f:	dd 1c 24             	fstpl  (%esp)
41d7a2:	56                   	push   %esi
41d7a3:	6a 14                	push   $0x14
41d7a5:	50                   	push   %eax
41d7a6:	e8 db a0 ff ff       	call   0x417886
41d7ab:	83 c4 14             	add    $0x14,%esp
41d7ae:	85 c0                	test   %eax,%eax
41d7b0:	0f 88 d2 00 00 00    	js     0x41d888
41d7b6:	8b bd 08 ff ff ff    	mov    -0xf8(%ebp),%edi
41d7bc:	33 f6                	xor    %esi,%esi
41d7be:	83 3d 5c 58 4a 00 01 	cmpl   $0x1,0x4a585c
41d7c5:	75 08                	jne    0x41d7cf
41d7c7:	8b 87 ac 00 00 00    	mov    0xac(%edi),%eax
41d7cd:	eb 06                	jmp    0x41d7d5
41d7cf:	8b 87 b0 00 00 00    	mov    0xb0(%edi),%eax
41d7d5:	8d 8d 04 ff ff ff    	lea    -0xfc(%ebp),%ecx
41d7db:	89 85 08 ff ff ff    	mov    %eax,-0xf8(%ebp)
41d7e1:	ff 15 20 74 4a 00    	call   *0x4a7420
41d7e7:	89 75 fc             	mov    %esi,-0x4(%ebp)
41d7ea:	8d 45 c4             	lea    -0x3c(%ebp),%eax
41d7ed:	89 85 0c ff ff ff    	mov    %eax,-0xf4(%ebp)
41d7f3:	8d 8d 04 ff ff ff    	lea    -0xfc(%ebp),%ecx
41d7f9:	8b 43 14             	mov    0x14(%ebx),%eax
41d7fc:	89 85 10 ff ff ff    	mov    %eax,-0xf0(%ebp)
41d802:	8d 45 9c             	lea    -0x64(%ebp),%eax
41d805:	89 85 14 ff ff ff    	mov    %eax,-0xec(%ebp)
41d80b:	8b 85 08 ff ff ff    	mov    -0xf8(%ebp),%eax
41d811:	68 d2 c3 00 00       	push   $0xc3d2
41d816:	c7 85 18 ff ff ff 68 	movl   $0x40fa68,-0xe8(%ebp)
41d81d:	fa 40 00
41d820:	89 85 1c ff ff ff    	mov    %eax,-0xe4(%ebp)
41d826:	ff 15 40 74 4a 00    	call   *0x4a7440
41d82c:	8d 85 0c ff ff ff    	lea    -0xf4(%ebp),%eax
41d832:	50                   	push   %eax
41d833:	6a 3c                	push   $0x3c
41d835:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
41d83b:	50                   	push   %eax
41d83c:	56                   	push   %esi
41d83d:	56                   	push   %esi
41d83e:	ff b5 04 ff ff ff    	push   -0xfc(%ebp)
41d844:	68 00 24 00 00       	push   $0x2400
41d849:	ff 15 b4 72 4a 00    	call   *0x4a72b4
41d84f:	85 c0                	test   %eax,%eax
41d851:	74 29                	je     0x41d87c
41d853:	ff 73 08             	push   0x8(%ebx)
41d856:	8b cf                	mov    %edi,%ecx
41d858:	e8 f1 d6 04 00       	call   0x46af4e
41d85d:	50                   	push   %eax
41d85e:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
41d864:	50                   	push   %eax
41d865:	ff 73 08             	push   0x8(%ebx)
41d868:	ff 15 34 74 4a 00    	call   *0x4a7434
41d86e:	8b f0                	mov    %eax,%esi
41d870:	f7 de                	neg    %esi
41d872:	1b f6                	sbb    %esi,%esi
41d874:	f7 de                	neg    %esi
41d876:	89 b5 00 ff ff ff    	mov    %esi,-0x100(%ebp)
41d87c:	8d 8d 04 ff ff ff    	lea    -0xfc(%ebp),%ecx
41d882:	ff 15 1c 74 4a 00    	call   *0x4a741c
41d888:	8b 85 00 ff ff ff    	mov    -0x100(%ebp),%eax
41d88e:	8b 4d ec             	mov    -0x14(%ebp),%ecx
41d891:	e8 57 36 07 00       	call   0x490eed
41d896:	c2 10 00             	ret    $0x10
41d899:	8b ff                	mov    %edi,%edi
41d89b:	55                   	push   %ebp
41d89c:	8b ec                	mov    %esp,%ebp
41d89e:	51                   	push   %ecx
41d89f:	56                   	push   %esi
41d8a0:	8b 35 2c 47 4a 00    	mov    0x4a472c,%esi
41d8a6:	6a 01                	push   $0x1
41d8a8:	6a 00                	push   $0x0
41d8aa:	ff 76 20             	push   0x20(%esi)
41d8ad:	ff 15 d8 7d 4a 00    	call   *0x4a7dd8
41d8b3:	6a 00                	push   $0x0
41d8b5:	8b ce                	mov    %esi,%ecx
41d8b7:	e8 18 fc ff ff       	call   0x41d4d4
41d8bc:	8b ce                	mov    %esi,%ecx
41d8be:	e8 46 fc ff ff       	call   0x41d509
41d8c3:	83 be d8 00 00 00 00 	cmpl   $0x0,0xd8(%esi)
41d8ca:	74 0b                	je     0x41d8d7
41d8cc:	8d 8e b8 00 00 00    	lea    0xb8(%esi),%ecx
41d8d2:	e8 e4 eb 04 00       	call   0x46c4bb
41d8d7:	8d 86 90 03 00 00    	lea    0x390(%esi),%eax
41d8dd:	b9 00 00 00 80       	mov    $0x80000000,%ecx
41d8e2:	39 08                	cmp    %ecx,(%eax)
41d8e4:	75 11                	jne    0x41d8f7
41d8e6:	39 8e 94 03 00 00    	cmp    %ecx,0x394(%esi)
41d8ec:	75 09                	jne    0x41d8f7
41d8ee:	8b ce                	mov    %esi,%ecx
41d8f0:	e8 ef f9 ff ff       	call   0x41d2e4
41d8f5:	eb 08                	jmp    0x41d8ff
41d8f7:	50                   	push   %eax
41d8f8:	8b ce                	mov    %esi,%ecx
41d8fa:	e8 39 f7 ff ff       	call   0x41d038
41d8ff:	5e                   	pop    %esi
41d900:	c9                   	leave
41d901:	c3                   	ret
41d902:	cc                   	int3
41d903:	cc                   	int3
41d904:	cc                   	int3
41d905:	cc                   	int3
41d906:	cc                   	int3
41d907:	cc                   	int3
41d908:	cc                   	int3
41d909:	cc                   	int3
41d90a:	cc                   	int3
41d90b:	cc                   	int3
41d90c:	cc                   	int3
41d90d:	cc                   	int3
41d90e:	cc                   	int3
41d90f:	cc                   	int3
41d910:	8b ff                	mov    %edi,%edi
41d912:	56                   	push   %esi
41d913:	8b f1                	mov    %ecx,%esi
41d915:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
41d919:	74 0a                	je     0x41d925
41d91b:	ff 76 04             	push   0x4(%esi)
41d91e:	ff 15 10 74 4a 00    	call   *0x4a7410
41d924:	59                   	pop    %ecx
41d925:	33 c0                	xor    %eax,%eax
41d927:	89 46 04             	mov    %eax,0x4(%esi)
41d92a:	89 46 08             	mov    %eax,0x8(%esi)
41d92d:	89 46 0c             	mov    %eax,0xc(%esi)
41d930:	5e                   	pop    %esi
41d931:	c3                   	ret
41d932:	6a 48                	push   $0x48
41d934:	b8 86 16 49 00       	mov    $0x491686,%eax
41d939:	e8 c8 2b 07 00       	call   0x490506
41d93e:	68 6c fa 40 00       	push   $0x40fa6c
41d943:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
41d946:	e8 41 e5 ff ff       	call   0x41be8c
41d94b:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41d94f:	8d 45 d4             	lea    -0x2c(%ebp),%eax
41d952:	50                   	push   %eax
41d953:	8d 4d ac             	lea    -0x54(%ebp),%ecx
41d956:	e8 0f e0 ff ff       	call   0x41b96a
41d95b:	68 c8 ea 49 00       	push   $0x49eac8
41d960:	8d 45 ac             	lea    -0x54(%ebp),%eax
41d963:	50                   	push   %eax
41d964:	e8 32 2b 07 00       	call   0x49049b
41d969:	cc                   	int3
41d96a:	8b ff                	mov    %edi,%edi
41d96c:	55                   	push   %ebp
41d96d:	8b ec                	mov    %esp,%ebp
41d96f:	8b 4d 08             	mov    0x8(%ebp),%ecx
41d972:	83 ec 0c             	sub    $0xc,%esp
41d975:	85 c9                	test   %ecx,%ecx
41d977:	75 11                	jne    0x41d98a
41d979:	8b c1                	mov    %ecx,%eax
41d97b:	c1 e0 03             	shl    $0x3,%eax
41d97e:	50                   	push   %eax
41d97f:	ff 15 14 74 4a 00    	call   *0x4a7414
41d985:	59                   	pop    %ecx
41d986:	c9                   	leave
41d987:	c2 04 00             	ret    $0x4
41d98a:	83 c8 ff             	or     $0xffffffff,%eax
41d98d:	33 d2                	xor    %edx,%edx
41d98f:	f7 f1                	div    %ecx
41d991:	83 f8 08             	cmp    $0x8,%eax
41d994:	73 e3                	jae    0x41d979
41d996:	6a 00                	push   $0x0
41d998:	8d 4d f4             	lea    -0xc(%ebp),%ecx
41d99b:	e8 2c eb ff ff       	call   0x41c4cc
41d9a0:	68 4c eb 49 00       	push   $0x49eb4c
41d9a5:	8d 45 f4             	lea    -0xc(%ebp),%eax
41d9a8:	50                   	push   %eax
41d9a9:	e8 ed 2a 07 00       	call   0x49049b
41d9ae:	cc                   	int3
41d9af:	8b ff                	mov    %edi,%edi
41d9b1:	55                   	push   %ebp
41d9b2:	8b ec                	mov    %esp,%ebp
41d9b4:	ff 75 08             	push   0x8(%ebp)
41d9b7:	ff 15 10 74 4a 00    	call   *0x4a7410
41d9bd:	59                   	pop    %ecx
41d9be:	5d                   	pop    %ebp
41d9bf:	c2 08 00             	ret    $0x8
41d9c2:	8b ff                	mov    %edi,%edi
41d9c4:	55                   	push   %ebp
41d9c5:	8b ec                	mov    %esp,%ebp
41d9c7:	83 ec 0c             	sub    $0xc,%esp
41d9ca:	8b 45 10             	mov    0x10(%ebp),%eax
41d9cd:	53                   	push   %ebx
41d9ce:	8b d9                	mov    %ecx,%ebx
41d9d0:	56                   	push   %esi
41d9d1:	8b 00                	mov    (%eax),%eax
41d9d3:	33 f6                	xor    %esi,%esi
41d9d5:	57                   	push   %edi
41d9d6:	8b 53 04             	mov    0x4(%ebx),%edx
41d9d9:	89 45 fc             	mov    %eax,-0x4(%ebp)
41d9dc:	85 d2                	test   %edx,%edx
41d9de:	75 06                	jne    0x41d9e6
41d9e0:	8b ce                	mov    %esi,%ecx
41d9e2:	8b fe                	mov    %esi,%edi
41d9e4:	eb 10                	jmp    0x41d9f6
41d9e6:	8b 4b 0c             	mov    0xc(%ebx),%ecx
41d9e9:	8b 7b 08             	mov    0x8(%ebx),%edi
41d9ec:	2b ca                	sub    %edx,%ecx
41d9ee:	2b fa                	sub    %edx,%edi
41d9f0:	c1 f9 02             	sar    $0x2,%ecx
41d9f3:	c1 ff 02             	sar    $0x2,%edi
41d9f6:	b8 ff ff ff 3f       	mov    $0x3fffffff,%eax
41d9fb:	2b c7                	sub    %edi,%eax
41d9fd:	83 f8 01             	cmp    $0x1,%eax
41da00:	0f 82 8e 01 00 00    	jb     0x41db94
41da06:	85 d2                	test   %edx,%edx
41da08:	75 04                	jne    0x41da0e
41da0a:	8b c6                	mov    %esi,%eax
41da0c:	eb 08                	jmp    0x41da16
41da0e:	8b 43 08             	mov    0x8(%ebx),%eax
41da11:	2b c2                	sub    %edx,%eax
41da13:	c1 f8 02             	sar    $0x2,%eax
41da16:	40                   	inc    %eax
41da17:	3b c8                	cmp    %eax,%ecx
41da19:	0f 83 cc 00 00 00    	jae    0x41daeb
41da1f:	8b c1                	mov    %ecx,%eax
41da21:	bf ff ff ff 3f       	mov    $0x3fffffff,%edi
41da26:	d1 e8                	shr    $1,%eax
41da28:	2b f8                	sub    %eax,%edi
41da2a:	03 c1                	add    %ecx,%eax
41da2c:	3b f9                	cmp    %ecx,%edi
41da2e:	8b 4b 08             	mov    0x8(%ebx),%ecx
41da31:	1b ff                	sbb    %edi,%edi
41da33:	f7 d7                	not    %edi
41da35:	23 f8                	and    %eax,%edi
41da37:	89 7d f8             	mov    %edi,-0x8(%ebp)
41da3a:	85 d2                	test   %edx,%edx
41da3c:	75 04                	jne    0x41da42
41da3e:	8b c6                	mov    %esi,%eax
41da40:	eb 07                	jmp    0x41da49
41da42:	8b c1                	mov    %ecx,%eax
41da44:	2b c2                	sub    %edx,%eax
41da46:	c1 f8 02             	sar    $0x2,%eax
41da49:	40                   	inc    %eax
41da4a:	3b f8                	cmp    %eax,%edi
41da4c:	73 13                	jae    0x41da61
41da4e:	85 d2                	test   %edx,%edx
41da50:	75 04                	jne    0x41da56
41da52:	8b ce                	mov    %esi,%ecx
41da54:	eb 05                	jmp    0x41da5b
41da56:	2b ca                	sub    %edx,%ecx
41da58:	c1 f9 02             	sar    $0x2,%ecx
41da5b:	8d 79 01             	lea    0x1(%ecx),%edi
41da5e:	89 7d f8             	mov    %edi,-0x8(%ebp)
41da61:	57                   	push   %edi
41da62:	e8 95 05 00 00       	call   0x41dffc
41da67:	8b 4d 08             	mov    0x8(%ebp),%ecx
41da6a:	8b f8                	mov    %eax,%edi
41da6c:	2b 4b 04             	sub    0x4(%ebx),%ecx
41da6f:	c1 f9 02             	sar    $0x2,%ecx
41da72:	8b c1                	mov    %ecx,%eax
41da74:	c1 e0 02             	shl    $0x2,%eax
41da77:	89 45 f4             	mov    %eax,-0xc(%ebp)
41da7a:	85 c9                	test   %ecx,%ecx
41da7c:	74 12                	je     0x41da90
41da7e:	50                   	push   %eax
41da7f:	ff 73 04             	push   0x4(%ebx)
41da82:	50                   	push   %eax
41da83:	57                   	push   %edi
41da84:	ff 15 c4 80 4a 00    	call   *0x4a80c4
41da8a:	8b 45 f4             	mov    -0xc(%ebp),%eax
41da8d:	83 c4 10             	add    $0x10,%esp
41da90:	8b 55 fc             	mov    -0x4(%ebp),%edx
41da93:	8d 4f 04             	lea    0x4(%edi),%ecx
41da96:	03 c8                	add    %eax,%ecx
41da98:	89 14 38             	mov    %edx,(%eax,%edi,1)
41da9b:	8b 43 08             	mov    0x8(%ebx),%eax
41da9e:	2b 45 08             	sub    0x8(%ebp),%eax
41daa1:	c1 f8 02             	sar    $0x2,%eax
41daa4:	85 c0                	test   %eax,%eax
41daa6:	74 12                	je     0x41daba
41daa8:	c1 e0 02             	shl    $0x2,%eax
41daab:	50                   	push   %eax
41daac:	ff 75 08             	push   0x8(%ebp)
41daaf:	50                   	push   %eax
41dab0:	51                   	push   %ecx
41dab1:	ff 15 c4 80 4a 00    	call   *0x4a80c4
41dab7:	83 c4 10             	add    $0x10,%esp
41daba:	8b 43 04             	mov    0x4(%ebx),%eax
41dabd:	85 c0                	test   %eax,%eax
41dabf:	74 10                	je     0x41dad1
41dac1:	8b 73 08             	mov    0x8(%ebx),%esi
41dac4:	2b f0                	sub    %eax,%esi
41dac6:	50                   	push   %eax
41dac7:	c1 fe 02             	sar    $0x2,%esi
41daca:	ff 15 10 74 4a 00    	call   *0x4a7410
41dad0:	59                   	pop    %ecx
41dad1:	8b 45 f8             	mov    -0x8(%ebp),%eax
41dad4:	89 7b 04             	mov    %edi,0x4(%ebx)
41dad7:	8d 04 87             	lea    (%edi,%eax,4),%eax
41dada:	89 43 0c             	mov    %eax,0xc(%ebx)
41dadd:	8d 46 01             	lea    0x1(%esi),%eax
41dae0:	8d 04 87             	lea    (%edi,%eax,4),%eax
41dae3:	89 43 08             	mov    %eax,0x8(%ebx)
41dae6:	e9 a2 00 00 00       	jmp    0x41db8d
41daeb:	8b 7b 08             	mov    0x8(%ebx),%edi
41daee:	33 c9                	xor    %ecx,%ecx
41daf0:	8b 55 08             	mov    0x8(%ebp),%edx
41daf3:	8b c7                	mov    %edi,%eax
41daf5:	2b c2                	sub    %edx,%eax
41daf7:	41                   	inc    %ecx
41daf8:	c1 f8 02             	sar    $0x2,%eax
41dafb:	3b c1                	cmp    %ecx,%eax
41dafd:	73 3f                	jae    0x41db3e
41daff:	8b c7                	mov    %edi,%eax
41db01:	2b c2                	sub    %edx,%eax
41db03:	c1 f8 02             	sar    $0x2,%eax
41db06:	2b c8                	sub    %eax,%ecx
41db08:	74 0b                	je     0x41db15
41db0a:	8b 45 fc             	mov    -0x4(%ebp),%eax