480abc:	8d 4c 24 48          	lea    0x48(%esp),%ecx
480ac0:	e8 9f 4f f8 ff       	call   0x405a64
480ac5:	8d 4c 24 28          	lea    0x28(%esp),%ecx
480ac9:	e8 96 4f f8 ff       	call   0x405a64
480ace:	8d 4c 24 38          	lea    0x38(%esp),%ecx
480ad2:	e8 8d 4f f8 ff       	call   0x405a64
480ad7:	5f                   	pop    %edi
480ad8:	5e                   	pop    %esi
480ad9:	33 c0                	xor    %eax,%eax
480adb:	5b                   	pop    %ebx
480adc:	8b e5                	mov    %ebp,%esp
480ade:	5d                   	pop    %ebp
480adf:	c2 08 00             	ret    $0x8
480ae2:	55                   	push   %ebp
480ae3:	8b ec                	mov    %esp,%ebp
480ae5:	83 e4 f8             	and    $0xfffffff8,%esp
480ae8:	83 ec 54             	sub    $0x54,%esp
480aeb:	83 64 24 04 00       	andl   $0x0,0x4(%esp)
480af0:	53                   	push   %ebx
480af1:	56                   	push   %esi
480af2:	8b d9                	mov    %ecx,%ebx
480af4:	8d 4c 24 3c          	lea    0x3c(%esp),%ecx
480af8:	57                   	push   %edi
480af9:	89 5c 24 14          	mov    %ebx,0x14(%esp)
480afd:	e8 c5 6c f8 ff       	call   0x4077c7
480b02:	8d 4c 24 30          	lea    0x30(%esp),%ecx
480b06:	e8 bc 6c f8 ff       	call   0x4077c7
480b0b:	8d 4c 24 50          	lea    0x50(%esp),%ecx
480b0f:	e8 b3 6c f8 ff       	call   0x4077c7
480b14:	8b 7d 08             	mov    0x8(%ebp),%edi
480b17:	8b 47 08             	mov    0x8(%edi),%eax
480b1a:	89 44 24 20          	mov    %eax,0x20(%esp)
480b1e:	83 f8 01             	cmp    $0x1,%eax
480b21:	74 09                	je     0x480b2c
480b23:	83 f8 04             	cmp    $0x4,%eax
480b26:	0f 85 85 00 00 00    	jne    0x480bb1
480b2c:	8b 47 04             	mov    0x4(%edi),%eax
480b2f:	8b 30                	mov    (%eax),%esi
480b31:	8b ce                	mov    %esi,%ecx
480b33:	e8 5f 8e f8 ff       	call   0x409997
480b38:	8b 4e 08             	mov    0x8(%esi),%ecx
480b3b:	83 ec 10             	sub    $0x10,%esp
480b3e:	8b d4                	mov    %esp,%edx
480b40:	8b 01                	mov    (%ecx),%eax
480b42:	89 02                	mov    %eax,(%edx)
480b44:	8b 41 04             	mov    0x4(%ecx),%eax
480b47:	89 42 04             	mov    %eax,0x4(%edx)
480b4a:	8b 41 08             	mov    0x8(%ecx),%eax
480b4d:	89 42 08             	mov    %eax,0x8(%edx)
480b50:	8b 41 0c             	mov    0xc(%ecx),%eax
480b53:	89 42 0c             	mov    %eax,0xc(%edx)
480b56:	ff 00                	incl   (%eax)
480b58:	8d 44 24 60          	lea    0x60(%esp),%eax
480b5c:	50                   	push   %eax
480b5d:	8d 44 24 44          	lea    0x44(%esp),%eax
480b61:	50                   	push   %eax
480b62:	8d 44 24 58          	lea    0x58(%esp),%eax
480b66:	50                   	push   %eax
480b67:	e8 db 07 00 00       	call   0x481347
480b6c:	8b 44 24 30          	mov    0x30(%esp),%eax
480b70:	83 ec 10             	sub    $0x10,%esp
480b73:	8b cc                	mov    %esp,%ecx
480b75:	89 01                	mov    %eax,(%ecx)
480b77:	8b 44 24 44          	mov    0x44(%esp),%eax
480b7b:	89 41 04             	mov    %eax,0x4(%ecx)
480b7e:	8b 44 24 48          	mov    0x48(%esp),%eax
480b82:	89 41 08             	mov    %eax,0x8(%ecx)
480b85:	8b 44 24 4c          	mov    0x4c(%esp),%eax
480b89:	89 41 0c             	mov    %eax,0xc(%ecx)
480b8c:	ff 00                	incl   (%eax)
480b8e:	8d 44 24 2c          	lea    0x2c(%esp),%eax
480b92:	50                   	push   %eax
480b93:	8d 44 24 2c          	lea    0x2c(%esp),%eax
480b97:	50                   	push   %eax
480b98:	e8 08 05 00 00       	call   0x4810a5
480b9d:	84 c0                	test   %al,%al
480b9f:	75 29                	jne    0x480bca
480ba1:	8b 03                	mov    (%ebx),%eax
480ba3:	6a 00                	push   $0x0
480ba5:	6a 02                	push   $0x2
480ba7:	8b 48 04             	mov    0x4(%eax),%ecx
480baa:	03 cb                	add    %ebx,%ecx
480bac:	e8 f2 5e fd ff       	call   0x456aa3
480bb1:	8b 75 0c             	mov    0xc(%ebp),%esi
480bb4:	8b ce                	mov    %esi,%ecx
480bb6:	e8 65 8e f8 ff       	call   0x409a20
480bbb:	83 26 00             	andl   $0x0,(%esi)
480bbe:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
480bc5:	e9 82 04 00 00       	jmp    0x48104c
480bca:	83 7c 24 44 00       	cmpl   $0x0,0x44(%esp)
480bcf:	74 54                	je     0x480c25
480bd1:	8d 44 24 10          	lea    0x10(%esp),%eax
480bd5:	50                   	push   %eax
480bd6:	ff 74 24 1c          	push   0x1c(%esp)
480bda:	ff 74 24 48          	push   0x48(%esp)
480bde:	ff 15 24 f0 48 00    	call   *0x48f024
480be4:	85 c0                	test   %eax,%eax
480be6:	74 37                	je     0x480c1f
480be8:	33 ff                	xor    %edi,%edi
480bea:	57                   	push   %edi
480beb:	50                   	push   %eax
480bec:	8b 03                	mov    (%ebx),%eax
480bee:	8b 48 04             	mov    0x4(%eax),%ecx
480bf1:	03 cb                	add    %ebx,%ecx
480bf3:	e8 69 f3 f9 ff       	call   0x41ff61
480bf8:	8b 03                	mov    (%ebx),%eax
480bfa:	57                   	push   %edi
480bfb:	6a 03                	push   $0x3
480bfd:	8b 48 04             	mov    0x4(%eax),%ecx
480c00:	03 cb                	add    %ebx,%ecx
480c02:	e8 9c 5e fd ff       	call   0x456aa3
480c07:	8b 75 0c             	mov    0xc(%ebp),%esi
480c0a:	8b ce                	mov    %esi,%ecx
480c0c:	e8 0f 8e f8 ff       	call   0x409a20
480c11:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
480c18:	89 3e                	mov    %edi,(%esi)
480c1a:	e9 2d 04 00 00       	jmp    0x48104c
480c1f:	8b 4c 24 10          	mov    0x10(%esp),%ecx
480c23:	eb 04                	jmp    0x480c29
480c25:	8b 4c 24 18          	mov    0x18(%esp),%ecx
480c29:	8d 44 24 2c          	lea    0x2c(%esp),%eax
480c2d:	33 f6                	xor    %esi,%esi
480c2f:	50                   	push   %eax
480c30:	8d 44 24 10          	lea    0x10(%esp),%eax
480c34:	50                   	push   %eax
480c35:	8b 44 24 24          	mov    0x24(%esp),%eax
480c39:	56                   	push   %esi
480c3a:	0d 06 00 02 00       	or     $0x20006,%eax
480c3f:	50                   	push   %eax
480c40:	56                   	push   %esi
480c41:	68 10 f9 48 00       	push   $0x48f910
480c46:	56                   	push   %esi
480c47:	ff 74 24 6c          	push   0x6c(%esp)
480c4b:	51                   	push   %ecx
480c4c:	ff 15 60 f0 48 00    	call   *0x48f060
480c52:	85 c0                	test   %eax,%eax
480c54:	74 49                	je     0x480c9f
480c56:	56                   	push   %esi
480c57:	50                   	push   %eax
480c58:	8b 03                	mov    (%ebx),%eax
480c5a:	8b 48 04             	mov    0x4(%eax),%ecx
480c5d:	03 cb                	add    %ebx,%ecx
480c5f:	e8 fd f2 f9 ff       	call   0x41ff61
480c64:	8b 03                	mov    (%ebx),%eax
480c66:	33 ff                	xor    %edi,%edi
480c68:	56                   	push   %esi
480c69:	47                   	inc    %edi
480c6a:	57                   	push   %edi
480c6b:	8b 48 04             	mov    0x4(%eax),%ecx
480c6e:	03 cb                	add    %ebx,%ecx
480c70:	e8 2e 5e fd ff       	call   0x456aa3
480c75:	8b 75 0c             	mov    0xc(%ebp),%esi
480c78:	8b ce                	mov    %esi,%ecx
480c7a:	e8 a1 8d f8 ff       	call   0x409a20
480c7f:	83 26 00             	andl   $0x0,(%esi)
480c82:	83 7c 24 10 00       	cmpl   $0x0,0x10(%esp)
480c87:	89 7e 0c             	mov    %edi,0xc(%esi)
480c8a:	0f 84 bc 03 00 00    	je     0x48104c
480c90:	ff 74 24 10          	push   0x10(%esp)
480c94:	ff 15 1c f0 48 00    	call   *0x48f01c
480c9a:	e9 ad 03 00 00       	jmp    0x48104c
480c9f:	83 7c 24 20 01       	cmpl   $0x1,0x20(%esp)
480ca4:	0f 86 89 03 00 00    	jbe    0x481033
480caa:	8b 47 04             	mov    0x4(%edi),%eax
480cad:	8b 70 08             	mov    0x8(%eax),%esi
480cb0:	8b ce                	mov    %esi,%ecx
480cb2:	e8 e0 8c f8 ff       	call   0x409997
480cb7:	8b 46 08             	mov    0x8(%esi),%eax
480cba:	68 a0 b1 4b 00       	push   $0x4bb1a0
480cbf:	ff 30                	push   (%eax)
480cc1:	e8 77 24 fa ff       	call   0x42313d
480cc6:	59                   	pop    %ecx
480cc7:	85 c0                	test   %eax,%eax
480cc9:	8b 47 04             	mov    0x4(%edi),%eax
480ccc:	59                   	pop    %ecx
480ccd:	75 7f                	jne    0x480d4e
480ccf:	8b 70 0c             	mov    0xc(%eax),%esi
480cd2:	8b ce                	mov    %esi,%ecx
480cd4:	e8 be 8c f8 ff       	call   0x409997
480cd9:	8b 46 08             	mov    0x8(%esi),%eax
480cdc:	ff 30                	push   (%eax)
480cde:	e8 59 21 fa ff       	call   0x422e3c
480ce3:	59                   	pop    %ecx
480ce4:	8d 1c 45 02 00 00 00 	lea    0x2(,%eax,2),%ebx
480ceb:	8b 47 04             	mov    0x4(%edi),%eax
480cee:	8b 70 0c             	mov    0xc(%eax),%esi
480cf1:	8b ce                	mov    %esi,%ecx
480cf3:	e8 9f 8c f8 ff       	call   0x409997
480cf8:	8b 46 08             	mov    0x8(%esi),%eax
480cfb:	8b 38                	mov    (%eax),%edi
480cfd:	8b 45 08             	mov    0x8(%ebp),%eax
480d00:	8b 40 04             	mov    0x4(%eax),%eax
480d03:	8b 70 04             	mov    0x4(%eax),%esi
480d06:	8b ce                	mov    %esi,%ecx
480d08:	e8 8a 8c f8 ff       	call   0x409997
480d0d:	8b 46 08             	mov    0x8(%esi),%eax
480d10:	53                   	push   %ebx
480d11:	57                   	push   %edi
480d12:	6a 02                	push   $0x2
480d14:	33 db                	xor    %ebx,%ebx
480d16:	53                   	push   %ebx
480d17:	ff 30                	push   (%eax)
480d19:	ff 74 24 20          	push   0x20(%esp)
480d1d:	ff 15 14 f0 48 00    	call   *0x48f014
480d23:	85 c0                	test   %eax,%eax
480d25:	0f 84 08 03 00 00    	je     0x481033
480d2b:	8b 54 24 14          	mov    0x14(%esp),%edx
480d2f:	53                   	push   %ebx
480d30:	50                   	push   %eax
480d31:	8b 02                	mov    (%edx),%eax
480d33:	8b 48 04             	mov    0x4(%eax),%ecx
480d36:	03 ca                	add    %edx,%ecx
480d38:	e8 24 f2 f9 ff       	call   0x41ff61
480d3d:	8b 75 0c             	mov    0xc(%ebp),%esi
480d40:	8b ce                	mov    %esi,%ecx
480d42:	e8 d9 8c f8 ff       	call   0x409a20
480d47:	89 1e                	mov    %ebx,(%esi)
480d49:	e9 de 02 00 00       	jmp    0x48102c
480d4e:	8b 70 08             	mov    0x8(%eax),%esi
480d51:	8b ce                	mov    %esi,%ecx
480d53:	e8 3f 8c f8 ff       	call   0x409997
480d58:	8b 46 08             	mov    0x8(%esi),%eax
480d5b:	68 bc b1 4b 00       	push   $0x4bb1bc
480d60:	ff 30                	push   (%eax)
480d62:	e8 d6 23 fa ff       	call   0x42313d
480d67:	59                   	pop    %ecx
480d68:	85 c0                	test   %eax,%eax
480d6a:	8b 47 04             	mov    0x4(%edi),%eax
480d6d:	59                   	pop    %ecx
480d6e:	0f 85 84 00 00 00    	jne    0x480df8
480d74:	8b 70 0c             	mov    0xc(%eax),%esi
480d77:	8b ce                	mov    %esi,%ecx
480d79:	e8 19 8c f8 ff       	call   0x409997
480d7e:	8b 46 08             	mov    0x8(%esi),%eax
480d81:	ff 30                	push   (%eax)
480d83:	e8 b4 20 fa ff       	call   0x422e3c
480d88:	59                   	pop    %ecx
480d89:	8d 1c 45 02 00 00 00 	lea    0x2(,%eax,2),%ebx
480d90:	8b 47 04             	mov    0x4(%edi),%eax
480d93:	8b 70 0c             	mov    0xc(%eax),%esi
480d96:	8b ce                	mov    %esi,%ecx
480d98:	e8 fa 8b f8 ff       	call   0x409997
480d9d:	8b 46 08             	mov    0x8(%esi),%eax
480da0:	8b 38                	mov    (%eax),%edi
480da2:	8b 45 08             	mov    0x8(%ebp),%eax
480da5:	8b 40 04             	mov    0x4(%eax),%eax
480da8:	8b 70 04             	mov    0x4(%eax),%esi
480dab:	8b ce                	mov    %esi,%ecx
480dad:	e8 e5 8b f8 ff       	call   0x409997
480db2:	8b 46 08             	mov    0x8(%esi),%eax
480db5:	53                   	push   %ebx
480db6:	57                   	push   %edi
480db7:	33 ff                	xor    %edi,%edi
480db9:	33 db                	xor    %ebx,%ebx
480dbb:	47                   	inc    %edi
480dbc:	57                   	push   %edi
480dbd:	53                   	push   %ebx
480dbe:	ff 30                	push   (%eax)
480dc0:	ff 74 24 20          	push   0x20(%esp)
480dc4:	ff 15 14 f0 48 00    	call   *0x48f014
480dca:	85 c0                	test   %eax,%eax
480dcc:	0f 84 61 02 00 00    	je     0x481033
480dd2:	8b 54 24 14          	mov    0x14(%esp),%edx
480dd6:	53                   	push   %ebx
480dd7:	50                   	push   %eax
480dd8:	8b 02                	mov    (%edx),%eax
480dda:	8b 48 04             	mov    0x4(%eax),%ecx
480ddd:	03 ca                	add    %edx,%ecx
480ddf:	e8 7d f1 f9 ff       	call   0x41ff61
480de4:	8b 75 0c             	mov    0xc(%ebp),%esi
480de7:	8b ce                	mov    %esi,%ecx
480de9:	e8 32 8c f8 ff       	call   0x409a20
480dee:	89 7e 0c             	mov    %edi,0xc(%esi)
480df1:	89 1e                	mov    %ebx,(%esi)
480df3:	e9 3b 02 00 00       	jmp    0x481033
480df8:	8b 70 08             	mov    0x8(%eax),%esi
480dfb:	8b ce                	mov    %esi,%ecx
480dfd:	e8 95 8b f8 ff       	call   0x409997
480e02:	8b 46 08             	mov    0x8(%esi),%eax
480e05:	68 cc b1 4b 00       	push   $0x4bb1cc
480e0a:	ff 30                	push   (%eax)
480e0c:	e8 2c 23 fa ff       	call   0x42313d
480e11:	59                   	pop    %ecx
480e12:	85 c0                	test   %eax,%eax
480e14:	8b 47 04             	mov    0x4(%edi),%eax
480e17:	59                   	pop    %ecx
480e18:	0f 85 e3 00 00 00    	jne    0x480f01
480e1e:	8b 70 0c             	mov    0xc(%eax),%esi
480e21:	8b ce                	mov    %esi,%ecx
480e23:	e8 6f 8b f8 ff       	call   0x409997
480e28:	8b 46 08             	mov    0x8(%esi),%eax
480e2b:	33 c9                	xor    %ecx,%ecx
480e2d:	6a 02                	push   $0x2
480e2f:	5a                   	pop    %edx
480e30:	8b 40 04             	mov    0x4(%eax),%eax
480e33:	89 44 24 14          	mov    %eax,0x14(%esp)
480e37:	83 c0 02             	add    $0x2,%eax
480e3a:	89 44 24 20          	mov    %eax,0x20(%esp)
480e3e:	f7 e2                	mul    %edx
480e40:	0f 90 c1             	seto   %cl
480e43:	f7 d9                	neg    %ecx
480e45:	0b c8                	or     %eax,%ecx
480e47:	51                   	push   %ecx
480e48:	e8 a9 01 fa ff       	call   0x420ff6
480e4d:	59                   	pop    %ecx
480e4e:	8b 4f 04             	mov    0x4(%edi),%ecx
480e51:	89 44 24 18          	mov    %eax,0x18(%esp)
480e55:	8b 71 0c             	mov    0xc(%ecx),%esi
480e58:	8b ce                	mov    %esi,%ecx
480e5a:	e8 38 8b f8 ff       	call   0x409997
480e5f:	8b 56 08             	mov    0x8(%esi),%edx
480e62:	8b 4c 24 14          	mov    0x14(%esp),%ecx
480e66:	8b 74 24 18          	mov    0x18(%esp),%esi
480e6a:	41                   	inc    %ecx
480e6b:	51                   	push   %ecx
480e6c:	8b 12                	mov    (%edx),%edx
480e6e:	8b ce                	mov    %esi,%ecx
480e70:	e8 c9 37 f8 ff       	call   0x40463e
480e75:	8b 44 24 18          	mov    0x18(%esp),%eax
480e79:	59                   	pop    %ecx
480e7a:	33 c9                	xor    %ecx,%ecx
480e7c:	89 0c 46             	mov    %ecx,(%esi,%eax,2)
480e7f:	85 c0                	test   %eax,%eax
480e81:	74 1e                	je     0x480ea1
480e83:	66 83 3c 4e 0a       	cmpw   $0xa,(%esi,%ecx,2)
480e88:	75 06                	jne    0x480e90
480e8a:	33 d2                	xor    %edx,%edx
480e8c:	66 89 14 4e          	mov    %dx,(%esi,%ecx,2)
480e90:	41                   	inc    %ecx
480e91:	3b c8                	cmp    %eax,%ecx
480e93:	72 ee                	jb     0x480e83
480e95:	85 c0                	test   %eax,%eax
480e97:	74 08                	je     0x480ea1
480e99:	8b 44 24 20          	mov    0x20(%esp),%eax
480e9d:	89 44 24 14          	mov    %eax,0x14(%esp)
480ea1:	8b 47 04             	mov    0x4(%edi),%eax
480ea4:	8b 70 04             	mov    0x4(%eax),%esi
480ea7:	8b ce                	mov    %esi,%ecx
480ea9:	e8 e9 8a f8 ff       	call   0x409997
480eae:	8b 46 08             	mov    0x8(%esi),%eax
480eb1:	8b 7c 24 18          	mov    0x18(%esp),%edi
480eb5:	8b 08                	mov    (%eax),%ecx
480eb7:	8b 44 24 14          	mov    0x14(%esp),%eax
480ebb:	03 c0                	add    %eax,%eax
480ebd:	50                   	push   %eax
480ebe:	57                   	push   %edi
480ebf:	6a 07                	push   $0x7
480ec1:	6a 00                	push   $0x0
480ec3:	51                   	push   %ecx
480ec4:	ff 74 24 20          	push   0x20(%esp)