40d5f5:	50                   	push   %eax
40d5f6:	8d 85 bc fe ff ff    	lea    -0x144(%ebp),%eax
40d5fc:	50                   	push   %eax
40d5fd:	8b 45 08             	mov    0x8(%ebp),%eax
40d600:	52                   	push   %edx
40d601:	ff 75 0c             	push   0xc(%ebp)
40d604:	50                   	push   %eax
40d605:	e8 d2 fa ff ff       	call   0x40d0dc
40d60a:	85 c0                	test   %eax,%eax
40d60c:	0f 88 6a 56 03 00    	js     0x442c7c
40d612:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
40d616:	0f 85 ab 55 03 00    	jne    0x442bc7
40d61c:	8d 4d bc             	lea    -0x44(%ebp),%ecx
40d61f:	e8 fc c3 ff ff       	call   0x409a20
40d624:	8b 75 0c             	mov    0xc(%ebp),%esi
40d627:	8b 7d 08             	mov    0x8(%ebp),%edi
40d62a:	e9 8d fd ff ff       	jmp    0x40d3bc
40d62f:	83 c8 01             	or     $0x1,%eax
40d632:	b9 70 74 4c 00       	mov    $0x4c7470,%ecx
40d637:	68 10 f9 48 00       	push   $0x48f910
40d63c:	a3 6c 74 4c 00       	mov    %eax,0x4c746c
40d641:	e8 f4 c8 ff ff       	call   0x409f3a
40d646:	68 28 b8 43 00       	push   $0x43b828
40d64b:	e8 30 59 01 00       	call   0x422f80
40d650:	8b 55 10             	mov    0x10(%ebp),%edx
40d653:	83 c4 04             	add    $0x4,%esp
40d656:	e9 68 fc ff ff       	jmp    0x40d2c3
40d65b:	83 7f 0c 05          	cmpl   $0x5,0xc(%edi)
40d65f:	0f 85 c1 55 03 00    	jne    0x442c26
40d665:	53                   	push   %ebx
40d666:	ff 36                	push   (%esi)
40d668:	8b 5d ec             	mov    -0x14(%ebp),%ebx
40d66b:	51                   	push   %ecx
40d66c:	8b cb                	mov    %ebx,%ecx
40d66e:	e8 ed f9 ff ff       	call   0x40d060
40d673:	85 c0                	test   %eax,%eax
40d675:	78 34                	js     0x40d6ab
40d677:	8b 45 e0             	mov    -0x20(%ebp),%eax
40d67a:	85 c0                	test   %eax,%eax
40d67c:	7e 0f                	jle    0x40d68d
40d67e:	8b c8                	mov    %eax,%ecx
40d680:	8d bd bc fe ff ff    	lea    -0x144(%ebp),%edi
40d686:	33 c0                	xor    %eax,%eax
40d688:	f3 ab                	rep stos %eax,%es:(%edi)
40d68a:	8b 7d f4             	mov    -0xc(%ebp),%edi
40d68d:	6a 01                	push   $0x1
40d68f:	8d 85 bc fe ff ff    	lea    -0x144(%ebp),%eax
40d695:	8b cb                	mov    %ebx,%ecx
40d697:	50                   	push   %eax
40d698:	57                   	push   %edi
40d699:	8b 7d 08             	mov    0x8(%ebp),%edi
40d69c:	56                   	push   %esi
40d69d:	57                   	push   %edi
40d69e:	e8 3a f8 ff ff       	call   0x40cedd
40d6a3:	84 c0                	test   %al,%al
40d6a5:	0f 85 5b fe ff ff    	jne    0x40d506
40d6ab:	5f                   	pop    %edi
40d6ac:	5e                   	pop    %esi
40d6ad:	5b                   	pop    %ebx
40d6ae:	8b e5                	mov    %ebp,%esp
40d6b0:	5d                   	pop    %ebp
40d6b1:	c2 0c 00             	ret    $0xc
40d6b4:	83 3d 80 72 4c 00 00 	cmpl   $0x0,0x4c7280
40d6bb:	0f 84 d3 fe ff ff    	je     0x40d594
40d6c1:	e9 6a 54 03 00       	jmp    0x442b30
40d6c6:	c6 45 fb 01          	movb   $0x1,-0x5(%ebp)
40d6ca:	e9 b2 fb ff ff       	jmp    0x40d281
40d6cf:	ff 75 cc             	push   -0x34(%ebp)
40d6d2:	6a 6e                	push   $0x6e
40d6d4:	e9 ff 55 03 00       	jmp    0x442cd8
40d6d9:	8b 5d ec             	mov    -0x14(%ebp),%ebx
40d6dc:	e9 e8 55 03 00       	jmp    0x442cc9
40d6e1:	cc                   	int3
40d6e2:	cc                   	int3
40d6e3:	cc                   	int3
40d6e4:	cc                   	int3
40d6e5:	cc                   	int3
40d6e6:	cc                   	int3
40d6e7:	cc                   	int3
40d6e8:	cc                   	int3
40d6e9:	cc                   	int3
40d6ea:	cc                   	int3
40d6eb:	cc                   	int3
40d6ec:	cc                   	int3
40d6ed:	cc                   	int3
40d6ee:	cc                   	int3
40d6ef:	cc                   	int3
40d6f0:	55                   	push   %ebp
40d6f1:	8b ec                	mov    %esp,%ebp
40d6f3:	83 ec 2c             	sub    $0x2c,%esp
40d6f6:	53                   	push   %ebx
40d6f7:	33 d2                	xor    %edx,%edx
40d6f9:	89 4d f8             	mov    %ecx,-0x8(%ebp)
40d6fc:	56                   	push   %esi
40d6fd:	8d b1 5c 01 00 00    	lea    0x15c(%ecx),%esi
40d703:	89 55 fc             	mov    %edx,-0x4(%ebp)
40d706:	57                   	push   %edi
40d707:	89 55 d8             	mov    %edx,-0x28(%ebp)
40d70a:	89 55 e0             	mov    %edx,-0x20(%ebp)
40d70d:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
40d714:	38 56 09             	cmp    %dl,0x9(%esi)
40d717:	0f 85 c7 55 03 00    	jne    0x442ce4
40d71d:	8b 7e 04             	mov    0x4(%esi),%edi
40d720:	83 7f 2c 08          	cmpl   $0x8,0x2c(%edi)
40d724:	8b 5f 0c             	mov    0xc(%edi),%ebx
40d727:	89 7d f4             	mov    %edi,-0xc(%ebp)
40d72a:	0f 84 bf 55 03 00    	je     0x442cef
40d730:	8b 47 1c             	mov    0x1c(%edi),%eax
40d733:	83 f8 05             	cmp    $0x5,%eax
40d736:	0f 84 da 55 03 00    	je     0x442d16
40d73c:	83 f8 0f             	cmp    $0xf,%eax
40d73f:	0f 84 5b 56 03 00    	je     0x442da0
40d745:	8b 43 0c             	mov    0xc(%ebx),%eax
40d748:	8d 77 20             	lea    0x20(%edi),%esi
40d74b:	89 75 ec             	mov    %esi,-0x14(%ebp)
40d74e:	83 f8 01             	cmp    $0x1,%eax
40d751:	0f 85 d1 56 03 00    	jne    0x442e28
40d757:	8b 46 0c             	mov    0xc(%esi),%eax
40d75a:	83 f8 01             	cmp    $0x1,%eax
40d75d:	0f 85 bc 57 03 00    	jne    0x442f1f
40d763:	8b 0b                	mov    (%ebx),%ecx
40d765:	8b 06                	mov    (%esi),%eax
40d767:	8d 14 08             	lea    (%eax,%ecx,1),%edx
40d76a:	89 55 ec             	mov    %edx,-0x14(%ebp)
40d76d:	99                   	cltd
40d76e:	89 45 fc             	mov    %eax,-0x4(%ebp)
40d771:	8b c1                	mov    %ecx,%eax
40d773:	89 55 f4             	mov    %edx,-0xc(%ebp)
40d776:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40d779:	99                   	cltd
40d77a:	01 45 fc             	add    %eax,-0x4(%ebp)
40d77d:	8b 45 ec             	mov    -0x14(%ebp),%eax
40d780:	13 ca                	adc    %edx,%ecx
40d782:	99                   	cltd
40d783:	3b 45 fc             	cmp    -0x4(%ebp),%eax
40d786:	0f 85 7f 57 03 00    	jne    0x442f0b
40d78c:	3b d1                	cmp    %ecx,%edx
40d78e:	0f 85 77 57 03 00    	jne    0x442f0b
40d794:	8b 45 ec             	mov    -0x14(%ebp),%eax
40d797:	89 03                	mov    %eax,(%ebx)
40d799:	8b 55 d8             	mov    -0x28(%ebp),%edx
40d79c:	89 55 fc             	mov    %edx,-0x4(%ebp)
40d79f:	8b 4b 08             	mov    0x8(%ebx),%ecx
40d7a2:	85 c9                	test   %ecx,%ecx
40d7a4:	0f 85 aa 57 03 00    	jne    0x442f54
40d7aa:	8b 4d e0             	mov    -0x20(%ebp),%ecx
40d7ad:	85 c9                	test   %ecx,%ecx
40d7af:	0f 85 b7 57 03 00    	jne    0x442f6c
40d7b5:	8b 45 e4             	mov    -0x1c(%ebp),%eax
40d7b8:	83 f8 05             	cmp    $0x5,%eax
40d7bb:	0f 8d c3 57 03 00    	jge    0x442f84
40d7c1:	d9 ee                	fldz
40d7c3:	dd 55 d8             	fstl   -0x28(%ebp)
40d7c6:	c7 45 e4 03 00 00 00 	movl   $0x3,-0x1c(%ebp)
40d7cd:	8b 4e 0c             	mov    0xc(%esi),%ecx
40d7d0:	8b c1                	mov    %ecx,%eax
40d7d2:	c1 e0 06             	shl    $0x6,%eax
40d7d5:	8b 80 44 4f 4a 00    	mov    0x4a4f44(%eax),%eax
40d7db:	83 f8 03             	cmp    $0x3,%eax
40d7de:	0f 85 42 58 03 00    	jne    0x443026
40d7e4:	83 f9 01             	cmp    $0x1,%ecx
40d7e7:	0f 85 ee 58 03 00    	jne    0x4430db
40d7ed:	db 06                	fildl  (%esi)
40d7ef:	de d9                	fcompp
40d7f1:	df e0                	fnstsw %ax
40d7f3:	f6 c4 05             	test   $0x5,%ah
40d7f6:	0f 8b 63 58 03 00    	jnp    0x44305f
40d7fc:	8b 4f 1c             	mov    0x1c(%edi),%ecx
40d7ff:	8b c1                	mov    %ecx,%eax
40d801:	c1 e0 04             	shl    $0x4,%eax
40d804:	03 43 0c             	add    0xc(%ebx),%eax
40d807:	8b 04 85 38 4f 4a 00 	mov    0x4a4f38(,%eax,4),%eax
40d80e:	83 f8 01             	cmp    $0x1,%eax
40d811:	0f 85 93 00 00 00    	jne    0x40d8aa
40d817:	83 f9 01             	cmp    $0x1,%ecx
40d81a:	0f 85 40 5a 03 00    	jne    0x443260
40d820:	8b 47 10             	mov    0x10(%edi),%eax
40d823:	89 45 fc             	mov    %eax,-0x4(%ebp)
40d826:	8b f0                	mov    %eax,%esi
40d828:	8b 43 0c             	mov    0xc(%ebx),%eax
40d82b:	83 f8 01             	cmp    $0x1,%eax
40d82e:	0f 85 cf 5a 03 00    	jne    0x443303
40d834:	8b 03                	mov    (%ebx),%eax
40d836:	3b f0                	cmp    %eax,%esi
40d838:	7c 29                	jl     0x40d863
40d83a:	8b 4f 04             	mov    0x4(%edi),%ecx
40d83d:	8b 45 0c             	mov    0xc(%ebp),%eax
40d840:	41                   	inc    %ecx
40d841:	89 08                	mov    %ecx,(%eax)
40d843:	8b 4d e0             	mov    -0x20(%ebp),%ecx
40d846:	85 c9                	test   %ecx,%ecx
40d848:	0f 85 5f 5b 03 00    	jne    0x4433ad
40d84e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
40d851:	83 f8 05             	cmp    $0x5,%eax
40d854:	0f 8d 65 5b 03 00    	jge    0x4433bf
40d85a:	5f                   	pop    %edi
40d85b:	5e                   	pop    %esi
40d85c:	5b                   	pop    %ebx
40d85d:	8b e5                	mov    %ebp,%esp
40d85f:	5d                   	pop    %ebp
40d860:	c2 08 00             	ret    $0x8
40d863:	8b 75 f8             	mov    -0x8(%ebp),%esi
40d866:	81 c6 5c 01 00 00    	add    $0x15c,%esi
40d86c:	80 7e 09 00          	cmpb   $0x0,0x9(%esi)
40d870:	0f 85 1b 5b 03 00    	jne    0x443391
40d876:	80 7e 08 00          	cmpb   $0x0,0x8(%esi)
40d87a:	75 5f                	jne    0x40d8db
40d87c:	8b 7e 04             	mov    0x4(%esi),%edi
40d87f:	8b 5f 30             	mov    0x30(%edi),%ebx
40d882:	85 ff                	test   %edi,%edi
40d884:	74 19                	je     0x40d89f
40d886:	8d 4f 20             	lea    0x20(%edi),%ecx
40d889:	e8 92 c1 ff ff       	call   0x409a20
40d88e:	8d 4f 10             	lea    0x10(%edi),%ecx
40d891:	e8 8a c1 ff ff       	call   0x409a20
40d896:	57                   	push   %edi
40d897:	e8 d0 37 01 00       	call   0x42106c
40d89c:	83 c4 04             	add    $0x4,%esp
40d89f:	89 5e 04             	mov    %ebx,0x4(%esi)
40d8a2:	c6 46 09 00          	movb   $0x0,0x9(%esi)
40d8a6:	ff 0e                	decl   (%esi)
40d8a8:	eb 99                	jmp    0x40d843
40d8aa:	83 e8 02             	sub    $0x2,%eax
40d8ad:	83 f8 07             	cmp    $0x7,%eax
40d8b0:	77 88                	ja     0x40d83a
40d8b2:	ff 24 85 e4 d8 40 00 	jmp    *0x40d8e4(,%eax,4)
40d8b9:	8d 4f 10             	lea    0x10(%edi),%ecx
40d8bc:	e8 37 c4 ff ff       	call   0x409cf8
40d8c1:	dd 5d e8             	fstpl  -0x18(%ebp)
40d8c4:	8b cb                	mov    %ebx,%ecx
40d8c6:	e8 2d c4 ff ff       	call   0x409cf8
40d8cb:	dc 5d e8             	fcompl -0x18(%ebp)
40d8ce:	df e0                	fnstsw %ax
40d8d0:	f6 c4 41             	test   $0x41,%ah
40d8d3:	0f 85 61 ff ff ff    	jne    0x40d83a
40d8d9:	eb 88                	jmp    0x40d863
40d8db:	c6 46 09 01          	movb   $0x1,0x9(%esi)
40d8df:	eb c5                	jmp    0x40d8a6
40d8e1:	8d 49 00             	lea    0x0(%ecx),%ecx
40d8e4:	12 32                	adc    (%edx),%dh
40d8e6:	44                   	inc    %esp
40d8e7:	00 b9 d8 40 00 e8    	add    %bh,-0x17ffbf28(%ecx)
40d8ed:	31 44 00 3a          	xor    %eax,0x3a(%eax,%eax,1)
40d8f1:	d8 40 00             	fadds  0x0(%eax)
40d8f4:	3a d8                	cmp    %al,%bl
40d8f6:	40                   	inc    %eax
40d8f7:	00 42 32             	add    %al,0x32(%edx)
40d8fa:	44                   	inc    %esp
40d8fb:	00 3a                	add    %bh,(%edx)
40d8fd:	d8 40 00             	fadds  0x0(%eax)
40d900:	17                   	pop    %ss
40d901:	d8 40 00             	fadds  0x0(%eax)
40d904:	cc                   	int3
40d905:	cc                   	int3
40d906:	cc                   	int3
40d907:	cc                   	int3
40d908:	cc                   	int3
40d909:	cc                   	int3
40d90a:	cc                   	int3
40d90b:	cc                   	int3
40d90c:	cc                   	int3
40d90d:	cc                   	int3
40d90e:	cc                   	int3
40d90f:	cc                   	int3
40d910:	55                   	push   %ebp
40d911:	8b ec                	mov    %esp,%ebp
40d913:	83 ec 64             	sub    $0x64,%esp
40d916:	53                   	push   %ebx
40d917:	56                   	push   %esi
40d918:	8b 75 0c             	mov    0xc(%ebp),%esi
40d91b:	33 db                	xor    %ebx,%ebx
40d91d:	57                   	push   %edi
40d91e:	8b 7d 08             	mov    0x8(%ebp),%edi
40d921:	89 5d e0             	mov    %ebx,-0x20(%ebp)
40d924:	8b 06                	mov    (%esi),%eax
40d926:	48                   	dec    %eax
40d927:	89 5d e8             	mov    %ebx,-0x18(%ebp)
40d92a:	89 45 a4             	mov    %eax,-0x5c(%ebp)
40d92d:	8b 47 04             	mov    0x4(%edi),%eax
40d930:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
40d937:	89 5d d0             	mov    %ebx,-0x30(%ebp)
40d93a:	89 5d d8             	mov    %ebx,-0x28(%ebp)
40d93d:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
40d944:	8b 40 04             	mov    0x4(%eax),%eax
40d947:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40d94a:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)
40d951:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
40d958:	66 83 78 08 33       	cmpw   $0x33,0x8(%eax)
40d95d:	c7 45 bc 01 00 00 00 	movl   $0x1,-0x44(%ebp)
40d964:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
40d96b:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
40d972:	c7 45 cc 01 00 00 00 	movl   $0x1,-0x34(%ebp)
40d979:	89 5d f8             	mov    %ebx,-0x8(%ebp)
40d97c:	c7 45 a0 03 00 00 00 	movl   $0x3,-0x60(%ebp)
40d983:	0f 85 f3 5f 03 00    	jne    0x44397c
40d989:	8b 08                	mov    (%eax),%ecx
40d98b:	89 4d f4             	mov    %ecx,-0xc(%ebp)
40d98e:	c7 45 0c 02 00 00 00 	movl   $0x2,0xc(%ebp)
40d995:	39 1d 80 72 4c 00    	cmp    %ebx,0x4c7280
40d99b:	0f 84 55 03 00 00    	je     0x40dcf6
40d9a1:	a1 84 72 4c 00       	mov    0x4c7284,%eax
40d9a6:	38 1d 89 72 4c 00    	cmp    %bl,0x4c7289
40d9ac:	0f 85 5b 03 00 00    	jne    0x40dd0d
40d9b2:	50                   	push   %eax
40d9b3:	51                   	push   %ecx
40d9b4:	89 45 08             	mov    %eax,0x8(%ebp)
40d9b7:	e8 e4 ae ff ff       	call   0x4088a0
40d9bc:	84 c0                	test   %al,%al
40d9be:	0f 84 10 03 00 00    	je     0x40dcd4
40d9c4:	8b 45 08             	mov    0x8(%ebp),%eax
40d9c7:	8b 00                	mov    (%eax),%eax
40d9c9:	85 c0                	test   %eax,%eax
40d9cb:	0f 84 03 03 00 00    	je     0x40dcd4
40d9d1:	8b 58 10             	mov    0x10(%eax),%ebx
40d9d4:	8b 40 14             	mov    0x14(%eax),%eax
40d9d7:	81 e3 00 ff 00 00    	and    $0xff00,%ebx
40d9dd:	89 45 08             	mov    %eax,0x8(%ebp)
40d9e0:	89 45 f8             	mov    %eax,-0x8(%ebp)
40d9e3:	85 c0                	test   %eax,%eax
40d9e5:	0f 84 b6 02 00 00    	je     0x40dca1
40d9eb:	f7 c3 00 01 00 00    	test   $0x100,%ebx
40d9f1:	0f 85 bd 5b 03 00    	jne    0x4435b4
40d9f7:	8b d8                	mov    %eax,%ebx
40d9f9:	8b 47 04             	mov    0x4(%edi),%eax
40d9fc:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40d9ff:	8b 40 08             	mov    0x8(%eax),%eax
40da02:	66 83 78 08 4e       	cmpw   $0x4e,0x8(%eax)
40da07:	0f 84 bf 5b 03 00    	je     0x4435cc
40da0d:	8b 47 04             	mov    0x4(%edi),%eax
40da10:	89 5d ac             	mov    %ebx,-0x54(%ebp)
40da13:	8b 04 88             	mov    (%eax,%ecx,4),%eax
40da16:	66 83 78 08 00       	cmpw   $0x0,0x8(%eax)
40da1b:	0f 84 0b 5c 03 00    	je     0x44362c
40da21:	6a ff                	push   $0xffffffff
40da23:	8d 45 e0             	lea    -0x20(%ebp),%eax
40da26:	41                   	inc    %ecx
40da27:	50                   	push   %eax
40da28:	8d 45 0c             	lea    0xc(%ebp),%eax
40da2b:	89 4d 0c             	mov    %ecx,0xc(%ebp)
40da2e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40da31:	50                   	push   %eax
40da32:	57                   	push   %edi
40da33:	e8 c8 c5 ff ff       	call   0x40a000
40da38:	85 c0                	test   %eax,%eax
40da3a:	0f 88 38 02 00 00    	js     0x40dc78
40da40:	8d 45 e0             	lea    -0x20(%ebp),%eax
40da43:	3b d8                	cmp    %eax,%ebx
40da45:	74 1c                	je     0x40da63
40da47:	83 7b 0c 04          	cmpl   $0x4,0xc(%ebx)
40da4b:	0f 84 96 02 00 00    	je     0x40dce7