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)
480ec8:	ff 15 14 f0 48 00    	call   *0x48f014
480ece:	85 c0                	test   %eax,%eax
480ed0:	74 23                	je     0x480ef5
480ed2:	6a 00                	push   $0x0
480ed4:	50                   	push   %eax
480ed5:	8b 03                	mov    (%ebx),%eax
480ed7:	8b 48 04             	mov    0x4(%eax),%ecx
480eda:	03 cb                	add    %ebx,%ecx
480edc:	e8 80 f0 f9 ff       	call   0x41ff61
480ee1:	8b 75 0c             	mov    0xc(%ebp),%esi
480ee4:	8b ce                	mov    %esi,%ecx
480ee6:	e8 35 8b f8 ff       	call   0x409a20
480eeb:	83 26 00             	andl   $0x0,(%esi)
480eee:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
480ef5:	57                   	push   %edi
480ef6:	e8 71 01 fa ff       	call   0x42106c
480efb:	59                   	pop    %ecx
480efc:	e9 32 01 00 00       	jmp    0x481033
480f01:	8b 70 08             	mov    0x8(%eax),%esi
480f04:	8b ce                	mov    %esi,%ecx
480f06:	e8 8c 8a f8 ff       	call   0x409997
480f0b:	8b 46 08             	mov    0x8(%esi),%eax
480f0e:	68 e8 b1 4b 00       	push   $0x4bb1e8
480f13:	ff 30                	push   (%eax)
480f15:	e8 23 22 fa ff       	call   0x42313d
480f1a:	59                   	pop    %ecx
480f1b:	85 c0                	test   %eax,%eax
480f1d:	8b 47 04             	mov    0x4(%edi),%eax
480f20:	59                   	pop    %ecx
480f21:	75 5b                	jne    0x480f7e
480f23:	8b 48 0c             	mov    0xc(%eax),%ecx
480f26:	e8 71 8d f8 ff       	call   0x409c9c
480f2b:	89 44 24 20          	mov    %eax,0x20(%esp)
480f2f:	8b 47 04             	mov    0x4(%edi),%eax
480f32:	8b 70 04             	mov    0x4(%eax),%esi
480f35:	8b ce                	mov    %esi,%ecx
480f37:	e8 5b 8a f8 ff       	call   0x409997
480f3c:	6a 04                	push   $0x4
480f3e:	8d 4c 24 24          	lea    0x24(%esp),%ecx
480f42:	51                   	push   %ecx
480f43:	6a 04                	push   $0x4
480f45:	8b 46 08             	mov    0x8(%esi),%eax
480f48:	33 ff                	xor    %edi,%edi
480f4a:	57                   	push   %edi
480f4b:	ff 30                	push   (%eax)
480f4d:	ff 74 24 20          	push   0x20(%esp)
480f51:	ff 15 14 f0 48 00    	call   *0x48f014
480f57:	85 c0                	test   %eax,%eax
480f59:	0f 84 d4 00 00 00    	je     0x481033
480f5f:	57                   	push   %edi
480f60:	50                   	push   %eax
480f61:	8b 03                	mov    (%ebx),%eax
480f63:	8b 48 04             	mov    0x4(%eax),%ecx
480f66:	03 cb                	add    %ebx,%ecx
480f68:	e8 f4 ef f9 ff       	call   0x41ff61
480f6d:	8b 75 0c             	mov    0xc(%ebp),%esi
480f70:	8b ce                	mov    %esi,%ecx
480f72:	e8 a9 8a f8 ff       	call   0x409a20
480f77:	89 3e                	mov    %edi,(%esi)
480f79:	e9 ae 00 00 00       	jmp    0x48102c
480f7e:	8b 70 08             	mov    0x8(%eax),%esi
480f81:	8b ce                	mov    %esi,%ecx
480f83:	e8 0f 8a f8 ff       	call   0x409997
480f88:	8b 46 08             	mov    0x8(%esi),%eax
480f8b:	68 fc b1 4b 00       	push   $0x4bb1fc
480f90:	ff 30                	push   (%eax)
480f92:	e8 a6 21 fa ff       	call   0x42313d
480f97:	59                   	pop    %ecx
480f98:	85 c0                	test   %eax,%eax
480f9a:	8b 47 04             	mov    0x4(%edi),%eax
480f9d:	59                   	pop    %ecx
480f9e:	75 2b                	jne    0x480fcb
480fa0:	8b 48 0c             	mov    0xc(%eax),%ecx
480fa3:	e8 9e 8d f8 ff       	call   0x409d46
480fa8:	89 44 24 20          	mov    %eax,0x20(%esp)
480fac:	8b 47 04             	mov    0x4(%edi),%eax
480faf:	89 54 24 24          	mov    %edx,0x24(%esp)
480fb3:	8b 70 04             	mov    0x4(%eax),%esi
480fb6:	8b ce                	mov    %esi,%ecx
480fb8:	e8 da 89 f8 ff       	call   0x409997
480fbd:	6a 08                	push   $0x8
480fbf:	8d 4c 24 24          	lea    0x24(%esp),%ecx
480fc3:	51                   	push   %ecx
480fc4:	6a 0b                	push   $0xb
480fc6:	e9 7a ff ff ff       	jmp    0x480f45
480fcb:	8b 70 08             	mov    0x8(%eax),%esi
480fce:	8b ce                	mov    %esi,%ecx
480fd0:	e8 c2 89 f8 ff       	call   0x409997
480fd5:	8b 46 08             	mov    0x8(%esi),%eax
480fd8:	68 10 b2 4b 00       	push   $0x4bb210
480fdd:	ff 30                	push   (%eax)
480fdf:	e8 59 21 fa ff       	call   0x42313d
480fe4:	59                   	pop    %ecx
480fe5:	59                   	pop    %ecx
480fe6:	85 c0                	test   %eax,%eax
480fe8:	75 35                	jne    0x48101f
480fea:	8b 47 04             	mov    0x4(%edi),%eax
480fed:	8b 48 0c             	mov    0xc(%eax),%ecx
480ff0:	e8 aa 79 fe ff       	call   0x46899f
480ff5:	8b 57 04             	mov    0x4(%edi),%edx
480ff8:	8b d8                	mov    %eax,%ebx
480ffa:	8b 72 04             	mov    0x4(%edx),%esi
480ffd:	8b ce                	mov    %esi,%ecx
480fff:	8b 7a 0c             	mov    0xc(%edx),%edi
481002:	e8 90 89 f8 ff       	call   0x409997
481007:	8b 56 08             	mov    0x8(%esi),%edx
48100a:	8b cf                	mov    %edi,%ecx
48100c:	e8 d1 79 fe ff       	call   0x4689e2
481011:	50                   	push   %eax
481012:	53                   	push   %ebx
481013:	6a 03                	push   $0x3
481015:	33 db                	xor    %ebx,%ebx
481017:	53                   	push   %ebx
481018:	ff 32                	push   (%edx)
48101a:	e9 fa fc ff ff       	jmp    0x480d19
48101f:	8b 75 0c             	mov    0xc(%ebp),%esi
481022:	8b ce                	mov    %esi,%ecx
481024:	e8 f7 89 f8 ff       	call   0x409a20
481029:	83 26 00             	andl   $0x0,(%esi)
48102c:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
481033:	ff 74 24 0c          	push   0xc(%esp)
481037:	8b 35 1c f0 48 00    	mov    0x48f01c,%esi
48103d:	ff d6                	call   *%esi
48103f:	83 7c 24 10 00       	cmpl   $0x0,0x10(%esp)
481044:	74 06                	je     0x48104c
481046:	ff 74 24 10          	push   0x10(%esp)
48104a:	ff d6                	call   *%esi
48104c:	8d 4c 24 50          	lea    0x50(%esp),%ecx
481050:	e8 0f 4a f8 ff       	call   0x405a64
481055:	8d 4c 24 30          	lea    0x30(%esp),%ecx
481059:	e8 06 4a f8 ff       	call   0x405a64
48105e:	8d 4c 24 40          	lea    0x40(%esp),%ecx
481062:	e8 fd 49 f8 ff       	call   0x405a64
481067:	5f                   	pop    %edi
481068:	5e                   	pop    %esi
481069:	33 c0                	xor    %eax,%eax
48106b:	5b                   	pop    %ebx
48106c:	8b e5                	mov    %ebp,%esp
48106e:	5d                   	pop    %ebp
48106f:	c2 08 00             	ret    $0x8
481072:	56                   	push   %esi
481073:	8b f1                	mov    %ecx,%esi
481075:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
481079:	75 20                	jne    0x48109b
48107b:	68 38 b2 4b 00       	push   $0x4bb238
481080:	ff 15 9c f1 48 00    	call   *0x48f19c
481086:	89 06                	mov    %eax,(%esi)
481088:	85 c0                	test   %eax,%eax
48108a:	74 0f                	je     0x48109b
48108c:	68 28 b2 4b 00       	push   $0x4bb228
481091:	50                   	push   %eax
481092:	ff 15 a0 f1 48 00    	call   *0x48f1a0
481098:	89 46 08             	mov    %eax,0x8(%esi)
48109b:	33 c0                	xor    %eax,%eax
48109d:	39 46 08             	cmp    %eax,0x8(%esi)
4810a0:	5e                   	pop    %esi
4810a1:	0f 95 c0             	setne  %al
4810a4:	c3                   	ret
4810a5:	55                   	push   %ebp
4810a6:	8b ec                	mov    %esp,%ebp
4810a8:	83 ec 14             	sub    $0x14,%esp
4810ab:	8d 4d 10             	lea    0x10(%ebp),%ecx
4810ae:	53                   	push   %ebx
4810af:	56                   	push   %esi
4810b0:	57                   	push   %edi
4810b1:	e8 f9 6e f8 ff       	call   0x407faf
4810b6:	ff 75 14             	push   0x14(%ebp)
4810b9:	ff 75 10             	push   0x10(%ebp)
4810bc:	ff 15 7c f6 48 00    	call   *0x48f67c
4810c2:	8b 7d 0c             	mov    0xc(%ebp),%edi
4810c5:	6a 02                	push   $0x2
4810c7:	5e                   	pop    %esi
4810c8:	83 27 00             	andl   $0x0,(%edi)
4810cb:	39 75 14             	cmp    %esi,0x14(%ebp)
4810ce:	73 03                	jae    0x4810d3