5144d6:	0f 84 2e 04 00 00    	je     0x51490a
5144dc:	0f 1f 40 00          	nopl   0x0(%eax)
5144e0:	8d 85 10 01 00 00    	lea    0x110(%ebp),%eax
5144e6:	c7 85 10 01 00 00 f8 	movl   $0xbd1cf8,0x110(%ebp)
5144ed:	1c bd 00
5144f0:	c7 85 1c 02 00 00 04 	movl   $0x104,0x21c(%ebp)
5144f7:	01 00 00
5144fa:	8d b5 14 01 00 00    	lea    0x114(%ebp),%esi
514500:	89 b5 18 02 00 00    	mov    %esi,0x218(%ebp)
514506:	3b c3                	cmp    %ebx,%eax
514508:	74 68                	je     0x514572
51450a:	8b bb 0c 01 00 00    	mov    0x10c(%ebx),%edi
514510:	81 ff 04 01 00 00    	cmp    $0x104,%edi
514516:	76 42                	jbe    0x51455a
514518:	57                   	push   %edi
514519:	e8 79 12 f2 ff       	call   0x435797
51451e:	ff b5 1c 02 00 00    	push   0x21c(%ebp)
514524:	8b f0                	mov    %eax,%esi
514526:	ff b5 18 02 00 00    	push   0x218(%ebp)
51452c:	56                   	push   %esi
51452d:	e8 50 01 f0 ff       	call   0x414682
514532:	8b 85 18 02 00 00    	mov    0x218(%ebp),%eax
514538:	8d 8d 14 01 00 00    	lea    0x114(%ebp),%ecx
51453e:	83 c4 10             	add    $0x10,%esp
514541:	3b c1                	cmp    %ecx,%eax
514543:	74 09                	je     0x51454e
514545:	50                   	push   %eax
514546:	e8 c7 a0 f2 ff       	call   0x43e612
51454b:	83 c4 04             	add    $0x4,%esp
51454e:	89 b5 18 02 00 00    	mov    %esi,0x218(%ebp)
514554:	89 bd 1c 02 00 00    	mov    %edi,0x21c(%ebp)
51455a:	ff b3 0c 01 00 00    	push   0x10c(%ebx)
514560:	ff b3 08 01 00 00    	push   0x108(%ebx)
514566:	56                   	push   %esi
514567:	e8 16 01 f0 ff       	call   0x414682
51456c:	8b 7d d8             	mov    -0x28(%ebp),%edi
51456f:	83 c4 0c             	add    $0xc,%esp
514572:	c7 85 10 01 00 00 04 	movl   $0xbd1d04,0x110(%ebp)
514579:	1d bd 00
51457c:	8d 45 a8             	lea    -0x58(%ebp),%eax
51457f:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
514583:	89 45 98             	mov    %eax,-0x68(%ebp)
514586:	8d 45 b0             	lea    -0x50(%ebp),%eax
514589:	51                   	push   %ecx
51458a:	89 45 9c             	mov    %eax,-0x64(%ebp)
51458d:	8b cc                	mov    %esp,%ecx
51458f:	8d 45 98             	lea    -0x68(%ebp),%eax
514592:	c7 45 a8 00 00 00 00 	movl   $0x0,-0x58(%ebp)
514599:	50                   	push   %eax
51459a:	c7 45 ac 02 00 00 00 	movl   $0x2,-0x54(%ebp)
5145a1:	e8 a1 da f1 ff       	call   0x432047
5145a6:	8d 8d 10 01 00 00    	lea    0x110(%ebp),%ecx
5145ac:	e8 72 6c f2 ff       	call   0x43b223
5145b1:	8b 95 18 02 00 00    	mov    0x218(%ebp),%edx
5145b7:	c7 85 34 02 00 00 0f 	movl   $0xf,0x234(%ebp)
5145be:	00 00 00
5145c1:	c7 85 30 02 00 00 00 	movl   $0x0,0x230(%ebp)
5145c8:	00 00 00
5145cb:	c6 85 20 02 00 00 00 	movb   $0x0,0x220(%ebp)
5145d2:	80 3a 00             	cmpb   $0x0,(%edx)
5145d5:	75 04                	jne    0x5145db
5145d7:	33 c9                	xor    %ecx,%ecx
5145d9:	eb 0e                	jmp    0x5145e9
5145db:	8b ca                	mov    %edx,%ecx
5145dd:	8d 71 01             	lea    0x1(%ecx),%esi
5145e0:	8a 01                	mov    (%ecx),%al
5145e2:	41                   	inc    %ecx
5145e3:	84 c0                	test   %al,%al
5145e5:	75 f9                	jne    0x5145e0
5145e7:	2b ce                	sub    %esi,%ecx
5145e9:	51                   	push   %ecx
5145ea:	52                   	push   %edx
5145eb:	8d 8d 20 02 00 00    	lea    0x220(%ebp),%ecx
5145f1:	e8 9b 00 f0 ff       	call   0x414691
5145f6:	8b 75 dc             	mov    -0x24(%ebp),%esi
5145f9:	8d 85 20 02 00 00    	lea    0x220(%ebp),%eax
5145ff:	50                   	push   %eax
514600:	8d 45 c4             	lea    -0x3c(%ebp),%eax
514603:	50                   	push   %eax
514604:	8d 8e 38 05 00 00    	lea    0x538(%esi),%ecx
51460a:	e8 26 3e f0 ff       	call   0x418435
51460f:	8b 85 34 02 00 00    	mov    0x234(%ebp),%eax
514615:	83 f8 10             	cmp    $0x10,%eax
514618:	72 41                	jb     0x51465b
51461a:	8b 8d 20 02 00 00    	mov    0x220(%ebp),%ecx
514620:	40                   	inc    %eax
514621:	3d 00 10 00 00       	cmp    $0x1000,%eax
514626:	72 2a                	jb     0x514652
514628:	f6 c1 1f             	test   $0x1f,%cl
51462b:	0f 85 17 03 00 00    	jne    0x514948
514631:	8b 41 fc             	mov    -0x4(%ecx),%eax
514634:	3b c1                	cmp    %ecx,%eax
514636:	0f 83 0c 03 00 00    	jae    0x514948
51463c:	2b c8                	sub    %eax,%ecx
51463e:	83 f9 04             	cmp    $0x4,%ecx
514641:	0f 82 01 03 00 00    	jb     0x514948
514647:	83 f9 23             	cmp    $0x23,%ecx
51464a:	0f 87 f8 02 00 00    	ja     0x514948
514650:	8b c8                	mov    %eax,%ecx
514652:	51                   	push   %ecx
514653:	e8 37 d1 ee ff       	call   0x40178f
514658:	83 c4 04             	add    $0x4,%esp
51465b:	8b 45 c4             	mov    -0x3c(%ebp),%eax
51465e:	c7 85 34 02 00 00 0f 	movl   $0xf,0x234(%ebp)
514665:	00 00 00
514668:	c7 85 30 02 00 00 00 	movl   $0x0,0x230(%ebp)
51466f:	00 00 00
514672:	c6 85 20 02 00 00 00 	movb   $0x0,0x220(%ebp)
514679:	3b 86 3c 05 00 00    	cmp    0x53c(%esi),%eax
51467f:	0f 85 c8 02 00 00    	jne    0x51494d
514685:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
51468c:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
514693:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
51469a:	68 35 41 bd 00       	push   $0xbd4135
51469f:	8d 45 04             	lea    0x4(%ebp),%eax
5146a2:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
5146a6:	68 04 01 00 00       	push   $0x104
5146ab:	50                   	push   %eax
5146ac:	c7 45 00 f8 1c bd 00 	movl   $0xbd1cf8,0x0(%ebp)
5146b3:	89 85 08 01 00 00    	mov    %eax,0x108(%ebp)
5146b9:	c7 85 0c 01 00 00 04 	movl   $0x104,0x10c(%ebp)
5146c0:	01 00 00
5146c3:	e8 c9 b1 f2 ff       	call   0x43f891
5146c8:	83 c4 0c             	add    $0xc,%esp
5146cb:	c7 45 00 04 1d bd 00 	movl   $0xbd1d04,0x0(%ebp)
5146d2:	8d 45 e8             	lea    -0x18(%ebp),%eax
5146d5:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
5146d9:	50                   	push   %eax
5146da:	53                   	push   %ebx
5146db:	8d 45 00             	lea    0x0(%ebp),%eax
5146de:	8b ce                	mov    %esi,%ecx
5146e0:	50                   	push   %eax
5146e1:	e8 75 ca f1 ff       	call   0x43115b
5146e6:	8d 4d 00             	lea    0x0(%ebp),%ecx
5146e9:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
5146ed:	e8 06 9e ef ff       	call   0x40e4f8
5146f2:	8b 95 18 02 00 00    	mov    0x218(%ebp),%edx
5146f8:	c7 85 34 02 00 00 0f 	movl   $0xf,0x234(%ebp)
5146ff:	00 00 00
514702:	c7 85 30 02 00 00 00 	movl   $0x0,0x230(%ebp)
514709:	00 00 00
51470c:	c6 85 20 02 00 00 00 	movb   $0x0,0x220(%ebp)
514713:	80 3a 00             	cmpb   $0x0,(%edx)
514716:	75 04                	jne    0x51471c
514718:	33 c9                	xor    %ecx,%ecx
51471a:	eb 11                	jmp    0x51472d
51471c:	8b ca                	mov    %edx,%ecx
51471e:	8d 71 01             	lea    0x1(%ecx),%esi
514721:	8a 01                	mov    (%ecx),%al
514723:	41                   	inc    %ecx
514724:	84 c0                	test   %al,%al
514726:	75 f9                	jne    0x514721
514728:	2b ce                	sub    %esi,%ecx
51472a:	8b 75 dc             	mov    -0x24(%ebp),%esi
51472d:	51                   	push   %ecx
51472e:	52                   	push   %edx
51472f:	8d 8d 20 02 00 00    	lea    0x220(%ebp),%ecx
514735:	e8 57 ff ef ff       	call   0x414691
51473a:	8d 85 20 02 00 00    	lea    0x220(%ebp),%eax
514740:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
514744:	50                   	push   %eax
514745:	8d 45 c0             	lea    -0x40(%ebp),%eax
514748:	8d 9e 38 05 00 00    	lea    0x538(%esi),%ebx
51474e:	50                   	push   %eax
51474f:	8b cb                	mov    %ebx,%ecx
514751:	e8 df 3c f0 ff       	call   0x418435
514756:	8b 45 c0             	mov    -0x40(%ebp),%eax
514759:	3b 43 04             	cmp    0x4(%ebx),%eax
51475c:	75 64                	jne    0x5147c2
51475e:	8d 85 20 02 00 00    	lea    0x220(%ebp),%eax
514764:	89 45 bc             	mov    %eax,-0x44(%ebp)
514767:	8d 4b 04             	lea    0x4(%ebx),%ecx
51476a:	8b 43 04             	mov    0x4(%ebx),%eax
51476d:	8b 38                	mov    (%eax),%edi
51476f:	8d 45 e7             	lea    -0x19(%ebp),%eax
514772:	50                   	push   %eax
514773:	8d 45 bc             	lea    -0x44(%ebp),%eax
514776:	50                   	push   %eax
514777:	68 6c cb bd 00       	push   $0xbdcb6c
51477c:	ff 77 04             	push   0x4(%edi)
51477f:	57                   	push   %edi
514780:	e8 e9 dc ee ff       	call   0x40246e
514785:	8b 53 08             	mov    0x8(%ebx),%edx
514788:	8b c8                	mov    %eax,%ecx
51478a:	b8 5c 74 d1 05       	mov    $0x5d1745c,%eax
51478f:	2b c2                	sub    %edx,%eax
514791:	83 f8 01             	cmp    $0x1,%eax
514794:	0f 82 cf 01 00 00    	jb     0x514969
51479a:	8d 42 01             	lea    0x1(%edx),%eax
51479d:	89 43 08             	mov    %eax,0x8(%ebx)
5147a0:	89 4f 04             	mov    %ecx,0x4(%edi)
5147a3:	8b 41 04             	mov    0x4(%ecx),%eax
5147a6:	89 08                	mov    %ecx,(%eax)
5147a8:	8b 4b 04             	mov    0x4(%ebx),%ecx
5147ab:	8b 01                	mov    (%ecx),%eax
5147ad:	8b cb                	mov    %ebx,%ecx
5147af:	50                   	push   %eax
5147b0:	83 c0 08             	add    $0x8,%eax
5147b3:	50                   	push   %eax
5147b4:	8d 45 a0             	lea    -0x60(%ebp),%eax
5147b7:	50                   	push   %eax
5147b8:	e8 6f e2 ee ff       	call   0x402a2c
5147bd:	8b 45 a0             	mov    -0x60(%ebp),%eax
5147c0:	eb 07                	jmp    0x5147c9
5147c2:	89 45 a0             	mov    %eax,-0x60(%ebp)
5147c5:	c6 45 a4 00          	movb   $0x0,-0x5c(%ebp)
5147c9:	8d 48 20             	lea    0x20(%eax),%ecx
5147cc:	8d 45 e8             	lea    -0x18(%ebp),%eax
5147cf:	50                   	push   %eax
5147d0:	e8 bf 54 f1 ff       	call   0x429c94
5147d5:	8b 85 34 02 00 00    	mov    0x234(%ebp),%eax
5147db:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
5147df:	83 f8 10             	cmp    $0x10,%eax
5147e2:	72 41                	jb     0x514825
5147e4:	8b 8d 20 02 00 00    	mov    0x220(%ebp),%ecx
5147ea:	40                   	inc    %eax
5147eb:	3d 00 10 00 00       	cmp    $0x1000,%eax
5147f0:	72 2a                	jb     0x51481c
5147f2:	f6 c1 1f             	test   $0x1f,%cl
5147f5:	0f 85 4d 01 00 00    	jne    0x514948
5147fb:	8b 41 fc             	mov    -0x4(%ecx),%eax
5147fe:	3b c1                	cmp    %ecx,%eax
514800:	0f 83 42 01 00 00    	jae    0x514948
514806:	2b c8                	sub    %eax,%ecx
514808:	83 f9 04             	cmp    $0x4,%ecx
51480b:	0f 82 37 01 00 00    	jb     0x514948
514811:	83 f9 23             	cmp    $0x23,%ecx
514814:	0f 87 2e 01 00 00    	ja     0x514948
51481a:	8b c8                	mov    %eax,%ecx
51481c:	51                   	push   %ecx
51481d:	e8 6d cf ee ff       	call   0x40178f
514822:	83 c4 04             	add    $0x4,%esp
514825:	8b 7d d8             	mov    -0x28(%ebp),%edi
514828:	8b cf                	mov    %edi,%ecx
51482a:	c6 45 b8 00          	movb   $0x0,-0x48(%ebp)
51482e:	ff 75 b8             	push   -0x48(%ebp)
514831:	ff 75 ec             	push   -0x14(%ebp)
514834:	ff 75 e8             	push   -0x18(%ebp)
514837:	ff 77 04             	push   0x4(%edi)
51483a:	e8 a2 d9 f1 ff       	call   0x4321e1
51483f:	8b 5d e8             	mov    -0x18(%ebp),%ebx
514842:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
514846:	85 db                	test   %ebx,%ebx
514848:	0f 84 92 00 00 00    	je     0x5148e0
51484e:	8b 75 ec             	mov    -0x14(%ebp),%esi
514851:	3b de                	cmp    %esi,%ebx
514853:	74 15                	je     0x51486a
514855:	8b 03                	mov    (%ebx),%eax
514857:	8b cb                	mov    %ebx,%ecx
514859:	6a 00                	push   $0x0
51485b:	ff 10                	call   *(%eax)
51485d:	81 c3 10 01 00 00    	add    $0x110,%ebx
514863:	3b de                	cmp    %esi,%ebx
514865:	75 ee                	jne    0x514855
514867:	8b 5d e8             	mov    -0x18(%ebp),%ebx
51486a:	8b 4d f0             	mov    -0x10(%ebp),%ecx
51486d:	b8 79 78 78 78       	mov    $0x78787879,%eax
514872:	2b cb                	sub    %ebx,%ecx
514874:	f7 e9                	imul   %ecx
514876:	c1 fa 07             	sar    $0x7,%edx
514879:	8b c2                	mov    %edx,%eax
51487b:	c1 e8 1f             	shr    $0x1f,%eax
51487e:	03 c2                	add    %edx,%eax
514880:	3d f0 f0 f0 00       	cmp    $0xf0f0f0,%eax
514885:	0f 87 bd 00 00 00    	ja     0x514948
51488b:	69 c0 10 01 00 00    	imul   $0x110,%eax,%eax
514891:	3d 00 10 00 00       	cmp    $0x1000,%eax
514896:	72 2a                	jb     0x5148c2
514898:	f6 c3 1f             	test   $0x1f,%bl
51489b:	0f 85 a7 00 00 00    	jne    0x514948
5148a1:	8b 43 fc             	mov    -0x4(%ebx),%eax
5148a4:	3b c3                	cmp    %ebx,%eax
5148a6:	0f 83 9c 00 00 00    	jae    0x514948
5148ac:	2b d8                	sub    %eax,%ebx
5148ae:	83 fb 04             	cmp    $0x4,%ebx
5148b1:	0f 82 91 00 00 00    	jb     0x514948
5148b7:	83 fb 23             	cmp    $0x23,%ebx
5148ba:	0f 87 88 00 00 00    	ja     0x514948
5148c0:	8b d8                	mov    %eax,%ebx
5148c2:	53                   	push   %ebx
5148c3:	e8 c7 ce ee ff       	call   0x40178f
5148c8:	83 c4 04             	add    $0x4,%esp
5148cb:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
5148d2:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
5148d9:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
5148e0:	8b 5d e0             	mov    -0x20(%ebp),%ebx
5148e3:	8d 8d 10 01 00 00    	lea    0x110(%ebp),%ecx
5148e9:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
5148ed:	e8 06 9c ef ff       	call   0x40e4f8
5148f2:	81 c3 10 01 00 00    	add    $0x110,%ebx
5148f8:	89 5d e0             	mov    %ebx,-0x20(%ebp)
5148fb:	3b 5d b0             	cmp    -0x50(%ebp),%ebx
5148fe:	0f 85 dc fb ff ff    	jne    0x5144e0
514904:	8b 75 d0             	mov    -0x30(%ebp),%esi
514907:	8b 5d cc             	mov    -0x34(%ebp),%ebx
51490a:	85 db                	test   %ebx,%ebx
51490c:	0f 84 a5 00 00 00    	je     0x5149b7
514912:	3b de                	cmp    %esi,%ebx
514914:	74 15                	je     0x51492b
514916:	8b 03                	mov    (%ebx),%eax
514918:	8b cb                	mov    %ebx,%ecx
51491a:	6a 00                	push   $0x0
51491c:	ff 10                	call   *(%eax)
51491e:	81 c3 10 01 00 00    	add    $0x110,%ebx
514924:	3b de                	cmp    %esi,%ebx
514926:	75 ee                	jne    0x514916
514928:	8b 5d cc             	mov    -0x34(%ebp),%ebx
51492b:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
51492e:	b8 79 78 78 78       	mov    $0x78787879,%eax
514933:	2b cb                	sub    %ebx,%ecx
514935:	f7 e9                	imul   %ecx
514937:	c1 fa 07             	sar    $0x7,%edx
51493a:	8b c2                	mov    %edx,%eax
51493c:	c1 e8 1f             	shr    $0x1f,%eax
51493f:	03 c2                	add    %edx,%eax
514941:	3d f0 f0 f0 00       	cmp    $0xf0f0f0,%eax
514946:	76 2b                	jbe    0x514973
514948:	e8 40 90 f2 ff       	call   0x43d98d
51494d:	c6 45 b4 00          	movb   $0x0,-0x4c(%ebp)
514951:	8b cf                	mov    %edi,%ecx
514953:	ff 75 b4             	push   -0x4c(%ebp)
514956:	ff 70 24             	push   0x24(%eax)
514959:	ff 70 20             	push   0x20(%eax)
51495c:	ff 77 04             	push   0x4(%edi)
51495f:	e8 ca 14 f0 ff       	call   0x415e2e
514964:	e9 7a ff ff ff       	jmp    0x5148e3
514969:	68 0c 61 bd 00       	push   $0xbd610c
51496e:	e8 a3 4e f1 ff       	call   0x429816
514973:	69 c0 10 01 00 00    	imul   $0x110,%eax,%eax
514979:	3d 00 10 00 00       	cmp    $0x1000,%eax
51497e:	72 2e                	jb     0x5149ae
514980:	f6 c3 1f             	test   $0x1f,%bl
514983:	74 05                	je     0x51498a
514985:	e8 03 90 f2 ff       	call   0x43d98d
51498a:	8b 43 fc             	mov    -0x4(%ebx),%eax
51498d:	3b c3                	cmp    %ebx,%eax
51498f:	72 05                	jb     0x514996
514991:	e8 f7 8f f2 ff       	call   0x43d98d
514996:	2b d8                	sub    %eax,%ebx
514998:	83 fb 04             	cmp    $0x4,%ebx
51499b:	73 05                	jae    0x5149a2
51499d:	e8 eb 8f f2 ff       	call   0x43d98d
5149a2:	83 fb 23             	cmp    $0x23,%ebx
5149a5:	76 05                	jbe    0x5149ac
5149a7:	e8 e1 8f f2 ff       	call   0x43d98d
5149ac:	8b d8                	mov    %eax,%ebx
5149ae:	53                   	push   %ebx
5149af:	e8 db cd ee ff       	call   0x40178f
5149b4:	83 c4 04             	add    $0x4,%esp
5149b7:	8b c7                	mov    %edi,%eax