404cbf:	89 d8                	mov    %ebx,%eax
404cc1:	03 5c 2e 02          	add    0x2(%esi,%ebp,1),%ebx
404cc5:	89 f2                	mov    %esi,%edx
404cc7:	e8 00 ff ff ff       	call   0x404bcc
404ccc:	4f                   	dec    %edi
404ccd:	7f f0                	jg     0x404cbf
404ccf:	5d                   	pop    %ebp
404cd0:	eb 2b                	jmp    0x404cfd
404cd2:	89 d8                	mov    %ebx,%eax
404cd4:	83 c3 04             	add    $0x4,%ebx
404cd7:	e8 98 10 00 00       	call   0x405d74
404cdc:	4f                   	dec    %edi
404cdd:	7f f3                	jg     0x404cd2
404cdf:	eb 1c                	jmp    0x404cfd
404ce1:	89 d8                	mov    %ebx,%eax
404ce3:	89 f2                	mov    %esi,%edx
404ce5:	83 c3 04             	add    $0x4,%ebx
404ce8:	e8 cf 09 00 00       	call   0x4056bc
404ced:	4f                   	dec    %edi
404cee:	7f f1                	jg     0x404ce1
404cf0:	eb 0b                	jmp    0x404cfd
404cf2:	5f                   	pop    %edi
404cf3:	5e                   	pop    %esi
404cf4:	5b                   	pop    %ebx
404cf5:	58                   	pop    %eax
404cf6:	b0 02                	mov    $0x2,%al
404cf8:	e9 d7 db ff ff       	jmp    0x4028d4
404cfd:	5f                   	pop    %edi
404cfe:	5e                   	pop    %esi
404cff:	5b                   	pop    %ebx
404d00:	58                   	pop    %eax
404d01:	c3                   	ret
404d02:	8b c0                	mov    %eax,%eax
404d04:	b9 01 00 00 00       	mov    $0x1,%ecx
404d09:	e9 0a ff ff ff       	jmp    0x404c18
404d0e:	c3                   	ret
404d0f:	90                   	nop
404d10:	83 3d 14 d0 48 00 00 	cmpl   $0x0,0x48d014
404d17:	74 07                	je     0x404d20
404d19:	ff 15 14 d0 48 00    	call   *0x48d014
404d1f:	c3                   	ret
404d20:	b0 10                	mov    $0x10,%al
404d22:	e8 ad db ff ff       	call   0x4028d4
404d27:	c3                   	ret
404d28:	53                   	push   %ebx
404d29:	56                   	push   %esi
404d2a:	57                   	push   %edi
404d2b:	55                   	push   %ebp
404d2c:	89 c3                	mov    %eax,%ebx
404d2e:	89 d6                	mov    %edx,%esi
404d30:	31 c0                	xor    %eax,%eax
404d32:	8a 41 01             	mov    0x1(%ecx),%al
404d35:	8d 7c 08 0a          	lea    0xa(%eax,%ecx,1),%edi
404d39:	8b 6f fc             	mov    -0x4(%edi),%ebp
404d3c:	31 c0                	xor    %eax,%eax
404d3e:	8b 4f f8             	mov    -0x8(%edi),%ecx
404d41:	51                   	push   %ecx
404d42:	8b 4f 04             	mov    0x4(%edi),%ecx
404d45:	29 c1                	sub    %eax,%ecx
404d47:	7e 0b                	jle    0x404d54
404d49:	89 c2                	mov    %eax,%edx
404d4b:	01 f0                	add    %esi,%eax
404d4d:	01 da                	add    %ebx,%edx
404d4f:	e8 20 dc ff ff       	call   0x402974
404d54:	8b 47 04             	mov    0x4(%edi),%eax
404d57:	8b 17                	mov    (%edi),%edx
404d59:	8b 12                	mov    (%edx),%edx
404d5b:	8a 0a                	mov    (%edx),%cl
404d5d:	80 f9 0a             	cmp    $0xa,%cl
404d60:	74 31                	je     0x404d93
404d62:	80 f9 0b             	cmp    $0xb,%cl
404d65:	74 3d                	je     0x404da4
404d67:	80 f9 0c             	cmp    $0xc,%cl
404d6a:	74 49                	je     0x404db5
404d6c:	80 f9 0d             	cmp    $0xd,%cl
404d6f:	74 55                	je     0x404dc6
404d71:	80 f9 0e             	cmp    $0xe,%cl
404d74:	74 70                	je     0x404de6
404d76:	80 f9 0f             	cmp    $0xf,%cl
404d79:	0f 84 80 00 00 00    	je     0x404dff
404d7f:	80 f9 11             	cmp    $0x11,%cl
404d82:	0f 84 88 00 00 00    	je     0x404e10
404d88:	b0 02                	mov    $0x2,%al
404d8a:	5d                   	pop    %ebp
404d8b:	5f                   	pop    %edi
404d8c:	5e                   	pop    %esi
404d8d:	5b                   	pop    %ebx
404d8e:	e9 41 db ff ff       	jmp    0x4028d4
404d93:	8b 14 30             	mov    (%eax,%esi,1),%edx
404d96:	01 d8                	add    %ebx,%eax
404d98:	e8 1b f4 ff ff       	call   0x4041b8
404d9d:	b8 04 00 00 00       	mov    $0x4,%eax
404da2:	eb 7d                	jmp    0x404e21
404da4:	8b 14 30             	mov    (%eax,%esi,1),%edx
404da7:	01 d8                	add    %ebx,%eax
404da9:	e8 fe fa ff ff       	call   0x4048ac
404dae:	b8 04 00 00 00       	mov    $0x4,%eax
404db3:	eb 6c                	jmp    0x404e21
404db5:	8d 14 30             	lea    (%eax,%esi,1),%edx
404db8:	01 d8                	add    %ebx,%eax
404dba:	e8 51 ff ff ff       	call   0x404d10
404dbf:	b8 10 00 00 00       	mov    $0x10,%eax
404dc4:	eb 5b                	jmp    0x404e21
404dc6:	31 c9                	xor    %ecx,%ecx
404dc8:	8a 4a 01             	mov    0x1(%edx),%cl
404dcb:	ff 74 11 02          	push   0x2(%ecx,%edx,1)
404dcf:	ff 74 11 06          	push   0x6(%ecx,%edx,1)
404dd3:	8b 4c 11 0a          	mov    0xa(%ecx,%edx,1),%ecx
404dd7:	8b 09                	mov    (%ecx),%ecx
404dd9:	8d 14 30             	lea    (%eax,%esi,1),%edx
404ddc:	01 d8                	add    %ebx,%eax
404dde:	e8 61 00 00 00       	call   0x404e44
404de3:	58                   	pop    %eax
404de4:	eb 3b                	jmp    0x404e21
404de6:	31 c9                	xor    %ecx,%ecx
404de8:	8a 4a 01             	mov    0x1(%edx),%cl
404deb:	8b 4c 11 02          	mov    0x2(%ecx,%edx,1),%ecx
404def:	51                   	push   %ecx
404df0:	89 d1                	mov    %edx,%ecx
404df2:	8d 14 30             	lea    (%eax,%esi,1),%edx
404df5:	01 d8                	add    %ebx,%eax
404df7:	e8 2c ff ff ff       	call   0x404d28
404dfc:	58                   	pop    %eax
404dfd:	eb 22                	jmp    0x404e21
404dff:	8b 14 30             	mov    (%eax,%esi,1),%edx
404e02:	01 d8                	add    %ebx,%eax
404e04:	e8 83 0f 00 00       	call   0x405d8c
404e09:	b8 04 00 00 00       	mov    $0x4,%eax
404e0e:	eb 11                	jmp    0x404e21
404e10:	89 d1                	mov    %edx,%ecx
404e12:	8b 14 30             	mov    (%eax,%esi,1),%edx
404e15:	01 d8                	add    %ebx,%eax
404e17:	e8 dc 08 00 00       	call   0x4056f8
404e1c:	b8 04 00 00 00       	mov    $0x4,%eax
404e21:	03 47 04             	add    0x4(%edi),%eax
404e24:	83 c7 08             	add    $0x8,%edi
404e27:	4d                   	dec    %ebp
404e28:	0f 85 14 ff ff ff    	jne    0x404d42
404e2e:	59                   	pop    %ecx
404e2f:	29 c1                	sub    %eax,%ecx
404e31:	7e 0a                	jle    0x404e3d
404e33:	8d 14 18             	lea    (%eax,%ebx,1),%edx
404e36:	01 f0                	add    %esi,%eax
404e38:	e8 37 db ff ff       	call   0x402974
404e3d:	5d                   	pop    %ebp
404e3e:	5f                   	pop    %edi
404e3f:	5e                   	pop    %esi
404e40:	5b                   	pop    %ebx
404e41:	c3                   	ret
404e42:	8b c0                	mov    %eax,%eax
404e44:	53                   	push   %ebx
404e45:	56                   	push   %esi
404e46:	57                   	push   %edi
404e47:	55                   	push   %ebp
404e48:	89 c3                	mov    %eax,%ebx
404e4a:	89 d6                	mov    %edx,%esi
404e4c:	89 cf                	mov    %ecx,%edi
404e4e:	8b 6c 24 14          	mov    0x14(%esp),%ebp
404e52:	8a 0f                	mov    (%edi),%cl
404e54:	80 f9 0a             	cmp    $0xa,%cl
404e57:	74 31                	je     0x404e8a
404e59:	80 f9 0b             	cmp    $0xb,%cl
404e5c:	74 43                	je     0x404ea1
404e5e:	80 f9 0c             	cmp    $0xc,%cl
404e61:	74 52                	je     0x404eb5
404e63:	80 f9 0d             	cmp    $0xd,%cl
404e66:	74 61                	je     0x404ec9
404e68:	80 f9 0e             	cmp    $0xe,%cl
404e6b:	74 7d                	je     0x404eea
404e6d:	80 f9 0f             	cmp    $0xf,%cl
404e70:	0f 84 91 00 00 00    	je     0x404f07
404e76:	80 f9 11             	cmp    $0x11,%cl
404e79:	0f 84 9c 00 00 00    	je     0x404f1b
404e7f:	b0 02                	mov    $0x2,%al
404e81:	5d                   	pop    %ebp
404e82:	5f                   	pop    %edi
404e83:	5e                   	pop    %esi
404e84:	5b                   	pop    %ebx
404e85:	e9 4a da ff ff       	jmp    0x4028d4
404e8a:	89 d8                	mov    %ebx,%eax
404e8c:	8b 16                	mov    (%esi),%edx
404e8e:	e8 25 f3 ff ff       	call   0x4041b8
404e93:	83 c3 04             	add    $0x4,%ebx
404e96:	83 c6 04             	add    $0x4,%esi
404e99:	4d                   	dec    %ebp
404e9a:	75 ee                	jne    0x404e8a
404e9c:	e9 8e 00 00 00       	jmp    0x404f2f
404ea1:	89 d8                	mov    %ebx,%eax
404ea3:	8b 16                	mov    (%esi),%edx
404ea5:	e8 02 fa ff ff       	call   0x4048ac
404eaa:	83 c3 04             	add    $0x4,%ebx
404ead:	83 c6 04             	add    $0x4,%esi
404eb0:	4d                   	dec    %ebp
404eb1:	75 ee                	jne    0x404ea1
404eb3:	eb 7a                	jmp    0x404f2f
404eb5:	89 d8                	mov    %ebx,%eax
404eb7:	89 f2                	mov    %esi,%edx
404eb9:	e8 52 fe ff ff       	call   0x404d10
404ebe:	83 c3 10             	add    $0x10,%ebx
404ec1:	83 c6 10             	add    $0x10,%esi
404ec4:	4d                   	dec    %ebp
404ec5:	75 ee                	jne    0x404eb5
404ec7:	eb 66                	jmp    0x404f2f
404ec9:	31 c9                	xor    %ecx,%ecx
404ecb:	8a 4f 01             	mov    0x1(%edi),%cl
404ece:	8d 7c 39 02          	lea    0x2(%ecx,%edi,1),%edi
404ed2:	89 d8                	mov    %ebx,%eax
404ed4:	89 f2                	mov    %esi,%edx
404ed6:	8b 4f 08             	mov    0x8(%edi),%ecx
404ed9:	ff 77 04             	push   0x4(%edi)
404edc:	e8 63 ff ff ff       	call   0x404e44
404ee1:	03 1f                	add    (%edi),%ebx
404ee3:	03 37                	add    (%edi),%esi
404ee5:	4d                   	dec    %ebp
404ee6:	75 ea                	jne    0x404ed2
404ee8:	eb 45                	jmp    0x404f2f
404eea:	89 d8                	mov    %ebx,%eax
404eec:	89 f2                	mov    %esi,%edx
404eee:	89 f9                	mov    %edi,%ecx
404ef0:	e8 33 fe ff ff       	call   0x404d28
404ef5:	31 c0                	xor    %eax,%eax
404ef7:	8a 47 01             	mov    0x1(%edi),%al
404efa:	03 5c 38 02          	add    0x2(%eax,%edi,1),%ebx
404efe:	03 74 38 02          	add    0x2(%eax,%edi,1),%esi
404f02:	4d                   	dec    %ebp
404f03:	75 e5                	jne    0x404eea
404f05:	eb 28                	jmp    0x404f2f
404f07:	89 d8                	mov    %ebx,%eax
404f09:	8b 16                	mov    (%esi),%edx
404f0b:	e8 7c 0e 00 00       	call   0x405d8c
404f10:	83 c3 04             	add    $0x4,%ebx
404f13:	83 c6 04             	add    $0x4,%esi
404f16:	4d                   	dec    %ebp
404f17:	75 ee                	jne    0x404f07
404f19:	eb 14                	jmp    0x404f2f
404f1b:	89 d8                	mov    %ebx,%eax
404f1d:	8b 16                	mov    (%esi),%edx
404f1f:	89 f9                	mov    %edi,%ecx
404f21:	e8 d2 07 00 00       	call   0x4056f8
404f26:	83 c3 04             	add    $0x4,%ebx
404f29:	83 c6 04             	add    $0x4,%esi
404f2c:	4d                   	dec    %ebp
404f2d:	75 ec                	jne    0x404f1b
404f2f:	5d                   	pop    %ebp
404f30:	5f                   	pop    %edi
404f31:	5e                   	pop    %esi
404f32:	5b                   	pop    %ebx
404f33:	c2 04 00             	ret    $0x4
404f36:	c3                   	ret
404f37:	90                   	nop
404f38:	52                   	push   %edx
404f39:	e8 3a d8 ff ff       	call   0x402778
404f3e:	5a                   	pop    %edx
404f3f:	85 c0                	test   %eax,%eax
404f41:	74 07                	je     0x404f4a
404f43:	50                   	push   %eax
404f44:	e8 77 fc ff ff       	call   0x404bc0
404f49:	58                   	pop    %eax
404f4a:	c3                   	ret
404f4b:	90                   	nop
404f4c:	50                   	push   %eax
404f4d:	e8 b2 fd ff ff       	call   0x404d04
404f52:	58                   	pop    %eax
404f53:	e8 40 d8 ff ff       	call   0x402798
404f58:	c3                   	ret
404f59:	8d 40 00             	lea    0x0(%eax),%eax
404f5c:	91                   	xchg   %eax,%ecx
404f5d:	87 ca                	xchg   %ecx,%edx
404f5f:	e8 5c f3 ff ff       	call   0x4042c0
404f64:	c3                   	ret
404f65:	8d 40 00             	lea    0x0(%eax),%eax
404f68:	53                   	push   %ebx
404f69:	56                   	push   %esi
404f6a:	51                   	push   %ecx
404f6b:	8b f2                	mov    %edx,%esi
404f6d:	8b d8                	mov    %eax,%ebx
404f6f:	89 1c 24             	mov    %ebx,(%esp)
404f72:	8b 04 24             	mov    (%esp),%eax
404f75:	e8 62 fa ff ff       	call   0x4049dc
404f7a:	8b d0                	mov    %eax,%edx
404f7c:	8b ce                	mov    %esi,%ecx
404f7e:	8b c3                	mov    %ebx,%eax
404f80:	e8 d7 ff ff ff       	call   0x404f5c
404f85:	5a                   	pop    %edx
404f86:	5e                   	pop    %esi
404f87:	5b                   	pop    %ebx
404f88:	c3                   	ret
404f89:	8d 40 00             	lea    0x0(%eax),%eax
404f8c:	53                   	push   %ebx
404f8d:	51                   	push   %ecx
404f8e:	8b d8                	mov    %eax,%ebx
404f90:	33 c0                	xor    %eax,%eax
404f92:	89 04 24             	mov    %eax,(%esp)
404f95:	8b c3                	mov    %ebx,%eax
404f97:	e8 88 f4 ff ff       	call   0x404424
404f9c:	8b c8                	mov    %eax,%ecx
404f9e:	8b c4                	mov    %esp,%eax
404fa0:	8b d3                	mov    %ebx,%edx
404fa2:	e8 29 f9 ff ff       	call   0x4048d0
404fa7:	8b 04 24             	mov    (%esp),%eax
404faa:	5a                   	pop    %edx
404fab:	5b                   	pop    %ebx
404fac:	c3                   	ret
404fad:	8d 40 00             	lea    0x0(%eax),%eax
404fb0:	b0 11                	mov    $0x11,%al
404fb2:	e9 1d d9 ff ff       	jmp    0x4028d4
404fb7:	c3                   	ret
404fb8:	52                   	push   %edx
404fb9:	50                   	push   %eax
404fba:	8b 44 24 10          	mov    0x10(%esp),%eax
404fbe:	f7 24 24             	mull   (%esp)
404fc1:	89 c1                	mov    %eax,%ecx
404fc3:	8b 44 24 04          	mov    0x4(%esp),%eax
404fc7:	f7 64 24 0c          	mull   0xc(%esp)
404fcb:	01 c1                	add    %eax,%ecx
404fcd:	8b 04 24             	mov    (%esp),%eax
404fd0:	f7 64 24 0c          	mull   0xc(%esp)
404fd4:	01 ca                	add    %ecx,%edx
404fd6:	59                   	pop    %ecx
404fd7:	59                   	pop    %ecx
404fd8:	c2 08 00             	ret    $0x8
404fdb:	c3                   	ret
404fdc:	55                   	push   %ebp
404fdd:	53                   	push   %ebx
404fde:	56                   	push   %esi
404fdf:	57                   	push   %edi
404fe0:	31 ff                	xor    %edi,%edi
404fe2:	8b 5c 24 14          	mov    0x14(%esp),%ebx
404fe6:	8b 4c 24 18          	mov    0x18(%esp),%ecx
404fea:	09 c9                	or     %ecx,%ecx
404fec:	75 08                	jne    0x404ff6
404fee:	09 d2                	or     %edx,%edx
404ff0:	74 5c                	je     0x40504e
404ff2:	09 db                	or     %ebx,%ebx
404ff4:	74 58                	je     0x40504e
404ff6:	09 d2                	or     %edx,%edx
404ff8:	79 0a                	jns    0x405004
404ffa:	f7 da                	neg    %edx
404ffc:	f7 d8                	neg    %eax
404ffe:	83 da 00             	sbb    $0x0,%edx
405001:	83 cf 01             	or     $0x1,%edi
405004:	09 c9                	or     %ecx,%ecx
405006:	79 0a                	jns    0x405012
405008:	f7 d9                	neg    %ecx
40500a:	f7 db                	neg    %ebx
40500c:	83 d9 00             	sbb    $0x0,%ecx
40500f:	83 f7 01             	xor    $0x1,%edi
405012:	89 cd                	mov    %ecx,%ebp
405014:	b9 40 00 00 00       	mov    $0x40,%ecx
405019:	57                   	push   %edi