45da99:	8b cb                	mov    %ebx,%ecx
45da9b:	e8 bc f1 fe ff       	call   0x44cc5c
45daa0:	8b 4d 10             	mov    0x10(%ebp),%ecx
45daa3:	83 3d f0 20 4c 00 00 	cmpl   $0x0,0x4c20f0
45daaa:	89 4d e8             	mov    %ecx,-0x18(%ebp)
45daad:	75 09                	jne    0x45dab8
45daaf:	c7 45 e8 02 00 00 00 	movl   $0x2,-0x18(%ebp)
45dab6:	eb 0b                	jmp    0x45dac3
45dab8:	85 c9                	test   %ecx,%ecx
45daba:	75 07                	jne    0x45dac3
45dabc:	c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%ebp)
45dac3:	6a 0a                	push   $0xa
45dac5:	6a 08                	push   $0x8
45dac7:	8d 85 04 fe ff ff    	lea    -0x1fc(%ebp),%eax
45dacd:	50                   	push   %eax
45dace:	ff b3 f4 00 00 00    	push   0xf4(%ebx)
45dad4:	e8 19 74 fc ff       	call   0x424ef2
45dad9:	8b 4f 04             	mov    0x4(%edi),%ecx
45dadc:	8b 06                	mov    (%esi),%eax
45dade:	83 c4 10             	add    $0x10,%esp
45dae1:	8b 04 81             	mov    (%ecx,%eax,4),%eax
45dae4:	6a 7f                	push   $0x7f
45dae6:	5a                   	pop    %edx
45dae7:	6a 33                	push   $0x33
45dae9:	89 55 98             	mov    %edx,-0x68(%ebp)
45daec:	5a                   	pop    %edx
45daed:	66 39 50 08          	cmp    %dx,0x8(%eax)
45daf1:	6a 7f                	push   $0x7f
45daf3:	89 55 a0             	mov    %edx,-0x60(%ebp)
45daf6:	5a                   	pop    %edx
45daf7:	0f 85 44 05 00 00    	jne    0x45e041
45dafd:	c7 45 bc 4e 00 00 00 	movl   $0x4e,-0x44(%ebp)
45db04:	c7 45 b4 4f 00 00 00 	movl   $0x4f,-0x4c(%ebp)
45db0b:	c7 45 b8 47 00 00 00 	movl   $0x47,-0x48(%ebp)
45db12:	c7 45 c0 40 00 00 00 	movl   $0x40,-0x40(%ebp)
45db19:	c7 45 9c 48 00 00 00 	movl   $0x48,-0x64(%ebp)
45db20:	8b 06                	mov    (%esi),%eax
45db22:	c6 45 13 01          	movb   $0x1,0x13(%ebp)
45db26:	8b 04 81             	mov    (%ecx,%eax,4),%eax
45db29:	8d 4d 88             	lea    -0x78(%ebp),%ecx
45db2c:	ff 30                	push   (%eax)
45db2e:	e8 ba 93 fa ff       	call   0x406eed
45db33:	ff 75 e8             	push   -0x18(%ebp)
45db36:	8d 45 d0             	lea    -0x30(%ebp),%eax
45db39:	50                   	push   %eax
45db3a:	8d 45 c4             	lea    -0x3c(%ebp),%eax
45db3d:	50                   	push   %eax
45db3e:	8d 45 88             	lea    -0x78(%ebp),%eax
45db41:	50                   	push   %eax
45db42:	e8 fe fa fa ff       	call   0x40d645
45db47:	83 7d c4 00          	cmpl   $0x0,-0x3c(%ebp)
45db4b:	0f 85 75 05 00 00    	jne    0x45e0c6
45db51:	8d 85 04 fe ff ff    	lea    -0x1fc(%ebp),%eax
45db57:	50                   	push   %eax
45db58:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
45db5b:	e8 03 8f fa ff       	call   0x406a63
45db60:	6a 2e                	push   $0x2e
45db62:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
45db65:	e8 2f ec fa ff       	call   0x40c799
45db6a:	8b 0e                	mov    (%esi),%ecx
45db6c:	8b 47 04             	mov    0x4(%edi),%eax
45db6f:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45db72:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
45db75:	ff 30                	push   (%eax)
45db77:	e8 91 75 fa ff       	call   0x40510d
45db7c:	6a 10                	push   $0x10
45db7e:	8d 45 d0             	lea    -0x30(%ebp),%eax
45db81:	50                   	push   %eax
45db82:	8d 45 ec             	lea    -0x14(%ebp),%eax
45db85:	50                   	push   %eax
45db86:	8d 45 a4             	lea    -0x5c(%ebp),%eax
45db89:	50                   	push   %eax
45db8a:	e8 b6 fa fa ff       	call   0x40d645
45db8f:	8b 45 ec             	mov    -0x14(%ebp),%eax
45db92:	85 c0                	test   %eax,%eax
45db94:	75 41                	jne    0x45dbd7
45db96:	68 00 dc 49 00       	push   $0x49dc00
45db9b:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45db9e:	e8 16 f2 fa ff       	call   0x40cdb9
45dba3:	6a 10                	push   $0x10
45dba5:	ff 75 d0             	push   -0x30(%ebp)
45dba8:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45dbab:	50                   	push   %eax
45dbac:	8d 45 a4             	lea    -0x5c(%ebp),%eax
45dbaf:	50                   	push   %eax
45dbb0:	e8 34 fb fa ff       	call   0x40d6e9
45dbb5:	6a 10                	push   $0x10
45dbb7:	8d 45 d0             	lea    -0x30(%ebp),%eax
45dbba:	50                   	push   %eax
45dbbb:	8d 45 ec             	lea    -0x14(%ebp),%eax
45dbbe:	50                   	push   %eax
45dbbf:	8d 45 a4             	lea    -0x5c(%ebp),%eax
45dbc2:	50                   	push   %eax
45dbc3:	e8 7d fa fa ff       	call   0x40d645
45dbc8:	8b 45 ec             	mov    -0x14(%ebp),%eax
45dbcb:	85 c0                	test   %eax,%eax
45dbcd:	0f 84 a2 04 00 00    	je     0x45e075
45dbd3:	c6 45 13 00          	movb   $0x0,0x13(%ebp)
45dbd7:	ff 75 e8             	push   -0x18(%ebp)
45dbda:	68 00 04 00 00       	push   $0x400
45dbdf:	50                   	push   %eax
45dbe0:	8d 45 88             	lea    -0x78(%ebp),%eax
45dbe3:	50                   	push   %eax
45dbe4:	e8 fa a4 fe ff       	call   0x4480e3
45dbe9:	8b 45 ec             	mov    -0x14(%ebp),%eax
45dbec:	ff 06                	incl   (%esi)
45dbee:	8b 0e                	mov    (%esi),%ecx
45dbf0:	89 45 c4             	mov    %eax,-0x3c(%ebp)
45dbf3:	8b 47 04             	mov    0x4(%edi),%eax
45dbf6:	6a 4e                	push   $0x4e
45dbf8:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45dbfb:	59                   	pop    %ecx
45dbfc:	66 39 48 08          	cmp    %cx,0x8(%eax)
45dc00:	0f 85 22 01 00 00    	jne    0x45dd28
45dc06:	33 c0                	xor    %eax,%eax
45dc08:	89 45 f8             	mov    %eax,-0x8(%ebp)
45dc0b:	eb 03                	jmp    0x45dc10
45dc0d:	8b 7d 08             	mov    0x8(%ebp),%edi
45dc10:	ff 06                	incl   (%esi)
45dc12:	8b 0e                	mov    (%esi),%ecx
45dc14:	8b 47 04             	mov    0x4(%edi),%eax
45dc17:	6a 4f                	push   $0x4f
45dc19:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45dc1c:	59                   	pop    %ecx
45dc1d:	0f bf 78 0a          	movswl 0xa(%eax),%edi
45dc21:	66 39 48 08          	cmp    %cx,0x8(%eax)
45dc25:	75 33                	jne    0x45dc5a
45dc27:	83 ec 10             	sub    $0x10,%esp
45dc2a:	8b cc                	mov    %esp,%ecx
45dc2c:	ff 75 08             	push   0x8(%ebp)
45dc2f:	e8 a8 f0 ff ff       	call   0x45ccdc
45dc34:	33 c0                	xor    %eax,%eax
45dc36:	50                   	push   %eax
45dc37:	ff 36                	push   (%esi)
45dc39:	ff 75 f8             	push   -0x8(%ebp)
45dc3c:	e8 4c 11 00 00       	call   0x45ed8d
45dc41:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45dc44:	8b f0                	mov    %eax,%esi
45dc46:	e8 d5 4f fb ff       	call   0x412c20
45dc4b:	89 75 d4             	mov    %esi,-0x2c(%ebp)
45dc4e:	8b 75 0c             	mov    0xc(%ebp),%esi
45dc51:	c7 45 e0 01 00 00 00 	movl   $0x1,-0x20(%ebp)
45dc58:	eb 19                	jmp    0x45dc73
45dc5a:	6a ff                	push   $0xffffffff
45dc5c:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45dc5f:	50                   	push   %eax
45dc60:	56                   	push   %esi
45dc61:	ff 75 08             	push   0x8(%ebp)
45dc64:	8b cb                	mov    %ebx,%ecx
45dc66:	e8 c5 21 fb ff       	call   0x40fe30
45dc6b:	85 c0                	test   %eax,%eax
45dc6d:	0f 88 25 04 00 00    	js     0x45e098
45dc73:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45dc76:	e8 0b f6 fa ff       	call   0x40d286
45dc7b:	85 c0                	test   %eax,%eax
45dc7d:	0f 88 15 04 00 00    	js     0x45e098
45dc83:	8b 45 08             	mov    0x8(%ebp),%eax
45dc86:	8b 0e                	mov    (%esi),%ecx
45dc88:	8b 40 04             	mov    0x4(%eax),%eax
45dc8b:	6a 4f                	push   $0x4f
45dc8d:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45dc90:	5a                   	pop    %edx
45dc91:	66 39 50 08          	cmp    %dx,0x8(%eax)
45dc95:	0f 85 fd 03 00 00    	jne    0x45e098
45dc9b:	8d 41 01             	lea    0x1(%ecx),%eax
45dc9e:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45dca1:	89 06                	mov    %eax,(%esi)
45dca3:	e8 de f5 fa ff       	call   0x40d286
45dca8:	8b 55 f8             	mov    -0x8(%ebp),%edx
45dcab:	8b 0e                	mov    (%esi),%ecx
45dcad:	89 84 95 84 fe ff ff 	mov    %eax,-0x17c(%ebp,%edx,4)
45dcb4:	8b 45 08             	mov    0x8(%ebp),%eax
45dcb7:	6a 4e                	push   $0x4e
45dcb9:	8b 40 04             	mov    0x4(%eax),%eax
45dcbc:	42                   	inc    %edx
45dcbd:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45dcc0:	59                   	pop    %ecx
45dcc1:	89 55 f8             	mov    %edx,-0x8(%ebp)
45dcc4:	89 55 c8             	mov    %edx,-0x38(%ebp)
45dcc7:	66 39 48 08          	cmp    %cx,0x8(%eax)
45dccb:	0f 84 3c ff ff ff    	je     0x45dc0d
45dcd1:	83 fa 01             	cmp    $0x1,%edx
45dcd4:	0f 8c b9 03 00 00    	jl     0x45e093
45dcda:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45dcdd:	e8 7a e4 fb ff       	call   0x41c15c
45dce2:	33 c0                	xor    %eax,%eax
45dce4:	89 45 f0             	mov    %eax,-0x10(%ebp)
45dce7:	39 45 f8             	cmp    %eax,-0x8(%ebp)
45dcea:	7e 23                	jle    0x45dd0f
45dcec:	ff b4 85 84 fe ff ff 	push   -0x17c(%ebp,%eax,4)
45dcf3:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45dcf6:	e8 7c e4 fb ff       	call   0x41c177
45dcfb:	84 c0                	test   %al,%al
45dcfd:	0f 84 83 03 00 00    	je     0x45e086
45dd03:	8b 45 f0             	mov    -0x10(%ebp),%eax
45dd06:	40                   	inc    %eax
45dd07:	89 45 f0             	mov    %eax,-0x10(%ebp)
45dd0a:	3b 45 f8             	cmp    -0x8(%ebp),%eax
45dd0d:	7c dd                	jl     0x45dcec
45dd0f:	33 c0                	xor    %eax,%eax
45dd11:	50                   	push   %eax
45dd12:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45dd15:	50                   	push   %eax
45dd16:	e8 35 e3 fb ff       	call   0x41c050
45dd1b:	59                   	pop    %ecx
45dd1c:	59                   	pop    %ecx
45dd1d:	84 c0                	test   %al,%al
45dd1f:	0f 84 66 03 00 00    	je     0x45e08b
45dd25:	8b 7d 08             	mov    0x8(%ebp),%edi
45dd28:	8b 0e                	mov    (%esi),%ecx
45dd2a:	8b 57 04             	mov    0x4(%edi),%edx
45dd2d:	8b 04 8a             	mov    (%edx,%ecx,4),%eax
45dd30:	66 83 78 08 41       	cmpw   $0x41,0x8(%eax)
45dd35:	0f 85 c0 02 00 00    	jne    0x45dffb
45dd3b:	41                   	inc    %ecx
45dd3c:	80 7d 13 00          	cmpb   $0x0,0x13(%ebp)
45dd40:	8b 14 8a             	mov    (%edx,%ecx,4),%edx
45dd43:	89 4d f4             	mov    %ecx,-0xc(%ebp)
45dd46:	0f bf 42 0a          	movswl 0xa(%edx),%eax
45dd4a:	89 0e                	mov    %ecx,(%esi)
45dd4c:	89 45 f0             	mov    %eax,-0x10(%ebp)
45dd4f:	74 68                	je     0x45ddb9
45dd51:	8b 5f 04             	mov    0x4(%edi),%ebx
45dd54:	33 c0                	xor    %eax,%eax
45dd56:	8b d0                	mov    %eax,%edx
45dd58:	8b 04 8b             	mov    (%ebx,%ecx,4),%eax
45dd5b:	6a 7f                	push   $0x7f
45dd5d:	5e                   	pop    %esi
45dd5e:	66 39 70 08          	cmp    %si,0x8(%eax)
45dd62:	8b 75 0c             	mov    0xc(%ebp),%esi
45dd65:	eb 48                	jmp    0x45ddaf
45dd67:	8b 47 04             	mov    0x4(%edi),%eax
45dd6a:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45dd6d:	0f bf 40 08          	movswl 0x8(%eax),%eax
45dd71:	83 e8 47             	sub    $0x47,%eax
45dd74:	74 0e                	je     0x45dd84
45dd76:	48                   	dec    %eax
45dd77:	74 08                	je     0x45dd81
45dd79:	83 e8 06             	sub    $0x6,%eax
45dd7c:	74 06                	je     0x45dd84
45dd7e:	48                   	dec    %eax
45dd7f:	75 04                	jne    0x45dd85
45dd81:	4a                   	dec    %edx
45dd82:	eb 01                	jmp    0x45dd85
45dd84:	42                   	inc    %edx
45dd85:	41                   	inc    %ecx
45dd86:	89 0e                	mov    %ecx,(%esi)
45dd88:	85 d2                	test   %edx,%edx
45dd8a:	75 16                	jne    0x45dda2
45dd8c:	8b 47 04             	mov    0x4(%edi),%eax
45dd8f:	6a 40                	push   $0x40
45dd91:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45dd94:	5b                   	pop    %ebx
45dd95:	66 39 58 08          	cmp    %bx,0x8(%eax)
45dd99:	8b 5d cc             	mov    -0x34(%ebp),%ebx
45dd9c:	0f 84 6b 02 00 00    	je     0x45e00d
45dda2:	8b 47 04             	mov    0x4(%edi),%eax
45dda5:	6a 7f                	push   $0x7f
45dda7:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45ddaa:	5b                   	pop    %ebx
45ddab:	66 39 58 08          	cmp    %bx,0x8(%eax)
45ddaf:	8b 5d cc             	mov    -0x34(%ebp),%ebx
45ddb2:	75 b3                	jne    0x45dd67
45ddb4:	e9 54 02 00 00       	jmp    0x45e00d
45ddb9:	6a 4e                	push   $0x4e
45ddbb:	58                   	pop    %eax
45ddbc:	6a 05                	push   $0x5
45ddbe:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45ddc1:	66 39 42 08          	cmp    %ax,0x8(%edx)
45ddc5:	0f 85 85 01 00 00    	jne    0x45df50
45ddcb:	e8 14 f8 fa ff       	call   0x40d5e4
45ddd0:	84 c0                	test   %al,%al
45ddd2:	0f 85 ae 00 00 00    	jne    0x45de86
45ddd8:	8b 45 f4             	mov    -0xc(%ebp),%eax
45dddb:	83 ec 10             	sub    $0x10,%esp
45ddde:	48                   	dec    %eax
45dddf:	8b cc                	mov    %esp,%ecx
45dde1:	57                   	push   %edi
45dde2:	89 06                	mov    %eax,(%esi)
45dde4:	e8 f3 ee ff ff       	call   0x45ccdc
45dde9:	8d 45 c8             	lea    -0x38(%ebp),%eax
45ddec:	50                   	push   %eax
45dded:	ff 36                	push   (%esi)
45ddef:	33 c0                	xor    %eax,%eax
45ddf1:	50                   	push   %eax
45ddf2:	e8 96 0f 00 00       	call   0x45ed8d
45ddf7:	33 c9                	xor    %ecx,%ecx
45ddf9:	89 85 84 fe ff ff    	mov    %eax,-0x17c(%ebp)
45ddff:	8b 45 c8             	mov    -0x38(%ebp),%eax
45de02:	41                   	inc    %ecx
45de03:	89 45 f8             	mov    %eax,-0x8(%ebp)
45de06:	3b c1                	cmp    %ecx,%eax
45de08:	7e 28                	jle    0x45de32
45de0a:	8b d9                	mov    %ecx,%ebx
45de0c:	83 ec 10             	sub    $0x10,%esp
45de0f:	8b cc                	mov    %esp,%ecx
45de11:	57                   	push   %edi
45de12:	e8 c5 ee ff ff       	call   0x45ccdc
45de17:	33 c0                	xor    %eax,%eax
45de19:	50                   	push   %eax
45de1a:	ff 36                	push   (%esi)
45de1c:	53                   	push   %ebx
45de1d:	e8 6b 0f 00 00       	call   0x45ed8d
45de22:	89 84 9d 84 fe ff ff 	mov    %eax,-0x17c(%ebp,%ebx,4)
45de29:	43                   	inc    %ebx
45de2a:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
45de2d:	7c dd                	jl     0x45de0c
45de2f:	8b 5d cc             	mov    -0x34(%ebp),%ebx
45de32:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45de35:	e8 22 e3 fb ff       	call   0x41c15c
45de3a:	33 c0                	xor    %eax,%eax
45de3c:	89 45 10             	mov    %eax,0x10(%ebp)
45de3f:	39 45 f8             	cmp    %eax,-0x8(%ebp)
45de42:	7e 23                	jle    0x45de67
45de44:	ff b4 85 84 fe ff ff 	push   -0x17c(%ebp,%eax,4)
45de4b:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
45de4e:	e8 24 e3 fb ff       	call   0x41c177
45de53:	84 c0                	test   %al,%al
45de55:	0f 84 42 02 00 00    	je     0x45e09d
45de5b:	8b 45 10             	mov    0x10(%ebp),%eax
45de5e:	40                   	inc    %eax
45de5f:	89 45 10             	mov    %eax,0x10(%ebp)
45de62:	3b 45 f8             	cmp    -0x8(%ebp),%eax
45de65:	7c dd                	jl     0x45de44
45de67:	33 c0                	xor    %eax,%eax
45de69:	50                   	push   %eax
45de6a:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45de6d:	50                   	push   %eax
45de6e:	e8 dd e1 fb ff       	call   0x41c050
45de73:	59                   	pop    %ecx
45de74:	59                   	pop    %ecx
45de75:	84 c0                	test   %al,%al
45de77:	0f 84 25 02 00 00    	je     0x45e0a2
45de7d:	ff 06                	incl   (%esi)
45de7f:	8b 0e                	mov    (%esi),%ecx
45de81:	89 4d f4             	mov    %ecx,-0xc(%ebp)
45de84:	eb 03                	jmp    0x45de89
45de86:	8b 4d f4             	mov    -0xc(%ebp),%ecx
45de89:	33 c0                	xor    %eax,%eax
45de8b:	3b 4f 08             	cmp    0x8(%edi),%ecx
45de8e:	0f 83 83 00 00 00    	jae    0x45df17
45de94:	6a 7f                	push   $0x7f
45de96:	8b d8                	mov    %eax,%ebx
45de98:	5e                   	pop    %esi
45de99:	8b 47 04             	mov    0x4(%edi),%eax
45de9c:	6a 33                	push   $0x33
45de9e:	8b 04 88             	mov    (%eax,%ecx,4),%eax
45dea1:	89 45 10             	mov    %eax,0x10(%ebp)
45dea4:	0f b7 40 08          	movzwl 0x8(%eax),%eax
45dea8:	5a                   	pop    %edx