46f853:	e8 28 18 17 00       	call   0x5e1080
46f858:	ff 75 ec             	push   -0x14(%ebp)
46f85b:	8b 4d e8             	mov    -0x18(%ebp),%ecx
46f85e:	ff 75 f0             	push   -0x10(%ebp)
46f861:	53                   	push   %ebx
46f862:	50                   	push   %eax
46f863:	89 01                	mov    %eax,(%ecx)
46f865:	e8 16 8d ff ff       	call   0x468580
46f86a:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
46f86d:	83 c4 14             	add    $0x14,%esp
46f870:	8b 8b 60 03 00 00    	mov    0x360(%ebx),%ecx
46f876:	8b 55 e4             	mov    -0x1c(%ebp),%edx
46f879:	8b 04 91             	mov    (%ecx,%edx,4),%eax
46f87c:	8b 48 0c             	mov    0xc(%eax),%ecx
46f87f:	0f b6 46 28          	movzbl 0x28(%esi),%eax
46f883:	88 41 28             	mov    %al,0x28(%ecx)
46f886:	8b 83 60 03 00 00    	mov    0x360(%ebx),%eax
46f88c:	8b 04 90             	mov    (%eax,%edx,4),%eax
46f88f:	8d 96 1c 01 00 00    	lea    0x11c(%esi),%edx
46f895:	89 55 f0             	mov    %edx,-0x10(%ebp)
46f898:	8b 48 0c             	mov    0xc(%eax),%ecx
46f89b:	0f b6 86 34 01 00 00 	movzbl 0x134(%esi),%eax
46f8a2:	88 41 30             	mov    %al,0x30(%ecx)
46f8a5:	83 7a 14 10          	cmpl   $0x10,0x14(%edx)
46f8a9:	72 05                	jb     0x46f8b0
46f8ab:	8b 12                	mov    (%edx),%edx
46f8ad:	89 55 f0             	mov    %edx,-0x10(%ebp)
46f8b0:	8b 86 2c 01 00 00    	mov    0x12c(%esi),%eax
46f8b6:	8b 8b 60 03 00 00    	mov    0x360(%ebx),%ecx
46f8bc:	89 45 ec             	mov    %eax,-0x14(%ebp)
46f8bf:	8b 45 e4             	mov    -0x1c(%ebp),%eax
46f8c2:	8b 04 81             	mov    (%ecx,%eax,4),%eax
46f8c5:	8b 40 0c             	mov    0xc(%eax),%eax
46f8c8:	83 c0 2c             	add    $0x2c,%eax
46f8cb:	89 45 e8             	mov    %eax,-0x18(%ebp)
46f8ce:	74 2c                	je     0x46f8fc
46f8d0:	85 d2                	test   %edx,%edx
46f8d2:	74 28                	je     0x46f8fc
46f8d4:	8b 5d ec             	mov    -0x14(%ebp),%ebx
46f8d7:	43                   	inc    %ebx
46f8d8:	53                   	push   %ebx
46f8d9:	e8 a2 17 17 00       	call   0x5e1080
46f8de:	ff 75 ec             	push   -0x14(%ebp)
46f8e1:	8b 4d e8             	mov    -0x18(%ebp),%ecx
46f8e4:	ff 75 f0             	push   -0x10(%ebp)
46f8e7:	53                   	push   %ebx
46f8e8:	50                   	push   %eax
46f8e9:	89 01                	mov    %eax,(%ecx)
46f8eb:	e8 90 8c ff ff       	call   0x468580
46f8f0:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
46f8f3:	83 c4 14             	add    $0x14,%esp
46f8f6:	8b 8b 60 03 00 00    	mov    0x360(%ebx),%ecx
46f8fc:	83 be 4c 01 00 00 10 	cmpl   $0x10,0x14c(%esi)
46f903:	8d 96 38 01 00 00    	lea    0x138(%esi),%edx
46f909:	89 55 f0             	mov    %edx,-0x10(%ebp)
46f90c:	72 05                	jb     0x46f913
46f90e:	8b 12                	mov    (%edx),%edx
46f910:	89 55 f0             	mov    %edx,-0x10(%ebp)
46f913:	8b 86 48 01 00 00    	mov    0x148(%esi),%eax
46f919:	89 45 ec             	mov    %eax,-0x14(%ebp)
46f91c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
46f91f:	8b 04 81             	mov    (%ecx,%eax,4),%eax
46f922:	8b 40 0c             	mov    0xc(%eax),%eax
46f925:	83 c0 34             	add    $0x34,%eax
46f928:	89 45 e8             	mov    %eax,-0x18(%ebp)
46f92b:	74 2c                	je     0x46f959
46f92d:	85 d2                	test   %edx,%edx
46f92f:	74 28                	je     0x46f959
46f931:	8b 5d ec             	mov    -0x14(%ebp),%ebx
46f934:	43                   	inc    %ebx
46f935:	53                   	push   %ebx
46f936:	e8 45 17 17 00       	call   0x5e1080
46f93b:	ff 75 ec             	push   -0x14(%ebp)
46f93e:	8b 4d e8             	mov    -0x18(%ebp),%ecx
46f941:	ff 75 f0             	push   -0x10(%ebp)
46f944:	53                   	push   %ebx
46f945:	50                   	push   %eax
46f946:	89 01                	mov    %eax,(%ecx)
46f948:	e8 33 8c ff ff       	call   0x468580
46f94d:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
46f950:	83 c4 14             	add    $0x14,%esp
46f953:	8b 8b 60 03 00 00    	mov    0x360(%ebx),%ecx
46f959:	8b 55 e4             	mov    -0x1c(%ebp),%edx
46f95c:	8b 04 91             	mov    (%ecx,%edx,4),%eax
46f95f:	42                   	inc    %edx
46f960:	89 55 e4             	mov    %edx,-0x1c(%ebp)
46f963:	8b 48 0c             	mov    0xc(%eax),%ecx
46f966:	8a 86 50 01 00 00    	mov    0x150(%esi),%al
46f96c:	88 41 38             	mov    %al,0x38(%ecx)
46f96f:	8b 46 08             	mov    0x8(%esi),%eax
46f972:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
46f976:	74 1d                	je     0x46f995
46f978:	8b 46 04             	mov    0x4(%esi),%eax
46f97b:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
46f97f:	75 10                	jne    0x46f991
46f981:	3b 70 08             	cmp    0x8(%eax),%esi
46f984:	75 0b                	jne    0x46f991
46f986:	8b f0                	mov    %eax,%esi
46f988:	8b 40 04             	mov    0x4(%eax),%eax
46f98b:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
46f98f:	74 f0                	je     0x46f981
46f991:	8b f0                	mov    %eax,%esi
46f993:	eb 17                	jmp    0x46f9ac
46f995:	8b f0                	mov    %eax,%esi
46f997:	8b 0e                	mov    (%esi),%ecx
46f999:	80 79 0d 00          	cmpb   $0x0,0xd(%ecx)
46f99d:	75 0d                	jne    0x46f9ac
46f99f:	90                   	nop
46f9a0:	8b 01                	mov    (%ecx),%eax
46f9a2:	8b f1                	mov    %ecx,%esi
46f9a4:	8b c8                	mov    %eax,%ecx
46f9a6:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
46f9aa:	74 f4                	je     0x46f9a0
46f9ac:	8b 4d d0             	mov    -0x30(%ebp),%ecx
46f9af:	3b d1                	cmp    %ecx,%edx
46f9b1:	0f 82 09 fa ff ff    	jb     0x46f3c0
46f9b7:	8b 83 60 03 00 00    	mov    0x360(%ebx),%eax
46f9bd:	ba 04 00 00 00       	mov    $0x4,%edx
46f9c2:	8b 75 dc             	mov    -0x24(%ebp),%esi
46f9c5:	c7 04 88 00 00 00 00 	movl   $0x0,(%eax,%ecx,4)
46f9cc:	33 c9                	xor    %ecx,%ecx
46f9ce:	8b 46 3c             	mov    0x3c(%esi),%eax
46f9d1:	89 45 e8             	mov    %eax,-0x18(%ebp)
46f9d4:	40                   	inc    %eax
46f9d5:	f7 e2                	mul    %edx
46f9d7:	0f 90 c1             	seto   %cl
46f9da:	f7 d9                	neg    %ecx
46f9dc:	0b c8                	or     %eax,%ecx
46f9de:	51                   	push   %ecx
46f9df:	e8 9c 16 17 00       	call   0x5e1080
46f9e4:	8b 4d e8             	mov    -0x18(%ebp),%ecx
46f9e7:	83 c4 04             	add    $0x4,%esp
46f9ea:	89 83 64 03 00 00    	mov    %eax,0x364(%ebx)
46f9f0:	8b 7e 38             	mov    0x38(%esi),%edi
46f9f3:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
46f9fa:	8b 37                	mov    (%edi),%esi
46f9fc:	85 c9                	test   %ecx,%ecx
46f9fe:	0f 84 e9 01 00 00    	je     0x46fbed
46fa04:	3b f7                	cmp    %edi,%esi
46fa06:	0f 84 e1 01 00 00    	je     0x46fbed
46fa0c:	6a 08                	push   $0x8
46fa0e:	e8 2f 16 17 00       	call   0x5e1042
46fa13:	8b 8b 64 03 00 00    	mov    0x364(%ebx),%ecx
46fa19:	83 c4 04             	add    $0x4,%esp
46fa1c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
46fa1f:	89 04 91             	mov    %eax,(%ecx,%edx,4)
46fa22:	8d 4e 10             	lea    0x10(%esi),%ecx
46fa25:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
46fa29:	89 4d f0             	mov    %ecx,-0x10(%ebp)
46fa2c:	72 05                	jb     0x46fa33
46fa2e:	8b 09                	mov    (%ecx),%ecx
46fa30:	89 4d f0             	mov    %ecx,-0x10(%ebp)
46fa33:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
46fa36:	8b 83 64 03 00 00    	mov    0x364(%ebx),%eax
46fa3c:	8b 56 20             	mov    0x20(%esi),%edx
46fa3f:	89 55 ec             	mov    %edx,-0x14(%ebp)
46fa42:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46fa45:	8b 4d f0             	mov    -0x10(%ebp),%ecx
46fa48:	89 45 d0             	mov    %eax,-0x30(%ebp)
46fa4b:	85 c0                	test   %eax,%eax
46fa4d:	74 25                	je     0x46fa74
46fa4f:	85 c9                	test   %ecx,%ecx
46fa51:	74 21                	je     0x46fa74
46fa53:	8d 5a 01             	lea    0x1(%edx),%ebx
46fa56:	53                   	push   %ebx
46fa57:	e8 24 16 17 00       	call   0x5e1080
46fa5c:	ff 75 ec             	push   -0x14(%ebp)
46fa5f:	8b 4d d0             	mov    -0x30(%ebp),%ecx
46fa62:	ff 75 f0             	push   -0x10(%ebp)
46fa65:	53                   	push   %ebx
46fa66:	50                   	push   %eax
46fa67:	89 01                	mov    %eax,(%ecx)
46fa69:	e8 12 8b ff ff       	call   0x468580
46fa6e:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
46fa71:	83 c4 14             	add    $0x14,%esp
46fa74:	6a 10                	push   $0x10
46fa76:	e8 c7 15 17 00       	call   0x5e1042
46fa7b:	8b 8b 64 03 00 00    	mov    0x364(%ebx),%ecx
46fa81:	83 c4 04             	add    $0x4,%esp
46fa84:	8b 55 e4             	mov    -0x1c(%ebp),%edx
46fa87:	8b 0c 91             	mov    (%ecx,%edx,4),%ecx
46fa8a:	8d 56 28             	lea    0x28(%esi),%edx
46fa8d:	89 55 ec             	mov    %edx,-0x14(%ebp)
46fa90:	89 41 04             	mov    %eax,0x4(%ecx)
46fa93:	83 7a 14 10          	cmpl   $0x10,0x14(%edx)
46fa97:	72 05                	jb     0x46fa9e
46fa99:	8b 12                	mov    (%edx),%edx
46fa9b:	89 55 ec             	mov    %edx,-0x14(%ebp)
46fa9e:	8b 46 38             	mov    0x38(%esi),%eax
46faa1:	8b 8b 64 03 00 00    	mov    0x364(%ebx),%ecx
46faa7:	89 45 d0             	mov    %eax,-0x30(%ebp)
46faaa:	8b 45 e4             	mov    -0x1c(%ebp),%eax
46faad:	8b 04 81             	mov    (%ecx,%eax,4),%eax
46fab0:	8b 40 04             	mov    0x4(%eax),%eax
46fab3:	89 45 f0             	mov    %eax,-0x10(%ebp)
46fab6:	85 c0                	test   %eax,%eax
46fab8:	74 2c                	je     0x46fae6
46faba:	85 d2                	test   %edx,%edx
46fabc:	74 28                	je     0x46fae6
46fabe:	8b 5d d0             	mov    -0x30(%ebp),%ebx
46fac1:	43                   	inc    %ebx
46fac2:	53                   	push   %ebx
46fac3:	e8 b8 15 17 00       	call   0x5e1080
46fac8:	ff 75 d0             	push   -0x30(%ebp)
46facb:	8b 4d f0             	mov    -0x10(%ebp),%ecx
46face:	ff 75 ec             	push   -0x14(%ebp)
46fad1:	53                   	push   %ebx
46fad2:	50                   	push   %eax
46fad3:	89 01                	mov    %eax,(%ecx)
46fad5:	e8 a6 8a ff ff       	call   0x468580
46fada:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
46fadd:	83 c4 14             	add    $0x14,%esp
46fae0:	8b 8b 64 03 00 00    	mov    0x364(%ebx),%ecx
46fae6:	83 7e 54 10          	cmpl   $0x10,0x54(%esi)
46faea:	8d 56 40             	lea    0x40(%esi),%edx
46faed:	89 55 ec             	mov    %edx,-0x14(%ebp)
46faf0:	72 05                	jb     0x46faf7
46faf2:	8b 12                	mov    (%edx),%edx
46faf4:	89 55 ec             	mov    %edx,-0x14(%ebp)
46faf7:	8b 46 50             	mov    0x50(%esi),%eax
46fafa:	89 45 d0             	mov    %eax,-0x30(%ebp)
46fafd:	8b 45 e4             	mov    -0x1c(%ebp),%eax
46fb00:	8b 04 81             	mov    (%ecx,%eax,4),%eax
46fb03:	8b 40 04             	mov    0x4(%eax),%eax
46fb06:	83 c0 04             	add    $0x4,%eax
46fb09:	89 45 f0             	mov    %eax,-0x10(%ebp)
46fb0c:	74 2c                	je     0x46fb3a
46fb0e:	85 d2                	test   %edx,%edx
46fb10:	74 28                	je     0x46fb3a
46fb12:	8b 5d d0             	mov    -0x30(%ebp),%ebx
46fb15:	43                   	inc    %ebx
46fb16:	53                   	push   %ebx
46fb17:	e8 64 15 17 00       	call   0x5e1080
46fb1c:	ff 75 d0             	push   -0x30(%ebp)
46fb1f:	8b 4d f0             	mov    -0x10(%ebp),%ecx
46fb22:	ff 75 ec             	push   -0x14(%ebp)
46fb25:	53                   	push   %ebx
46fb26:	50                   	push   %eax
46fb27:	89 01                	mov    %eax,(%ecx)
46fb29:	e8 52 8a ff ff       	call   0x468580
46fb2e:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
46fb31:	83 c4 14             	add    $0x14,%esp
46fb34:	8b 8b 64 03 00 00    	mov    0x364(%ebx),%ecx
46fb3a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
46fb3d:	8b 04 81             	mov    (%ecx,%eax,4),%eax
46fb40:	8b 48 04             	mov    0x4(%eax),%ecx
46fb43:	8a 46 58             	mov    0x58(%esi),%al
46fb46:	88 41 08             	mov    %al,0x8(%ecx)
46fb49:	8d 4e 5c             	lea    0x5c(%esi),%ecx
46fb4c:	83 79 14 10          	cmpl   $0x10,0x14(%ecx)
46fb50:	89 4d f0             	mov    %ecx,-0x10(%ebp)
46fb53:	72 05                	jb     0x46fb5a
46fb55:	8b 09                	mov    (%ecx),%ecx
46fb57:	89 4d f0             	mov    %ecx,-0x10(%ebp)
46fb5a:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
46fb5d:	8b 83 64 03 00 00    	mov    0x364(%ebx),%eax
46fb63:	8b 56 6c             	mov    0x6c(%esi),%edx
46fb66:	89 55 ec             	mov    %edx,-0x14(%ebp)
46fb69:	8b 04 88             	mov    (%eax,%ecx,4),%eax
46fb6c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
46fb6f:	8b 40 04             	mov    0x4(%eax),%eax
46fb72:	83 c0 0c             	add    $0xc,%eax
46fb75:	89 45 d0             	mov    %eax,-0x30(%ebp)
46fb78:	74 25                	je     0x46fb9f
46fb7a:	85 c9                	test   %ecx,%ecx
46fb7c:	74 21                	je     0x46fb9f
46fb7e:	8d 5a 01             	lea    0x1(%edx),%ebx
46fb81:	53                   	push   %ebx
46fb82:	e8 f9 14 17 00       	call   0x5e1080
46fb87:	ff 75 ec             	push   -0x14(%ebp)
46fb8a:	8b 4d d0             	mov    -0x30(%ebp),%ecx
46fb8d:	ff 75 f0             	push   -0x10(%ebp)
46fb90:	53                   	push   %ebx
46fb91:	50                   	push   %eax
46fb92:	89 01                	mov    %eax,(%ecx)
46fb94:	e8 e7 89 ff ff       	call   0x468580
46fb99:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
46fb9c:	83 c4 14             	add    $0x14,%esp
46fb9f:	8b 46 08             	mov    0x8(%esi),%eax
46fba2:	8b 55 e4             	mov    -0x1c(%ebp),%edx
46fba5:	42                   	inc    %edx
46fba6:	89 55 e4             	mov    %edx,-0x1c(%ebp)
46fba9:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
46fbad:	74 1d                	je     0x46fbcc
46fbaf:	8b 46 04             	mov    0x4(%esi),%eax
46fbb2:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
46fbb6:	75 10                	jne    0x46fbc8
46fbb8:	3b 70 08             	cmp    0x8(%eax),%esi
46fbbb:	75 0b                	jne    0x46fbc8
46fbbd:	8b f0                	mov    %eax,%esi
46fbbf:	8b 40 04             	mov    0x4(%eax),%eax
46fbc2:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
46fbc6:	74 f0                	je     0x46fbb8
46fbc8:	8b f0                	mov    %eax,%esi
46fbca:	eb 16                	jmp    0x46fbe2
46fbcc:	8b f0                	mov    %eax,%esi
46fbce:	8b 0e                	mov    (%esi),%ecx
46fbd0:	80 79 0d 00          	cmpb   $0x0,0xd(%ecx)
46fbd4:	75 0c                	jne    0x46fbe2
46fbd6:	8b 01                	mov    (%ecx),%eax
46fbd8:	8b f1                	mov    %ecx,%esi
46fbda:	8b c8                	mov    %eax,%ecx
46fbdc:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
46fbe0:	74 f4                	je     0x46fbd6
46fbe2:	8b 4d e8             	mov    -0x18(%ebp),%ecx
46fbe5:	3b d1                	cmp    %ecx,%edx
46fbe7:	0f 82 17 fe ff ff    	jb     0x46fa04
46fbed:	8b 83 64 03 00 00    	mov    0x364(%ebx),%eax
46fbf3:	6a 0c                	push   $0xc
46fbf5:	c7 04 88 00 00 00 00 	movl   $0x0,(%eax,%ecx,4)
46fbfc:	e8 41 14 17 00       	call   0x5e1042
46fc01:	83 c4 04             	add    $0x4,%esp
46fc04:	89 45 e8             	mov    %eax,-0x18(%ebp)
46fc07:	89 83 68 03 00 00    	mov    %eax,0x368(%ebx)
46fc0d:	85 c0                	test   %eax,%eax
46fc0f:	0f 84 92 02 00 00    	je     0x46fea7
46fc15:	8b 75 dc             	mov    -0x24(%ebp),%esi
46fc18:	83 7e 54 10          	cmpl   $0x10,0x54(%esi)
46fc1c:	8d 7e 40             	lea    0x40(%esi),%edi
46fc1f:	72 02                	jb     0x46fc23
46fc21:	8b 3f                	mov    (%edi),%edi
46fc23:	8b 4e 50             	mov    0x50(%esi),%ecx
46fc26:	89 4d d0             	mov    %ecx,-0x30(%ebp)
46fc29:	85 ff                	test   %edi,%edi
46fc2b:	74 25                	je     0x46fc52
46fc2d:	8d 71 01             	lea    0x1(%ecx),%esi
46fc30:	56                   	push   %esi
46fc31:	e8 4a 14 17 00       	call   0x5e1080
46fc36:	ff 75 d0             	push   -0x30(%ebp)
46fc39:	8b 4d e8             	mov    -0x18(%ebp),%ecx
46fc3c:	57                   	push   %edi
46fc3d:	56                   	push   %esi
46fc3e:	50                   	push   %eax
46fc3f:	89 01                	mov    %eax,(%ecx)
46fc41:	e8 3a 89 ff ff       	call   0x468580
46fc46:	8b 83 68 03 00 00    	mov    0x368(%ebx),%eax
46fc4c:	83 c4 14             	add    $0x14,%esp
46fc4f:	8b 75 dc             	mov    -0x24(%ebp),%esi
46fc52:	83 7e 6c 10          	cmpl   $0x10,0x6c(%esi)
46fc56:	8d 7e 58             	lea    0x58(%esi),%edi
46fc59:	72 02                	jb     0x46fc5d
46fc5b:	8b 3f                	mov    (%edi),%edi
46fc5d:	8b 4e 68             	mov    0x68(%esi),%ecx
46fc60:	83 c0 04             	add    $0x4,%eax
46fc63:	89 4d d0             	mov    %ecx,-0x30(%ebp)
46fc66:	89 45 e8             	mov    %eax,-0x18(%ebp)
46fc69:	74 23                	je     0x46fc8e
46fc6b:	85 ff                	test   %edi,%edi
46fc6d:	74 1f                	je     0x46fc8e
46fc6f:	8d 71 01             	lea    0x1(%ecx),%esi