418d23:	e8 f7 fa 04 00       	call   0x46881f
418d28:	89 7d ec             	mov    %edi,-0x14(%ebp)
418d2b:	57                   	push   %edi
418d2c:	c6 45 fc 0a          	movb   $0xa,-0x4(%ebp)
418d30:	e8 4d fc 04 00       	call   0x468982
418d35:	8b 07                	mov    (%edi),%eax
418d37:	83 c4 04             	add    $0x4,%esp
418d3a:	8b 70 04             	mov    0x4(%eax),%esi
418d3d:	8b ce                	mov    %esi,%ecx
418d3f:	ff 15 d4 e2 49 00    	call   *0x49e2d4
418d45:	8b cf                	mov    %edi,%ecx
418d47:	ff d6                	call   *%esi
418d49:	89 3d 58 9e 4c 00    	mov    %edi,0x4c9e58
418d4f:	e9 58 fe ff ff       	jmp    0x418bac
418d54:	68 d8 14 4b 00       	push   $0x4b14d8
418d59:	e8 1c fa 04 00       	call   0x46877a
418d5e:	cc                   	int3
418d5f:	cc                   	int3
418d60:	55                   	push   %ebp
418d61:	8b ec                	mov    %esp,%ebp
418d63:	6a ff                	push   $0xffffffff
418d65:	68 9d 8e 49 00       	push   $0x498e9d
418d6a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
418d70:	50                   	push   %eax
418d71:	83 ec 44             	sub    $0x44,%esp
418d74:	a1 14 40 4c 00       	mov    0x4c4014,%eax
418d79:	33 c5                	xor    %ebp,%eax
418d7b:	89 45 ec             	mov    %eax,-0x14(%ebp)
418d7e:	53                   	push   %ebx
418d7f:	56                   	push   %esi
418d80:	57                   	push   %edi
418d81:	50                   	push   %eax
418d82:	8d 45 f4             	lea    -0xc(%ebp),%eax
418d85:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
418d8b:	89 65 f0             	mov    %esp,-0x10(%ebp)
418d8e:	8b d9                	mov    %ecx,%ebx
418d90:	8b 45 08             	mov    0x8(%ebp),%eax
418d93:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
418d9a:	89 45 e0             	mov    %eax,-0x20(%ebp)
418d9d:	8b 03                	mov    (%ebx),%eax
418d9f:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
418da2:	89 5d b8             	mov    %ebx,-0x48(%ebp)
418da5:	8b 40 04             	mov    0x4(%eax),%eax
418da8:	8b 7c 18 38          	mov    0x38(%eax,%ebx,1),%edi
418dac:	85 ff                	test   %edi,%edi
418dae:	74 11                	je     0x418dc1
418db0:	8b 07                	mov    (%edi),%eax
418db2:	8b 70 04             	mov    0x4(%eax),%esi
418db5:	8b ce                	mov    %esi,%ecx
418db7:	ff 15 d4 e2 49 00    	call   *0x49e2d4
418dbd:	8b cf                	mov    %edi,%ecx
418dbf:	ff d6                	call   *%esi
418dc1:	51                   	push   %ecx
418dc2:	8b cb                	mov    %ebx,%ecx
418dc4:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
418dcb:	e8 90 33 00 00       	call   0x41c160
418dd0:	88 45 bc             	mov    %al,-0x44(%ebp)
418dd3:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
418dda:	84 c0                	test   %al,%al
418ddc:	0f 84 d7 00 00 00    	je     0x418eb9
418de2:	8b 03                	mov    (%ebx),%eax
418de4:	8b 40 04             	mov    0x4(%eax),%eax
418de7:	8b 44 18 30          	mov    0x30(%eax,%ebx,1),%eax
418deb:	8b 78 04             	mov    0x4(%eax),%edi
418dee:	89 7d c4             	mov    %edi,-0x3c(%ebp)
418df1:	8b 07                	mov    (%edi),%eax
418df3:	8b 70 04             	mov    0x4(%eax),%esi
418df6:	8b ce                	mov    %esi,%ecx
418df8:	ff 15 d4 e2 49 00    	call   *0x49e2d4
418dfe:	8b cf                	mov    %edi,%ecx
418e00:	ff d6                	call   *%esi
418e02:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
418e06:	33 c9                	xor    %ecx,%ecx
418e08:	8b 03                	mov    (%ebx),%eax
418e0a:	c6 45 d4 01          	movb   $0x1,-0x2c(%ebp)
418e0e:	66 89 4d d6          	mov    %cx,-0x2a(%ebp)
418e12:	8b 40 04             	mov    0x4(%eax),%eax
418e15:	03 c3                	add    %ebx,%eax
418e17:	89 45 dc             	mov    %eax,-0x24(%ebp)
418e1a:	8b 40 38             	mov    0x38(%eax),%eax
418e1d:	85 c0                	test   %eax,%eax
418e1f:	89 45 d8             	mov    %eax,-0x28(%ebp)
418e22:	0f 94 45 cc          	sete   -0x34(%ebp)
418e26:	33 c0                	xor    %eax,%eax
418e28:	66 89 45 ce          	mov    %ax,-0x32(%ebp)
418e2c:	8d 45 c0             	lea    -0x40(%ebp),%eax
418e2f:	50                   	push   %eax
418e30:	e8 cb 45 00 00       	call   0x41d400
418e35:	83 c4 04             	add    $0x4,%esp
418e38:	8b f8                	mov    %eax,%edi
418e3a:	8d 45 e8             	lea    -0x18(%ebp),%eax
418e3d:	ff 75 e0             	push   -0x20(%ebp)
418e40:	8b 37                	mov    (%edi),%esi
418e42:	50                   	push   %eax
418e43:	ff 75 dc             	push   -0x24(%ebp)
418e46:	8d 45 b0             	lea    -0x50(%ebp),%eax
418e49:	ff 75 d4             	push   -0x2c(%ebp)
418e4c:	8b 76 20             	mov    0x20(%esi),%esi
418e4f:	8b ce                	mov    %esi,%ecx
418e51:	6a 00                	push   $0x0
418e53:	ff 75 cc             	push   -0x34(%ebp)
418e56:	ff 75 d8             	push   -0x28(%ebp)
418e59:	50                   	push   %eax
418e5a:	ff 15 d4 e2 49 00    	call   *0x49e2d4
418e60:	8b cf                	mov    %edi,%ecx
418e62:	ff d6                	call   *%esi
418e64:	8b 7d c4             	mov    -0x3c(%ebp),%edi
418e67:	85 ff                	test   %edi,%edi
418e69:	74 47                	je     0x418eb2
418e6b:	8b 07                	mov    (%edi),%eax
418e6d:	8b 70 08             	mov    0x8(%eax),%esi
418e70:	8b ce                	mov    %esi,%ecx
418e72:	ff 15 d4 e2 49 00    	call   *0x49e2d4
418e78:	8b cf                	mov    %edi,%ecx
418e7a:	ff d6                	call   *%esi
418e7c:	8b f8                	mov    %eax,%edi
418e7e:	85 ff                	test   %edi,%edi
418e80:	74 30                	je     0x418eb2
418e82:	8b 07                	mov    (%edi),%eax
418e84:	6a 01                	push   $0x1
418e86:	8b 30                	mov    (%eax),%esi
418e88:	8b ce                	mov    %esi,%ecx
418e8a:	ff 15 d4 e2 49 00    	call   *0x49e2d4
418e90:	8b cf                	mov    %edi,%ecx
418e92:	ff d6                	call   *%esi
418e94:	eb 1c                	jmp    0x418eb2
418e96:	8b 55 e4             	mov    -0x1c(%ebp),%edx
418e99:	6a 01                	push   $0x1
418e9b:	6a 04                	push   $0x4
418e9d:	8b 02                	mov    (%edx),%eax
418e9f:	8b 48 04             	mov    0x4(%eax),%ecx
418ea2:	03 ca                	add    %edx,%ecx
418ea4:	e8 97 83 ff ff       	call   0x411240
418ea9:	b8 af 8e 41 00       	mov    $0x418eaf,%eax
418eae:	c3                   	ret
418eaf:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
418eb2:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
418eb9:	8b 03                	mov    (%ebx),%eax
418ebb:	33 f6                	xor    %esi,%esi
418ebd:	6a 00                	push   $0x0
418ebf:	8b 48 04             	mov    0x4(%eax),%ecx
418ec2:	b8 04 00 00 00       	mov    $0x4,%eax
418ec7:	03 cb                	add    %ebx,%ecx
418ec9:	8b 51 0c             	mov    0xc(%ecx),%edx
418ecc:	0b 55 e8             	or     -0x18(%ebp),%edx
418ecf:	39 71 38             	cmp    %esi,0x38(%ecx)
418ed2:	0f 45 c6             	cmovne %esi,%eax
418ed5:	0b c2                	or     %edx,%eax
418ed7:	50                   	push   %eax
418ed8:	e8 93 2c ff ff       	call   0x40bb70
418edd:	c7 45 fc 05 00 00 00 	movl   $0x5,-0x4(%ebp)
418ee4:	8b 03                	mov    (%ebx),%eax
418ee6:	8b 40 04             	mov    0x4(%eax),%eax
418ee9:	8b 7c 18 38          	mov    0x38(%eax,%ebx,1),%edi
418eed:	85 ff                	test   %edi,%edi
418eef:	74 11                	je     0x418f02
418ef1:	8b 17                	mov    (%edi),%edx
418ef3:	8b 72 08             	mov    0x8(%edx),%esi
418ef6:	8b ce                	mov    %esi,%ecx
418ef8:	ff 15 d4 e2 49 00    	call   *0x49e2d4
418efe:	8b cf                	mov    %edi,%ecx
418f00:	ff d6                	call   *%esi
418f02:	8b c3                	mov    %ebx,%eax
418f04:	8b 4d f4             	mov    -0xc(%ebp),%ecx
418f07:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
418f0e:	59                   	pop    %ecx
418f0f:	5f                   	pop    %edi
418f10:	5e                   	pop    %esi
418f11:	5b                   	pop    %ebx
418f12:	8b 4d ec             	mov    -0x14(%ebp),%ecx
418f15:	33 cd                	xor    %ebp,%ecx
418f17:	e8 ae 0a 05 00       	call   0x4699ca
418f1c:	8b e5                	mov    %ebp,%esp
418f1e:	5d                   	pop    %ebp
418f1f:	c2 04 00             	ret    $0x4
418f22:	cc                   	int3
418f23:	cc                   	int3
418f24:	cc                   	int3
418f25:	cc                   	int3
418f26:	cc                   	int3
418f27:	cc                   	int3
418f28:	cc                   	int3
418f29:	cc                   	int3
418f2a:	cc                   	int3
418f2b:	cc                   	int3
418f2c:	cc                   	int3
418f2d:	cc                   	int3
418f2e:	cc                   	int3
418f2f:	cc                   	int3
418f30:	55                   	push   %ebp
418f31:	8b ec                	mov    %esp,%ebp
418f33:	6a ff                	push   $0xffffffff
418f35:	68 f5 8a 49 00       	push   $0x498af5
418f3a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
418f40:	50                   	push   %eax
418f41:	83 ec 18             	sub    $0x18,%esp
418f44:	a1 14 40 4c 00       	mov    0x4c4014,%eax
418f49:	33 c5                	xor    %ebp,%eax
418f4b:	89 45 f0             	mov    %eax,-0x10(%ebp)
418f4e:	53                   	push   %ebx
418f4f:	56                   	push   %esi
418f50:	57                   	push   %edi
418f51:	50                   	push   %eax
418f52:	8d 45 f4             	lea    -0xc(%ebp),%eax
418f55:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
418f5b:	8b 7d 08             	mov    0x8(%ebp),%edi
418f5e:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
418f61:	6a 00                	push   $0x0
418f63:	89 7d e8             	mov    %edi,-0x18(%ebp)
418f66:	e8 5c f8 04 00       	call   0x4687c7
418f6b:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
418f72:	8b 35 b4 9e 4c 00    	mov    0x4c9eb4,%esi
418f78:	8b 1d 50 9e 4c 00    	mov    0x4c9e50,%ebx
418f7e:	89 5d e0             	mov    %ebx,-0x20(%ebp)
418f81:	85 f6                	test   %esi,%esi
418f83:	75 2f                	jne    0x418fb4
418f85:	56                   	push   %esi
418f86:	8d 4d ec             	lea    -0x14(%ebp),%ecx
418f89:	e8 39 f8 04 00       	call   0x4687c7
418f8e:	39 35 b4 9e 4c 00    	cmp    %esi,0x4c9eb4
418f94:	75 10                	jne    0x418fa6
418f96:	a1 68 7e 4c 00       	mov    0x4c7e68,%eax
418f9b:	40                   	inc    %eax
418f9c:	a3 68 7e 4c 00       	mov    %eax,0x4c7e68
418fa1:	a3 b4 9e 4c 00       	mov    %eax,0x4c9eb4
418fa6:	8d 4d ec             	lea    -0x14(%ebp),%ecx
418fa9:	e8 71 f8 04 00       	call   0x46881f
418fae:	8b 35 b4 9e 4c 00    	mov    0x4c9eb4,%esi
418fb4:	8b 57 04             	mov    0x4(%edi),%edx
418fb7:	8d 0c b5 00 00 00 00 	lea    0x0(,%esi,4),%ecx
418fbe:	89 4d ec             	mov    %ecx,-0x14(%ebp)
418fc1:	3b 72 0c             	cmp    0xc(%edx),%esi
418fc4:	73 0c                	jae    0x418fd2
418fc6:	8b 42 08             	mov    0x8(%edx),%eax
418fc9:	8b 3c 01             	mov    (%ecx,%eax,1),%edi
418fcc:	85 ff                	test   %edi,%edi
418fce:	75 6a                	jne    0x41903a
418fd0:	eb 05                	jmp    0x418fd7
418fd2:	33 ff                	xor    %edi,%edi
418fd4:	89 4d ec             	mov    %ecx,-0x14(%ebp)
418fd7:	80 7a 14 00          	cmpb   $0x0,0x14(%edx)
418fdb:	74 13                	je     0x418ff0
418fdd:	e8 cc f9 04 00       	call   0x4689ae
418fe2:	3b 70 0c             	cmp    0xc(%eax),%esi
418fe5:	73 0d                	jae    0x418ff4
418fe7:	8b 40 08             	mov    0x8(%eax),%eax
418fea:	8b 7d ec             	mov    -0x14(%ebp),%edi
418fed:	8b 3c 07             	mov    (%edi,%eax,1),%edi
418ff0:	85 ff                	test   %edi,%edi
418ff2:	75 46                	jne    0x41903a
418ff4:	85 db                	test   %ebx,%ebx
418ff6:	74 04                	je     0x418ffc
418ff8:	8b fb                	mov    %ebx,%edi
418ffa:	eb 3e                	jmp    0x41903a
418ffc:	ff 75 e8             	push   -0x18(%ebp)
418fff:	8d 45 e0             	lea    -0x20(%ebp),%eax
419002:	50                   	push   %eax
419003:	e8 58 16 00 00       	call   0x41a660
419008:	83 c4 08             	add    $0x8,%esp
41900b:	83 f8 ff             	cmp    $0xffffffff,%eax
41900e:	74 50                	je     0x419060
419010:	8b 7d e0             	mov    -0x20(%ebp),%edi
419013:	89 7d e8             	mov    %edi,-0x18(%ebp)
419016:	57                   	push   %edi
419017:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
41901b:	e8 62 f9 04 00       	call   0x468982
419020:	8b 07                	mov    (%edi),%eax
419022:	83 c4 04             	add    $0x4,%esp
419025:	8b 70 04             	mov    0x4(%eax),%esi
419028:	8b ce                	mov    %esi,%ecx
41902a:	ff 15 d4 e2 49 00    	call   *0x49e2d4
419030:	8b cf                	mov    %edi,%ecx
419032:	ff d6                	call   *%esi
419034:	89 3d 50 9e 4c 00    	mov    %edi,0x4c9e50
41903a:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
41903d:	e8 dd f7 04 00       	call   0x46881f
419042:	8b c7                	mov    %edi,%eax
419044:	8b 4d f4             	mov    -0xc(%ebp),%ecx
419047:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41904e:	59                   	pop    %ecx
41904f:	5f                   	pop    %edi
419050:	5e                   	pop    %esi
419051:	5b                   	pop    %ebx
419052:	8b 4d f0             	mov    -0x10(%ebp),%ecx
419055:	33 cd                	xor    %ebp,%ecx
419057:	e8 6e 09 05 00       	call   0x4699ca
41905c:	8b e5                	mov    %ebp,%esp
41905e:	5d                   	pop    %ebp
41905f:	c3                   	ret
419060:	e8 3b 28 ff ff       	call   0x40b8a0
419065:	cc                   	int3
419066:	cc                   	int3
419067:	cc                   	int3
419068:	cc                   	int3
419069:	cc                   	int3
41906a:	cc                   	int3
41906b:	cc                   	int3
41906c:	cc                   	int3
41906d:	cc                   	int3
41906e:	cc                   	int3
41906f:	cc                   	int3
419070:	55                   	push   %ebp
419071:	8b ec                	mov    %esp,%ebp
419073:	83 ec 10             	sub    $0x10,%esp
419076:	8b 55 08             	mov    0x8(%ebp),%edx
419079:	53                   	push   %ebx
41907a:	8b d9                	mov    %ecx,%ebx
41907c:	b9 fe ff ff 7f       	mov    $0x7ffffffe,%ecx
419081:	56                   	push   %esi
419082:	57                   	push   %edi
419083:	8b c1                	mov    %ecx,%eax
419085:	8b 7b 10             	mov    0x10(%ebx),%edi
419088:	2b c7                	sub    %edi,%eax
41908a:	89 7d f4             	mov    %edi,-0xc(%ebp)
41908d:	3b c2                	cmp    %edx,%eax
41908f:	0f 82 5d 01 00 00    	jb     0x4191f2
419095:	8d 04 17             	lea    (%edi,%edx,1),%eax
419098:	8b 53 14             	mov    0x14(%ebx),%edx
41909b:	8b f0                	mov    %eax,%esi
41909d:	89 45 fc             	mov    %eax,-0x4(%ebp)
4190a0:	83 ce 07             	or     $0x7,%esi
4190a3:	89 55 f8             	mov    %edx,-0x8(%ebp)
4190a6:	3b f1                	cmp    %ecx,%esi
4190a8:	76 04                	jbe    0x4190ae
4190aa:	8b f1                	mov    %ecx,%esi
4190ac:	eb 18                	jmp    0x4190c6
4190ae:	8b c2                	mov    %edx,%eax
4190b0:	d1 e8                	shr    $1,%eax
4190b2:	2b c8                	sub    %eax,%ecx
4190b4:	3b d1                	cmp    %ecx,%edx
4190b6:	76 07                	jbe    0x4190bf
4190b8:	be fe ff ff 7f       	mov    $0x7ffffffe,%esi
4190bd:	eb 07                	jmp    0x4190c6
4190bf:	03 c2                	add    %edx,%eax
4190c1:	3b f0                	cmp    %eax,%esi
4190c3:	0f 42 f0             	cmovb  %eax,%esi
4190c6:	33 c9                	xor    %ecx,%ecx
4190c8:	8b c6                	mov    %esi,%eax
4190ca:	83 c0 01             	add    $0x1,%eax
4190cd:	0f 92 c1             	setb   %cl
4190d0:	f7 d9                	neg    %ecx
4190d2:	0b c8                	or     %eax,%ecx
4190d4:	51                   	push   %ecx
4190d5:	8b cb                	mov    %ebx,%ecx
4190d7:	e8 34 90 fe ff       	call   0x402110
4190dc:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4190df:	89 4b 10             	mov    %ecx,0x10(%ebx)
4190e2:	8b 4d 10             	mov    0x10(%ebp),%ecx
4190e5:	03 c9                	add    %ecx,%ecx
4190e7:	89 45 f0             	mov    %eax,-0x10(%ebp)