50a782:	8b 4b 6c             	mov    0x6c(%ebx),%ecx
50a785:	39 4b 70             	cmp    %ecx,0x70(%ebx)
50a788:	7f 12                	jg     0x50a79c
50a78a:	6a 00                	push   $0x0
50a78c:	52                   	push   %edx
50a78d:	6a 00                	push   $0x0
50a78f:	6a 45                	push   $0x45
50a791:	53                   	push   %ebx
50a792:	e8 69 bd ff ff       	call   0x506500
50a797:	83 c4 14             	add    $0x14,%esp
50a79a:	eb 32                	jmp    0x50a7ce
50a79c:	8b 75 c8             	mov    -0x38(%ebp),%esi
50a79f:	8d 41 01             	lea    0x1(%ecx),%eax
50a7a2:	89 43 6c             	mov    %eax,0x6c(%ebx)
50a7a5:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
50a7a8:	8b 43 68             	mov    0x68(%ebx),%eax
50a7ab:	c7 04 88 45 00 00 00 	movl   $0x45,(%eax,%ecx,4)
50a7b2:	c7 44 88 04 00 00 00 	movl   $0x0,0x4(%eax,%ecx,4)
50a7b9:	00
50a7ba:	89 54 88 08          	mov    %edx,0x8(%eax,%ecx,4)
50a7be:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
50a7c5:	00
50a7c6:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
50a7cd:	00
50a7ce:	6a 01                	push   $0x1
50a7d0:	57                   	push   %edi
50a7d1:	ff 75 88             	push   -0x78(%ebp)
50a7d4:	e8 d7 53 02 00       	call   0x52fbb0
50a7d9:	83 c4 0c             	add    $0xc,%esp
50a7dc:	89 45 b4             	mov    %eax,-0x4c(%ebp)
50a7df:	85 c0                	test   %eax,%eax
50a7e1:	74 6f                	je     0x50a852
50a7e3:	33 f6                	xor    %esi,%esi
50a7e5:	85 ff                	test   %edi,%edi
50a7e7:	7e 66                	jle    0x50a84f
50a7e9:	8b 9d 7c ff ff ff    	mov    -0x84(%ebp),%ebx
50a7ef:	33 ff                	xor    %edi,%edi
50a7f1:	83 c0 14             	add    $0x14,%eax
50a7f4:	89 45 b0             	mov    %eax,-0x50(%ebp)
50a7f7:	8b 45 c8             	mov    -0x38(%ebp),%eax
50a7fa:	8b 40 34             	mov    0x34(%eax),%eax
50a7fd:	85 c0                	test   %eax,%eax
50a7ff:	74 13                	je     0x50a814
50a801:	56                   	push   %esi
50a802:	50                   	push   %eax
50a803:	ff 75 c4             	push   -0x3c(%ebp)
50a806:	e8 25 fd ff ff       	call   0x50a530
50a80b:	83 c4 0c             	add    $0xc,%esp
50a80e:	85 c0                	test   %eax,%eax
50a810:	75 1d                	jne    0x50a82f
50a812:	eb 02                	jmp    0x50a816
50a814:	33 c0                	xor    %eax,%eax
50a816:	8b 4d c8             	mov    -0x38(%ebp),%ecx
50a819:	8b 49 1c             	mov    0x1c(%ecx),%ecx
50a81c:	3b 31                	cmp    (%ecx),%esi
50a81e:	7d 0f                	jge    0x50a82f
50a820:	ff 74 39 04          	push   0x4(%ecx,%edi,1)
50a824:	ff 75 c4             	push   -0x3c(%ebp)
50a827:	e8 b4 ba 01 00       	call   0x5262e0
50a82c:	83 c4 08             	add    $0x8,%esp
50a82f:	8b 4d b0             	mov    -0x50(%ebp),%ecx
50a832:	83 c7 14             	add    $0x14,%edi
50a835:	89 01                	mov    %eax,(%ecx)
50a837:	83 c1 04             	add    $0x4,%ecx
50a83a:	8b 45 b4             	mov    -0x4c(%ebp),%eax
50a83d:	89 4d b0             	mov    %ecx,-0x50(%ebp)
50a840:	8b 40 10             	mov    0x10(%eax),%eax
50a843:	c6 04 06 00          	movb   $0x0,(%esi,%eax,1)
50a847:	46                   	inc    %esi
50a848:	3b f3                	cmp    %ebx,%esi
50a84a:	7c ab                	jl     0x50a7f7
50a84c:	8b 5d a0             	mov    -0x60(%ebp),%ebx
50a84f:	8b 75 c8             	mov    -0x38(%ebp),%esi
50a852:	8b 7d ac             	mov    -0x54(%ebp),%edi
50a855:	8b 45 9c             	mov    -0x64(%ebp),%eax
50a858:	68 58 8f 6b 00       	push   $0x6b8f58
50a85d:	c7 46 34 00 00 00 00 	movl   $0x0,0x34(%esi)
50a864:	c7 40 38 00 00 00 00 	movl   $0x0,0x38(%eax)
50a86b:	ff 76 30             	push   0x30(%esi)
50a86e:	56                   	push   %esi
50a86f:	ff 75 c4             	push   -0x3c(%ebp)
50a872:	e8 f9 da 02 00       	call   0x538370
50a877:	8b 45 9c             	mov    -0x64(%ebp),%eax
50a87a:	83 c4 10             	add    $0x10,%esp
50a87d:	83 78 34 00          	cmpl   $0x0,0x34(%eax)
50a881:	75 14                	jne    0x50a897
50a883:	68 58 8f 6b 00       	push   $0x6b8f58
50a888:	ff 70 30             	push   0x30(%eax)
50a88b:	50                   	push   %eax
50a88c:	ff 75 c4             	push   -0x3c(%ebp)
50a88f:	e8 dc da 02 00       	call   0x538370
50a894:	83 c4 10             	add    $0x10,%esp
50a897:	ff 75 a4             	push   -0x5c(%ebp)
50a89a:	56                   	push   %esi
50a89b:	ff 75 c4             	push   -0x3c(%ebp)
50a89e:	e8 4d 0a ff ff       	call   0x4fb2f0
50a8a3:	83 c4 0c             	add    $0xc,%esp
50a8a6:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
50a8aa:	0f 84 bc 00 00 00    	je     0x50a96c
50a8b0:	81 ff 85 00 00 00    	cmp    $0x85,%edi
50a8b6:	0f 85 b0 00 00 00    	jne    0x50a96c
50a8bc:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
50a8bf:	8b 45 c8             	mov    -0x38(%ebp),%eax
50a8c2:	8b 79 2c             	mov    0x2c(%ecx),%edi
50a8c5:	47                   	inc    %edi
50a8c6:	8d 77 01             	lea    0x1(%edi),%esi
50a8c9:	89 71 2c             	mov    %esi,0x2c(%ecx)
50a8cc:	8b 50 0c             	mov    0xc(%eax),%edx
50a8cf:	89 75 b0             	mov    %esi,-0x50(%ebp)
50a8d2:	85 d2                	test   %edx,%edx
50a8d4:	74 03                	je     0x50a8d9
50a8d6:	42                   	inc    %edx
50a8d7:	eb 03                	jmp    0x50a8dc
50a8d9:	8b 50 08             	mov    0x8(%eax),%edx
50a8dc:	8b 4b 6c             	mov    0x6c(%ebx),%ecx
50a8df:	39 4b 70             	cmp    %ecx,0x70(%ebx)
50a8e2:	7f 11                	jg     0x50a8f5
50a8e4:	6a 00                	push   $0x0
50a8e6:	57                   	push   %edi
50a8e7:	52                   	push   %edx
50a8e8:	6a 4d                	push   $0x4d
50a8ea:	53                   	push   %ebx
50a8eb:	e8 10 bc ff ff       	call   0x506500
50a8f0:	83 c4 14             	add    $0x14,%esp
50a8f3:	eb 2b                	jmp    0x50a920
50a8f5:	8d 41 01             	lea    0x1(%ecx),%eax
50a8f8:	89 43 6c             	mov    %eax,0x6c(%ebx)
50a8fb:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
50a8fe:	8b 43 68             	mov    0x68(%ebx),%eax
50a901:	c7 04 88 4d 00 00 00 	movl   $0x4d,(%eax,%ecx,4)
50a908:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
50a90c:	89 7c 88 08          	mov    %edi,0x8(%eax,%ecx,4)
50a910:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
50a917:	00
50a918:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
50a91f:	00
50a920:	8b 4b 6c             	mov    0x6c(%ebx),%ecx
50a923:	39 4b 70             	cmp    %ecx,0x70(%ebx)
50a926:	7f 14                	jg     0x50a93c
50a928:	6a 00                	push   $0x0
50a92a:	56                   	push   %esi
50a92b:	57                   	push   %edi
50a92c:	6a 4d                	push   $0x4d
50a92e:	53                   	push   %ebx
50a92f:	e8 cc bb ff ff       	call   0x506500
50a934:	8b 75 c8             	mov    -0x38(%ebp),%esi
50a937:	83 c4 14             	add    $0x14,%esp
50a93a:	eb 39                	jmp    0x50a975
50a93c:	8d 41 01             	lea    0x1(%ecx),%eax
50a93f:	89 43 6c             	mov    %eax,0x6c(%ebx)
50a942:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
50a945:	8b 43 68             	mov    0x68(%ebx),%eax
50a948:	89 74 88 08          	mov    %esi,0x8(%eax,%ecx,4)
50a94c:	8b 75 c8             	mov    -0x38(%ebp),%esi
50a94f:	c7 04 88 4d 00 00 00 	movl   $0x4d,(%eax,%ecx,4)
50a956:	89 7c 88 04          	mov    %edi,0x4(%eax,%ecx,4)
50a95a:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
50a961:	00
50a962:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
50a969:	00
50a96a:	eb 09                	jmp    0x50a975
50a96c:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)
50a973:	33 ff                	xor    %edi,%edi
50a975:	8b 46 3c             	mov    0x3c(%esi),%eax
50a978:	85 c0                	test   %eax,%eax
50a97a:	74 0c                	je     0x50a988
50a97c:	50                   	push   %eax
50a97d:	ff 75 88             	push   -0x78(%ebp)
50a980:	e8 2b be 01 00       	call   0x5267b0
50a985:	83 c4 08             	add    $0x8,%esp
50a988:	8b 45 c4             	mov    -0x3c(%ebp),%eax
50a98b:	8b 5d c4             	mov    -0x3c(%ebp),%ebx
50a98e:	c7 46 3c 00 00 00 00 	movl   $0x0,0x3c(%esi)
50a995:	c6 45 cc 0d          	movb   $0xd,-0x34(%ebp)
50a999:	ff 40 2c             	incl   0x2c(%eax)
50a99c:	8b 40 2c             	mov    0x2c(%eax),%eax
50a99f:	89 45 b8             	mov    %eax,-0x48(%ebp)
50a9a2:	89 45 d0             	mov    %eax,-0x30(%ebp)
50a9a5:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
50a9ac:	8d 50 01             	lea    0x1(%eax),%edx
50a9af:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
50a9b6:	8d 4a 02             	lea    0x2(%edx),%ecx
50a9b9:	89 55 c0             	mov    %edx,-0x40(%ebp)
50a9bc:	89 4b 2c             	mov    %ecx,0x2c(%ebx)
50a9bf:	0f b6 06             	movzbl (%esi),%eax
50a9c2:	89 4d 90             	mov    %ecx,-0x70(%ebp)
50a9c5:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
50a9cc:	c6 45 e4 0d          	movb   $0xd,-0x1c(%ebp)
50a9d0:	89 55 e8             	mov    %edx,-0x18(%ebp)
50a9d3:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
50a9da:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
50a9e1:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
50a9e8:	2d 85 00 00 00       	sub    $0x85,%eax
50a9ed:	74 1f                	je     0x50aa0e
50a9ef:	83 e8 01             	sub    $0x1,%eax
50a9f2:	74 13                	je     0x50aa07
50a9f4:	83 e8 01             	sub    $0x1,%eax
50a9f7:	74 07                	je     0x50aa00
50a9f9:	b8 08 af 6b 00       	mov    $0x6baf08,%eax
50a9fe:	eb 13                	jmp    0x50aa13
50aa00:	b8 f4 ae 6b 00       	mov    $0x6baef4,%eax
50aa05:	eb 0c                	jmp    0x50aa13
50aa07:	b8 00 af 6b 00       	mov    $0x6baf00,%eax
50aa0c:	eb 05                	jmp    0x50aa13
50aa0e:	b8 e8 ae 6b 00       	mov    $0x6baee8,%eax
50aa13:	50                   	push   %eax
50aa14:	68 d4 b0 6b 00       	push   $0x6bb0d4
50aa19:	6a 01                	push   $0x1
50aa1b:	53                   	push   %ebx
50aa1c:	e8 bf f1 03 00       	call   0x549be0
50aa21:	8b 5d a0             	mov    -0x60(%ebp),%ebx
50aa24:	83 c4 10             	add    $0x10,%esp
50aa27:	8b 73 6c             	mov    0x6c(%ebx),%esi
50aa2a:	8d 56 01             	lea    0x1(%esi),%edx
50aa2d:	39 73 70             	cmp    %esi,0x70(%ebx)
50aa30:	7f 15                	jg     0x50aa47
50aa32:	52                   	push   %edx
50aa33:	6a 00                	push   $0x0
50aa35:	ff 75 b8             	push   -0x48(%ebp)
50aa38:	6a 0d                	push   $0xd
50aa3a:	53                   	push   %ebx
50aa3b:	e8 c0 ba ff ff       	call   0x506500
50aa40:	83 c4 14             	add    $0x14,%esp
50aa43:	8b f0                	mov    %eax,%esi
50aa45:	eb 2e                	jmp    0x50aa75
50aa47:	8b 43 68             	mov    0x68(%ebx),%eax
50aa4a:	8d 0c b6             	lea    (%esi,%esi,4),%ecx
50aa4d:	89 53 6c             	mov    %edx,0x6c(%ebx)
50aa50:	8b 5d b8             	mov    -0x48(%ebp),%ebx
50aa53:	89 5c 88 04          	mov    %ebx,0x4(%eax,%ecx,4)
50aa57:	8b 5d a0             	mov    -0x60(%ebp),%ebx
50aa5a:	c7 04 88 0d 00 00 00 	movl   $0xd,(%eax,%ecx,4)
50aa61:	c7 44 88 08 00 00 00 	movl   $0x0,0x8(%eax,%ecx,4)
50aa68:	00
50aa69:	89 54 88 0c          	mov    %edx,0xc(%eax,%ecx,4)
50aa6d:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
50aa74:	00
50aa75:	8b 45 9c             	mov    -0x64(%ebp),%eax
50aa78:	68 e0 b0 6b 00       	push   $0x6bb0e0
50aa7d:	6a 01                	push   $0x1
50aa7f:	89 78 08             	mov    %edi,0x8(%eax)
50aa82:	8b 7d c4             	mov    -0x3c(%ebp),%edi
50aa85:	57                   	push   %edi
50aa86:	e8 55 f1 03 00       	call   0x549be0
50aa8b:	8d 45 cc             	lea    -0x34(%ebp),%eax
50aa8e:	50                   	push   %eax
50aa8f:	ff 75 9c             	push   -0x64(%ebp)
50aa92:	57                   	push   %edi
50aa93:	e8 08 f0 02 00       	call   0x539aa0
50aa98:	8b 4b 6c             	mov    0x6c(%ebx),%ecx
50aa9b:	83 c4 18             	add    $0x18,%esp
50aa9e:	39 4b 70             	cmp    %ecx,0x70(%ebx)
50aaa1:	7f 14                	jg     0x50aab7
50aaa3:	6a 00                	push   $0x0
50aaa5:	6a 00                	push   $0x0
50aaa7:	ff 75 b8             	push   -0x48(%ebp)
50aaaa:	6a 42                	push   $0x42
50aaac:	53                   	push   %ebx
50aaad:	e8 4e ba ff ff       	call   0x506500
50aab2:	83 c4 14             	add    $0x14,%esp
50aab5:	eb 32                	jmp    0x50aae9
50aab7:	8b 55 b8             	mov    -0x48(%ebp),%edx
50aaba:	8d 41 01             	lea    0x1(%ecx),%eax
50aabd:	89 43 6c             	mov    %eax,0x6c(%ebx)
50aac0:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
50aac3:	8b 43 68             	mov    0x68(%ebx),%eax
50aac6:	c7 04 88 42 00 00 00 	movl   $0x42,(%eax,%ecx,4)
50aacd:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
50aad1:	c7 44 88 08 00 00 00 	movl   $0x0,0x8(%eax,%ecx,4)
50aad8:	00
50aad9:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
50aae0:	00
50aae1:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
50aae8:	00
50aae9:	8b 43 0c             	mov    0xc(%ebx),%eax
50aaec:	c6 40 13 00          	movb   $0x0,0x13(%eax)
50aaf0:	8b 43 0c             	mov    0xc(%ebx),%eax
50aaf3:	c7 40 1c 00 00 00 00 	movl   $0x0,0x1c(%eax)
50aafa:	8b 53 6c             	mov    0x6c(%ebx),%edx
50aafd:	85 f6                	test   %esi,%esi
50aaff:	79 03                	jns    0x50ab04
50ab01:	8d 72 ff             	lea    -0x1(%edx),%esi
50ab04:	8b 03                	mov    (%ebx),%eax
50ab06:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
50ab0a:	74 07                	je     0x50ab13
50ab0c:	b8 ec 02 73 00       	mov    $0x7302ec,%eax
50ab11:	eb 09                	jmp    0x50ab1c
50ab13:	8b 43 68             	mov    0x68(%ebx),%eax
50ab16:	8d 0c b6             	lea    (%esi,%esi,4),%ecx
50ab19:	8d 04 88             	lea    (%eax,%ecx,4),%eax
50ab1c:	89 50 08             	mov    %edx,0x8(%eax)
50ab1f:	8b 43 6c             	mov    0x6c(%ebx),%eax
50ab22:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
50ab28:	8d 50 01             	lea    0x1(%eax),%edx
50ab2b:	39 43 70             	cmp    %eax,0x70(%ebx)
50ab2e:	7f 19                	jg     0x50ab49
50ab30:	52                   	push   %edx
50ab31:	6a 00                	push   $0x0
50ab33:	ff 75 c0             	push   -0x40(%ebp)
50ab36:	6a 0d                	push   $0xd
50ab38:	53                   	push   %ebx
50ab39:	e8 c2 b9 ff ff       	call   0x506500
50ab3e:	83 c4 14             	add    $0x14,%esp
50ab41:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
50ab47:	eb 2b                	jmp    0x50ab74
50ab49:	8b 75 c0             	mov    -0x40(%ebp),%esi
50ab4c:	8d 0c 80             	lea    (%eax,%eax,4),%ecx
50ab4f:	8b 43 68             	mov    0x68(%ebx),%eax
50ab52:	89 53 6c             	mov    %edx,0x6c(%ebx)
50ab55:	c7 04 88 0d 00 00 00 	movl   $0xd,(%eax,%ecx,4)
50ab5c:	89 74 88 04          	mov    %esi,0x4(%eax,%ecx,4)
50ab60:	c7 44 88 08 00 00 00 	movl   $0x0,0x8(%eax,%ecx,4)
50ab67:	00
50ab68:	89 54 88 0c          	mov    %edx,0xc(%eax,%ecx,4)
50ab6c:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
50ab73:	00
50ab74:	8b 4d c8             	mov    -0x38(%ebp),%ecx
50ab77:	8b 45 b0             	mov    -0x50(%ebp),%eax
50ab7a:	68 e8 b0 6b 00       	push   $0x6bb0e8
50ab7f:	6a 01                	push   $0x1
50ab81:	8b 79 08             	mov    0x8(%ecx),%edi
50ab84:	8b 71 0c             	mov    0xc(%ecx),%esi
50ab87:	ff 75 c4             	push   -0x3c(%ebp)
50ab8a:	89 41 08             	mov    %eax,0x8(%ecx)
50ab8d:	c7 41 0c 00 00 00 00 	movl   $0x0,0xc(%ecx)
50ab94:	e8 47 f0 03 00       	call   0x549be0
50ab99:	8d 45 e4             	lea    -0x1c(%ebp),%eax
50ab9c:	50                   	push   %eax
50ab9d:	ff 75 c8             	push   -0x38(%ebp)
50aba0:	ff 75 c4             	push   -0x3c(%ebp)
50aba3:	e8 f8 ee 02 00       	call   0x539aa0
50aba8:	8b 45 c8             	mov    -0x38(%ebp),%eax
50abab:	83 c4 18             	add    $0x18,%esp
50abae:	89 78 08             	mov    %edi,0x8(%eax)
50abb1:	8b f8                	mov    %eax,%edi
50abb3:	89 77 0c             	mov    %esi,0xc(%edi)
50abb6:	8b 4b 6c             	mov    0x6c(%ebx),%ecx
50abb9:	39 4b 70             	cmp    %ecx,0x70(%ebx)
50abbc:	7f 14                	jg     0x50abd2
50abbe:	6a 00                	push   $0x0
50abc0:	6a 00                	push   $0x0
50abc2:	ff 75 c0             	push   -0x40(%ebp)
50abc5:	6a 42                	push   $0x42
50abc7:	53                   	push   %ebx
50abc8:	e8 33 b9 ff ff       	call   0x506500
50abcd:	83 c4 14             	add    $0x14,%esp
50abd0:	eb 32                	jmp    0x50ac04
50abd2:	8b 55 c0             	mov    -0x40(%ebp),%edx
50abd5:	8d 41 01             	lea    0x1(%ecx),%eax
50abd8:	89 43 6c             	mov    %eax,0x6c(%ebx)