40b672:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b676:	83 c7 14             	add    $0x14,%edi
40b679:	8b 45 f0             	mov    -0x10(%ebp),%eax
40b67c:	8d 73 14             	lea    0x14(%ebx),%esi
40b67f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b680:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b681:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b682:	8d 73 20             	lea    0x20(%ebx),%esi
40b685:	8d 78 20             	lea    0x20(%eax),%edi
40b688:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b689:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b68a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b68b:	8d 73 2c             	lea    0x2c(%ebx),%esi
40b68e:	8d 78 2c             	lea    0x2c(%eax),%edi
40b691:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b692:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b693:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b694:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b698:	e8 76 43 03 00       	call   0x43fa13
40b69d:	c2 04 00             	ret    $0x4
40b6a0:	6a 04                	push   $0x4
40b6a2:	b8 63 b8 48 00       	mov    $0x48b863,%eax
40b6a7:	e8 9e 43 03 00       	call   0x43fa4a
40b6ac:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40b6af:	33 c0                	xor    %eax,%eax
40b6b1:	89 01                	mov    %eax,(%ecx)
40b6b3:	88 41 04             	mov    %al,0x4(%ecx)
40b6b6:	89 41 08             	mov    %eax,0x8(%ecx)
40b6b9:	89 41 0c             	mov    %eax,0xc(%ecx)
40b6bc:	89 41 10             	mov    %eax,0x10(%ecx)
40b6bf:	89 45 fc             	mov    %eax,-0x4(%ebp)
40b6c2:	89 41 14             	mov    %eax,0x14(%ecx)
40b6c5:	89 41 18             	mov    %eax,0x18(%ecx)
40b6c8:	88 41 1c             	mov    %al,0x1c(%ecx)
40b6cb:	89 41 20             	mov    %eax,0x20(%ecx)
40b6ce:	89 41 24             	mov    %eax,0x24(%ecx)
40b6d1:	88 41 28             	mov    %al,0x28(%ecx)
40b6d4:	89 41 2c             	mov    %eax,0x2c(%ecx)
40b6d7:	89 41 30             	mov    %eax,0x30(%ecx)
40b6da:	88 41 34             	mov    %al,0x34(%ecx)
40b6dd:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b6e1:	8b c1                	mov    %ecx,%eax
40b6e3:	e8 2b 43 03 00       	call   0x43fa13
40b6e8:	c3                   	ret
40b6e9:	6a 04                	push   $0x4
40b6eb:	b8 89 b8 48 00       	mov    $0x48b889,%eax
40b6f0:	e8 55 43 03 00       	call   0x43fa4a
40b6f5:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40b6f8:	33 c0                	xor    %eax,%eax
40b6fa:	89 01                	mov    %eax,(%ecx)
40b6fc:	88 41 04             	mov    %al,0x4(%ecx)
40b6ff:	89 41 08             	mov    %eax,0x8(%ecx)
40b702:	89 41 0c             	mov    %eax,0xc(%ecx)
40b705:	89 41 10             	mov    %eax,0x10(%ecx)
40b708:	89 45 fc             	mov    %eax,-0x4(%ebp)
40b70b:	89 41 14             	mov    %eax,0x14(%ecx)
40b70e:	89 41 18             	mov    %eax,0x18(%ecx)
40b711:	88 41 1c             	mov    %al,0x1c(%ecx)
40b714:	89 41 20             	mov    %eax,0x20(%ecx)
40b717:	89 41 24             	mov    %eax,0x24(%ecx)
40b71a:	88 41 28             	mov    %al,0x28(%ecx)
40b71d:	89 41 2c             	mov    %eax,0x2c(%ecx)
40b720:	89 41 30             	mov    %eax,0x30(%ecx)
40b723:	88 41 34             	mov    %al,0x34(%ecx)
40b726:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b72a:	8b c1                	mov    %ecx,%eax
40b72c:	e8 e2 42 03 00       	call   0x43fa13
40b731:	c3                   	ret
40b732:	6a 04                	push   $0x4
40b734:	b8 b4 b8 48 00       	mov    $0x48b8b4,%eax
40b739:	e8 0c 43 03 00       	call   0x43fa4a
40b73e:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40b741:	c7 01 b0 45 49 00    	movl   $0x4945b0,(%ecx)
40b747:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b74b:	8b 45 0c             	mov    0xc(%ebp),%eax
40b74e:	c7 01 c0 45 49 00    	movl   $0x4945c0,(%ecx)
40b754:	89 41 04             	mov    %eax,0x4(%ecx)
40b757:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
40b75e:	c7 01 18 64 49 00    	movl   $0x496418,(%ecx)
40b764:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b768:	8b c1                	mov    %ecx,%eax
40b76a:	e8 a4 42 03 00       	call   0x43fa13
40b76f:	c2 08 00             	ret    $0x8
40b772:	6a 04                	push   $0x4
40b774:	b8 df b8 48 00       	mov    $0x48b8df,%eax
40b779:	e8 cc 42 03 00       	call   0x43fa4a
40b77e:	8b f1                	mov    %ecx,%esi
40b780:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b783:	c7 06 b0 45 49 00    	movl   $0x4945b0,(%esi)
40b789:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b78d:	8b 45 0c             	mov    0xc(%ebp),%eax
40b790:	c7 06 c0 45 49 00    	movl   $0x4945c0,(%esi)
40b796:	89 46 04             	mov    %eax,0x4(%esi)
40b799:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
40b7a0:	ff 75 10             	push   0x10(%ebp)
40b7a3:	c7 06 54 64 49 00    	movl   $0x496454,(%esi)
40b7a9:	ff 75 08             	push   0x8(%ebp)
40b7ac:	e8 ac f7 00 00       	call   0x41af5d
40b7b1:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b7b5:	8b c6                	mov    %esi,%eax
40b7b7:	e8 57 42 03 00       	call   0x43fa13
40b7bc:	c2 0c 00             	ret    $0xc
40b7bf:	6a 04                	push   $0x4
40b7c1:	b8 05 b9 48 00       	mov    $0x48b905,%eax
40b7c6:	e8 7f 42 03 00       	call   0x43fa4a
40b7cb:	8b f1                	mov    %ecx,%esi
40b7cd:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b7d0:	8b 55 08             	mov    0x8(%ebp),%edx
40b7d3:	8d 4e 10             	lea    0x10(%esi),%ecx
40b7d6:	8b 02                	mov    (%edx),%eax
40b7d8:	89 06                	mov    %eax,(%esi)
40b7da:	8b 42 04             	mov    0x4(%edx),%eax
40b7dd:	89 46 04             	mov    %eax,0x4(%esi)
40b7e0:	8b 42 08             	mov    0x8(%edx),%eax
40b7e3:	89 46 08             	mov    %eax,0x8(%esi)
40b7e6:	8b 42 0c             	mov    0xc(%edx),%eax
40b7e9:	89 46 0c             	mov    %eax,0xc(%esi)
40b7ec:	8d 42 10             	lea    0x10(%edx),%eax
40b7ef:	50                   	push   %eax
40b7f0:	e8 53 fe ff ff       	call   0x40b648
40b7f5:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b7f9:	8b c6                	mov    %esi,%eax
40b7fb:	e8 13 42 03 00       	call   0x43fa13
40b800:	c2 04 00             	ret    $0x4
40b803:	6a 04                	push   $0x4
40b805:	b8 2b b9 48 00       	mov    $0x48b92b,%eax
40b80a:	e8 3b 42 03 00       	call   0x43fa4a
40b80f:	8b f9                	mov    %ecx,%edi
40b811:	89 7d f0             	mov    %edi,-0x10(%ebp)
40b814:	8b 45 08             	mov    0x8(%ebp),%eax
40b817:	8d 77 10             	lea    0x10(%edi),%esi
40b81a:	89 07                	mov    %eax,(%edi)
40b81c:	8b ce                	mov    %esi,%ecx
40b81e:	8b 45 0c             	mov    0xc(%ebp),%eax
40b821:	89 47 04             	mov    %eax,0x4(%edi)
40b824:	8b 45 10             	mov    0x10(%ebp),%eax
40b827:	89 47 08             	mov    %eax,0x8(%edi)
40b82a:	8b 45 14             	mov    0x14(%ebp),%eax
40b82d:	89 47 0c             	mov    %eax,0xc(%edi)
40b830:	e8 6b fe ff ff       	call   0x40b6a0
40b835:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b839:	ff 37                	push   (%edi)
40b83b:	ff 77 0c             	push   0xc(%edi)
40b83e:	ff 77 08             	push   0x8(%edi)
40b841:	56                   	push   %esi
40b842:	ff 77 04             	push   0x4(%edi)
40b845:	ff 37                	push   (%edi)
40b847:	e8 a1 9d ff ff       	call   0x4055ed
40b84c:	83 c4 18             	add    $0x18,%esp
40b84f:	84 c0                	test   %al,%al
40b851:	75 04                	jne    0x40b857
40b853:	83 67 08 00          	andl   $0x0,0x8(%edi)
40b857:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b85b:	8b c7                	mov    %edi,%eax
40b85d:	e8 b1 41 03 00       	call   0x43fa13
40b862:	c2 10 00             	ret    $0x10
40b865:	6a 04                	push   $0x4
40b867:	b8 51 b9 48 00       	mov    $0x48b951,%eax
40b86c:	e8 d9 41 03 00       	call   0x43fa4a
40b871:	8b f1                	mov    %ecx,%esi
40b873:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b876:	33 c0                	xor    %eax,%eax
40b878:	8d 4e 10             	lea    0x10(%esi),%ecx
40b87b:	89 06                	mov    %eax,(%esi)
40b87d:	89 46 04             	mov    %eax,0x4(%esi)
40b880:	89 46 08             	mov    %eax,0x8(%esi)
40b883:	e8 18 fe ff ff       	call   0x40b6a0
40b888:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b88c:	8b c6                	mov    %esi,%eax
40b88e:	e8 80 41 03 00       	call   0x43fa13
40b893:	c3                   	ret
40b894:	6a 04                	push   $0x4
40b896:	b8 7f b9 48 00       	mov    $0x48b97f,%eax
40b89b:	e8 aa 41 03 00       	call   0x43fa4a
40b8a0:	8b f1                	mov    %ecx,%esi
40b8a2:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b8a5:	8b 5d 08             	mov    0x8(%ebp),%ebx
40b8a8:	53                   	push   %ebx
40b8a9:	e8 11 ff ff ff       	call   0x40b7bf
40b8ae:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b8b2:	8d 7e 4c             	lea    0x4c(%esi),%edi
40b8b5:	8d 73 4c             	lea    0x4c(%ebx),%esi
40b8b8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b8b9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b8ba:	a5                   	movsl  %ds:(%esi),%es:(%edi)
40b8bb:	8b 75 f0             	mov    -0x10(%ebp),%esi
40b8be:	8b 43 58             	mov    0x58(%ebx),%eax
40b8c1:	89 46 58             	mov    %eax,0x58(%esi)
40b8c4:	8d 4e 5c             	lea    0x5c(%esi),%ecx
40b8c7:	8d 43 5c             	lea    0x5c(%ebx),%eax
40b8ca:	50                   	push   %eax
40b8cb:	e8 de 00 00 00       	call   0x40b9ae
40b8d0:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
40b8d4:	83 7b 48 00          	cmpl   $0x0,0x48(%ebx)
40b8d8:	75 06                	jne    0x40b8e0
40b8da:	83 66 48 00          	andl   $0x0,0x48(%esi)
40b8de:	eb 17                	jmp    0x40b8f7
40b8e0:	8d 43 4c             	lea    0x4c(%ebx),%eax
40b8e3:	39 43 48             	cmp    %eax,0x48(%ebx)
40b8e6:	75 05                	jne    0x40b8ed
40b8e8:	8d 46 4c             	lea    0x4c(%esi),%eax
40b8eb:	eb 07                	jmp    0x40b8f4
40b8ed:	8b ce                	mov    %esi,%ecx
40b8ef:	e8 e8 c3 00 00       	call   0x417cdc
40b8f4:	89 46 48             	mov    %eax,0x48(%esi)
40b8f7:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b8fb:	8b c6                	mov    %esi,%eax
40b8fd:	e8 11 41 03 00       	call   0x43fa13
40b902:	c2 04 00             	ret    $0x4
40b905:	6a 04                	push   $0x4
40b907:	b8 ad b9 48 00       	mov    $0x48b9ad,%eax
40b90c:	e8 39 41 03 00       	call   0x43fa4a
40b911:	8b f1                	mov    %ecx,%esi
40b913:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b916:	ff 75 18             	push   0x18(%ebp)
40b919:	ff 75 10             	push   0x10(%ebp)
40b91c:	ff 75 0c             	push   0xc(%ebp)
40b91f:	ff 75 08             	push   0x8(%ebp)
40b922:	e8 dc fe ff ff       	call   0x40b803
40b927:	33 c0                	xor    %eax,%eax
40b929:	89 45 fc             	mov    %eax,-0x4(%ebp)
40b92c:	8d 4e 5c             	lea    0x5c(%esi),%ecx
40b92f:	ff 75 14             	push   0x14(%ebp)
40b932:	89 46 4c             	mov    %eax,0x4c(%esi)
40b935:	89 46 50             	mov    %eax,0x50(%esi)
40b938:	88 46 54             	mov    %al,0x54(%esi)
40b93b:	89 46 58             	mov    %eax,0x58(%esi)
40b93e:	89 01                	mov    %eax,(%ecx)
40b940:	89 41 04             	mov    %eax,0x4(%ecx)
40b943:	89 41 08             	mov    %eax,0x8(%ecx)
40b946:	8d 45 18             	lea    0x18(%ebp),%eax
40b949:	50                   	push   %eax
40b94a:	8d 45 14             	lea    0x14(%ebp),%eax
40b94d:	50                   	push   %eax
40b94e:	e8 e7 91 ff ff       	call   0x404b3a
40b953:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
40b957:	8b ce                	mov    %esi,%ecx
40b959:	ff 75 0c             	push   0xc(%ebp)
40b95c:	ff 75 08             	push   0x8(%ebp)
40b95f:	e8 dc f6 00 00       	call   0x41b040
40b964:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b968:	8b c6                	mov    %esi,%eax
40b96a:	e8 a4 40 03 00       	call   0x43fa13
40b96f:	c2 14 00             	ret    $0x14
40b972:	6a 04                	push   $0x4
40b974:	b8 db b9 48 00       	mov    $0x48b9db,%eax
40b979:	e8 cc 40 03 00       	call   0x43fa4a
40b97e:	8b f1                	mov    %ecx,%esi
40b980:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b983:	e8 dd fe ff ff       	call   0x40b865
40b988:	33 c0                	xor    %eax,%eax
40b98a:	89 45 fc             	mov    %eax,-0x4(%ebp)
40b98d:	89 46 48             	mov    %eax,0x48(%esi)
40b990:	89 46 4c             	mov    %eax,0x4c(%esi)
40b993:	89 46 50             	mov    %eax,0x50(%esi)
40b996:	88 46 54             	mov    %al,0x54(%esi)
40b999:	89 46 5c             	mov    %eax,0x5c(%esi)
40b99c:	89 46 60             	mov    %eax,0x60(%esi)
40b99f:	89 46 64             	mov    %eax,0x64(%esi)
40b9a2:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b9a6:	8b c6                	mov    %esi,%eax
40b9a8:	e8 66 40 03 00       	call   0x43fa13
40b9ad:	c3                   	ret
40b9ae:	6a 08                	push   $0x8
40b9b0:	b8 f6 b9 48 00       	mov    $0x48b9f6,%eax
40b9b5:	e8 fb 40 03 00       	call   0x43fab5
40b9ba:	8b f9                	mov    %ecx,%edi
40b9bc:	89 7d ec             	mov    %edi,-0x14(%ebp)
40b9bf:	33 f6                	xor    %esi,%esi
40b9c1:	89 37                	mov    %esi,(%edi)
40b9c3:	89 77 04             	mov    %esi,0x4(%edi)
40b9c6:	89 77 08             	mov    %esi,0x8(%edi)
40b9c9:	8b 5d 08             	mov    0x8(%ebp),%ebx
40b9cc:	8b 43 04             	mov    0x4(%ebx),%eax
40b9cf:	2b 03                	sub    (%ebx),%eax
40b9d1:	c1 f8 02             	sar    $0x2,%eax
40b9d4:	50                   	push   %eax
40b9d5:	e8 45 b0 00 00       	call   0x416a1f
40b9da:	84 c0                	test   %al,%al
40b9dc:	74 1a                	je     0x40b9f8
40b9de:	89 75 fc             	mov    %esi,-0x4(%ebp)
40b9e1:	57                   	push   %edi
40b9e2:	ff 37                	push   (%edi)
40b9e4:	ff 73 04             	push   0x4(%ebx)
40b9e7:	ff 33                	push   (%ebx)
40b9e9:	e8 ac a9 ff ff       	call   0x40639a
40b9ee:	83 c4 10             	add    $0x10,%esp
40b9f1:	89 47 04             	mov    %eax,0x4(%edi)
40b9f4:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b9f8:	8b c7                	mov    %edi,%eax
40b9fa:	e8 14 40 03 00       	call   0x43fa13
40b9ff:	c2 04 00             	ret    $0x4
40ba02:	8b 4d ec             	mov    -0x14(%ebp),%ecx
40ba05:	e8 68 16 01 00       	call   0x41d072
40ba0a:	33 f6                	xor    %esi,%esi
40ba0c:	56                   	push   %esi
40ba0d:	56                   	push   %esi
40ba0e:	e8 af 87 03 00       	call   0x4441c2
40ba13:	cc                   	int3
40ba14:	6a 08                	push   $0x8
40ba16:	b8 11 ba 48 00       	mov    $0x48ba11,%eax
40ba1b:	e8 95 40 03 00       	call   0x43fab5
40ba20:	8b f9                	mov    %ecx,%edi
40ba22:	89 7d ec             	mov    %edi,-0x14(%ebp)
40ba25:	33 f6                	xor    %esi,%esi
40ba27:	89 37                	mov    %esi,(%edi)
40ba29:	89 77 04             	mov    %esi,0x4(%edi)
40ba2c:	89 77 08             	mov    %esi,0x8(%edi)
40ba2f:	8b 5d 08             	mov    0x8(%ebp),%ebx
40ba32:	8b 43 04             	mov    0x4(%ebx),%eax
40ba35:	2b 03                	sub    (%ebx),%eax
40ba37:	c1 f8 02             	sar    $0x2,%eax
40ba3a:	50                   	push   %eax
40ba3b:	e8 22 b0 00 00       	call   0x416a62
40ba40:	84 c0                	test   %al,%al
40ba42:	74 1a                	je     0x40ba5e
40ba44:	89 75 fc             	mov    %esi,-0x4(%ebp)
40ba47:	57                   	push   %edi
40ba48:	ff 37                	push   (%edi)
40ba4a:	ff 73 04             	push   0x4(%ebx)
40ba4d:	ff 33                	push   (%ebx)
40ba4f:	e8 6f a9 ff ff       	call   0x4063c3
40ba54:	83 c4 10             	add    $0x10,%esp
40ba57:	89 47 04             	mov    %eax,0x4(%edi)
40ba5a:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40ba5e:	8b c7                	mov    %edi,%eax
40ba60:	e8 ae 3f 03 00       	call   0x43fa13
40ba65:	c2 04 00             	ret    $0x4
40ba68:	8b 4d ec             	mov    -0x14(%ebp),%ecx
40ba6b:	e8 28 16 01 00       	call   0x41d098
40ba70:	33 f6                	xor    %esi,%esi
40ba72:	56                   	push   %esi
40ba73:	56                   	push   %esi
40ba74:	e8 49 87 03 00       	call   0x4441c2
40ba79:	cc                   	int3
40ba7a:	6a 08                	push   $0x8
40ba7c:	b8 2c ba 48 00       	mov    $0x48ba2c,%eax
40ba81:	e8 2f 40 03 00       	call   0x43fab5
40ba86:	8b f9                	mov    %ecx,%edi
40ba88:	89 7d ec             	mov    %edi,-0x14(%ebp)
40ba8b:	33 f6                	xor    %esi,%esi
40ba8d:	89 37                	mov    %esi,(%edi)
40ba8f:	89 77 04             	mov    %esi,0x4(%edi)
40ba92:	89 77 08             	mov    %esi,0x8(%edi)
40ba95:	ff 75 08             	push   0x8(%ebp)
40ba98:	e8 c5 af 00 00       	call   0x416a62
40ba9d:	84 c0                	test   %al,%al
40ba9f:	74 1b                	je     0x40babc
40baa1:	89 75 fc             	mov    %esi,-0x4(%ebp)
40baa4:	57                   	push   %edi