404b8e:	b9 18 d7 40 00       	mov    $0x40d718,%ecx
404b93:	eb 09                	jmp    0x404b9e
404b95:	3b c6                	cmp    %esi,%eax
404b97:	74 0b                	je     0x404ba4
404b99:	8d 48 38             	lea    0x38(%eax),%ecx
404b9c:	8b 01                	mov    (%ecx),%eax
404b9e:	85 c0                	test   %eax,%eax
404ba0:	75 f3                	jne    0x404b95
404ba2:	eb 05                	jmp    0x404ba9
404ba4:	8b 46 38             	mov    0x38(%esi),%eax
404ba7:	89 01                	mov    %eax,(%ecx)
404ba9:	8d 4d f8             	lea    -0x8(%ebp),%ecx
404bac:	e8 54 ff ff ff       	call   0x404b05
404bb1:	8d 4e 0c             	lea    0xc(%esi),%ecx
404bb4:	e8 93 00 00 00       	call   0x404c4c
404bb9:	8b ce                	mov    %esi,%ecx
404bbb:	e8 7e 03 00 00       	call   0x404f3e
404bc0:	5e                   	pop    %esi
404bc1:	c9                   	leave
404bc2:	c3                   	ret
404bc3:	6a 74                	push   $0x74
404bc5:	b8 b0 ad 40 00       	mov    $0x40adb0,%eax
404bca:	e8 11 60 00 00       	call   0x40abe0
404bcf:	8b f9                	mov    %ecx,%edi
404bd1:	68 f0 d5 40 00       	push   $0x40d5f0
404bd6:	8d 4d ec             	lea    -0x14(%ebp),%ecx
404bd9:	e8 56 ff ff ff       	call   0x404b34
404bde:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
404be2:	8b 35 18 d7 40 00    	mov    0x40d718,%esi
404be8:	eb 24                	jmp    0x404c0e
404bea:	33 c9                	xor    %ecx,%ecx
404bec:	8b 44 8e 1c          	mov    0x1c(%esi,%ecx,4),%eax
404bf0:	3b 04 8f             	cmp    (%edi,%ecx,4),%eax
404bf3:	75 16                	jne    0x404c0b
404bf5:	41                   	inc    %ecx
404bf6:	83 f9 04             	cmp    $0x4,%ecx
404bf9:	75 f1                	jne    0x404bec
404bfb:	8d 4d ec             	lea    -0x14(%ebp),%ecx
404bfe:	e8 02 ff ff ff       	call   0x404b05
404c03:	8b c6                	mov    %esi,%eax
404c05:	e8 b0 5f 00 00       	call   0x40abba
404c0a:	c3                   	ret
404c0b:	8b 76 38             	mov    0x38(%esi),%esi
404c0e:	85 f6                	test   %esi,%esi
404c10:	75 d8                	jne    0x404bea
404c12:	a1 00 d0 40 00       	mov    0x40d000,%eax
404c17:	3d 00 d0 40 00       	cmp    $0x40d000,%eax
404c1c:	74 12                	je     0x404c30
404c1e:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
404c22:	72 0c                	jb     0x404c30
404c24:	57                   	push   %edi
404c25:	ff 70 14             	push   0x14(%eax)
404c28:	ff 70 10             	push   0x10(%eax)
404c2b:	e8 ad fe ff ff       	call   0x404add
404c30:	68 03 01 01 80       	push   $0x80010103
404c35:	8d 4d 80             	lea    -0x80(%ebp),%ecx
404c38:	e8 31 f2 ff ff       	call   0x403e6e
404c3d:	68 a4 c6 40 00       	push   $0x40c6a4
404c42:	8d 45 80             	lea    -0x80(%ebp),%eax
404c45:	50                   	push   %eax
404c46:	e8 ef 5e 00 00       	call   0x40ab3a
404c4b:	cc                   	int3
404c4c:	8b ff                	mov    %edi,%edi
404c4e:	55                   	push   %ebp
404c4f:	8b ec                	mov    %esp,%ebp
404c51:	51                   	push   %ecx
404c52:	51                   	push   %ecx
404c53:	56                   	push   %esi
404c54:	8b f1                	mov    %ecx,%esi
404c56:	57                   	push   %edi
404c57:	89 75 f8             	mov    %esi,-0x8(%ebp)
404c5a:	8b 3e                	mov    (%esi),%edi
404c5c:	85 ff                	test   %edi,%edi
404c5e:	74 37                	je     0x404c97
404c60:	8b 46 04             	mov    0x4(%esi),%eax
404c63:	53                   	push   %ebx
404c64:	8b df                	mov    %edi,%ebx
404c66:	3b f8                	cmp    %eax,%edi
404c68:	74 13                	je     0x404c7d
404c6a:	8b f0                	mov    %eax,%esi
404c6c:	8b cb                	mov    %ebx,%ecx
404c6e:	e8 55 00 00 00       	call   0x404cc8
404c73:	83 c3 08             	add    $0x8,%ebx
404c76:	3b de                	cmp    %esi,%ebx
404c78:	75 f2                	jne    0x404c6c
404c7a:	8b 75 f8             	mov    -0x8(%ebp),%esi
404c7d:	8b 56 08             	mov    0x8(%esi),%edx
404c80:	8b cf                	mov    %edi,%ecx
404c82:	2b d7                	sub    %edi,%edx
404c84:	83 e2 f8             	and    $0xfffffff8,%edx
404c87:	e8 0f 00 00 00       	call   0x404c9b
404c8c:	33 c0                	xor    %eax,%eax
404c8e:	89 06                	mov    %eax,(%esi)
404c90:	89 46 04             	mov    %eax,0x4(%esi)
404c93:	89 46 08             	mov    %eax,0x8(%esi)
404c96:	5b                   	pop    %ebx
404c97:	5f                   	pop    %edi
404c98:	5e                   	pop    %esi
404c99:	c9                   	leave
404c9a:	c3                   	ret
404c9b:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
404ca1:	72 14                	jb     0x404cb7
404ca3:	56                   	push   %esi
404ca4:	8b 71 fc             	mov    -0x4(%ecx),%esi
404ca7:	83 c2 23             	add    $0x23,%edx
404caa:	2b ce                	sub    %esi,%ecx
404cac:	8d 41 fc             	lea    -0x4(%ecx),%eax
404caf:	83 f8 1f             	cmp    $0x1f,%eax
404cb2:	77 0d                	ja     0x404cc1
404cb4:	8b ce                	mov    %esi,%ecx
404cb6:	5e                   	pop    %esi
404cb7:	52                   	push   %edx
404cb8:	51                   	push   %ecx
404cb9:	e8 81 55 00 00       	call   0x40a23f
404cbe:	59                   	pop    %ecx
404cbf:	59                   	pop    %ecx
404cc0:	c3                   	ret
404cc1:	ff 15 44 e1 40 00    	call   *0x40e144
404cc7:	cc                   	int3
404cc8:	8b ff                	mov    %edi,%edi
404cca:	57                   	push   %edi
404ccb:	8b 79 04             	mov    0x4(%ecx),%edi
404cce:	85 ff                	test   %edi,%edi
404cd0:	74 1d                	je     0x404cef
404cd2:	83 c8 ff             	or     $0xffffffff,%eax
404cd5:	f0 0f c1 47 08       	lock xadd %eax,0x8(%edi)
404cda:	75 13                	jne    0x404cef
404cdc:	8b 07                	mov    (%edi),%eax
404cde:	56                   	push   %esi
404cdf:	8b 70 04             	mov    0x4(%eax),%esi
404ce2:	8b ce                	mov    %esi,%ecx
404ce4:	ff 15 f0 e1 40 00    	call   *0x40e1f0
404cea:	8b cf                	mov    %edi,%ecx
404cec:	ff d6                	call   *%esi
404cee:	5e                   	pop    %esi
404cef:	5f                   	pop    %edi
404cf0:	c3                   	ret
404cf1:	8b ff                	mov    %edi,%edi
404cf3:	55                   	push   %ebp
404cf4:	8b ec                	mov    %esp,%ebp
404cf6:	83 e4 f8             	and    $0xfffffff8,%esp
404cf9:	81 ec f8 00 00 00    	sub    $0xf8,%esp
404cff:	a1 50 d1 40 00       	mov    0x40d150,%eax
404d04:	33 c4                	xor    %esp,%eax
404d06:	89 84 24 f4 00 00 00 	mov    %eax,0xf4(%esp)
404d0d:	56                   	push   %esi
404d0e:	57                   	push   %edi
404d0f:	ff 15 ac e0 40 00    	call   *0x40e0ac
404d15:	50                   	push   %eax
404d16:	8d 84 24 bc 00 00 00 	lea    0xbc(%esp),%eax
404d1d:	68 6c 18 40 00       	push   $0x40186c
404d22:	50                   	push   %eax
404d23:	e8 4e 02 00 00       	call   0x404f76
404d28:	83 c4 0c             	add    $0xc,%esp
404d2b:	c7 84 24 90 00 00 00 	movl   $0x401170,0x90(%esp)
404d32:	70 11 40 00
404d36:	33 c9                	xor    %ecx,%ecx
404d38:	c7 84 24 9c 00 00 00 	movl   $0x29,0x9c(%esp)
404d3f:	29 00 00 00
404d43:	8d 84 24 b8 00 00 00 	lea    0xb8(%esp),%eax
404d4a:	89 8c 24 8c 00 00 00 	mov    %ecx,0x8c(%esp)
404d51:	33 ff                	xor    %edi,%edi
404d53:	89 84 24 80 00 00 00 	mov    %eax,0x80(%esp)
404d5a:	68 1c d7 40 00       	push   $0x40d71c
404d5f:	51                   	push   %ecx
404d60:	51                   	push   %ecx
404d61:	6a ff                	push   $0xffffffff
404d63:	47                   	inc    %edi
404d64:	89 8c 24 a4 00 00 00 	mov    %ecx,0xa4(%esp)
404d6b:	57                   	push   %edi
404d6c:	8d 84 24 8c 00 00 00 	lea    0x8c(%esp),%eax
404d73:	89 8c 24 ac 00 00 00 	mov    %ecx,0xac(%esp)
404d7a:	50                   	push   %eax
404d7b:	57                   	push   %edi
404d7c:	8d 84 24 a8 00 00 00 	lea    0xa8(%esp),%eax
404d83:	c7 84 24 bc 00 00 00 	movl   $0x4d2,0xbc(%esp)
404d8a:	d2 04 00 00
404d8e:	50                   	push   %eax
404d8f:	89 8c 24 c4 00 00 00 	mov    %ecx,0xc4(%esp)
404d96:	89 8c 24 c8 00 00 00 	mov    %ecx,0xc8(%esp)
404d9d:	89 8c 24 cc 00 00 00 	mov    %ecx,0xcc(%esp)
404da4:	c7 84 24 d0 00 00 00 	movl   $0x401890,0xd0(%esp)
404dab:	90 18 40 00
404daf:	c7 84 24 d4 00 00 00 	movl   $0x4018e8,0xd4(%esp)
404db6:	e8 18 40 00
404dba:	89 8c 24 98 00 00 00 	mov    %ecx,0x98(%esp)
404dc1:	c7 84 24 9c 00 00 00 	movl   $0x4018c4,0x9c(%esp)
404dc8:	c4 18 40 00
404dcc:	89 8c 24 a4 00 00 00 	mov    %ecx,0xa4(%esp)
404dd3:	c7 84 24 a8 00 00 00 	movl   $0xa,0xa8(%esp)
404dda:	0a 00 00 00
404dde:	ff 15 0c e0 40 00    	call   *0x40e00c
404de4:	8b f0                	mov    %eax,%esi
404de6:	85 f6                	test   %esi,%esi
404de8:	75 77                	jne    0x404e61
404dea:	ff 35 1c d7 40 00    	push   0x40d71c
404df0:	89 3d 20 d7 40 00    	mov    %edi,0x40d720
404df6:	ff 15 08 e0 40 00    	call   *0x40e008
404dfc:	8b f0                	mov    %eax,%esi
404dfe:	85 f6                	test   %esi,%esi
404e00:	74 41                	je     0x404e43
404e02:	a1 00 d0 40 00       	mov    0x40d000,%eax
404e07:	3d 00 d0 40 00       	cmp    $0x40d000,%eax
404e0c:	74 1a                	je     0x404e28
404e0e:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
404e12:	72 14                	jb     0x404e28
404e14:	56                   	push   %esi
404e15:	ff 70 14             	push   0x14(%eax)
404e18:	ba d4 18 40 00       	mov    $0x4018d4,%edx
404e1d:	ff 70 10             	push   0x10(%eax)
404e20:	6a 0b                	push   $0xb
404e22:	59                   	pop    %ecx
404e23:	e8 83 f1 ff ff       	call   0x403fab
404e28:	81 ce 00 00 01 80    	or     $0x80010000,%esi
404e2e:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
404e32:	56                   	push   %esi
404e33:	e8 36 f0 ff ff       	call   0x403e6e
404e38:	68 a4 c6 40 00       	push   $0x40c6a4
404e3d:	8d 44 24 10          	lea    0x10(%esp),%eax
404e41:	eb 5f                	jmp    0x404ea2
404e43:	8b 8c 24 fc 00 00 00 	mov    0xfc(%esp),%ecx
404e4a:	5f                   	pop    %edi
404e4b:	5e                   	pop    %esi
404e4c:	33 cc                	xor    %esp,%ecx
404e4e:	c7 05 20 d7 40 00 02 	movl   $0x2,0x40d720
404e55:	00 00 00
404e58:	e8 03 50 00 00       	call   0x409e60
404e5d:	8b e5                	mov    %ebp,%esp
404e5f:	5d                   	pop    %ebp
404e60:	c3                   	ret
404e61:	8b 15 00 d0 40 00    	mov    0x40d000,%edx
404e67:	81 fa 00 d0 40 00    	cmp    $0x40d000,%edx
404e6d:	74 1a                	je     0x404e89
404e6f:	80 7a 19 02          	cmpb   $0x2,0x19(%edx)
404e73:	72 14                	jb     0x404e89
404e75:	56                   	push   %esi
404e76:	ff 72 14             	push   0x14(%edx)
404e79:	ff 72 10             	push   0x10(%edx)
404e7c:	ba d4 18 40 00       	mov    $0x4018d4,%edx
404e81:	6a 0a                	push   $0xa
404e83:	59                   	pop    %ecx
404e84:	e8 22 f1 ff ff       	call   0x403fab
404e89:	81 ce 00 00 01 80    	or     $0x80010000,%esi
404e8f:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
404e93:	56                   	push   %esi
404e94:	e8 d5 ef ff ff       	call   0x403e6e
404e99:	68 a4 c6 40 00       	push   $0x40c6a4
404e9e:	8d 44 24 10          	lea    0x10(%esp),%eax
404ea2:	50                   	push   %eax
404ea3:	e8 92 5c 00 00       	call   0x40ab3a
404ea8:	cc                   	int3
404ea9:	a1 20 d7 40 00       	mov    0x40d720,%eax
404eae:	83 e8 01             	sub    $0x1,%eax
404eb1:	74 77                	je     0x404f2a
404eb3:	83 e8 01             	sub    $0x1,%eax
404eb6:	0f 85 81 00 00 00    	jne    0x404f3d
404ebc:	56                   	push   %esi
404ebd:	57                   	push   %edi
404ebe:	33 f6                	xor    %esi,%esi
404ec0:	6a 00                	push   $0x0
404ec2:	ff 35 1c d7 40 00    	push   0x40d71c
404ec8:	ff 15 00 e0 40 00    	call   *0x40e000
404ece:	8b f8                	mov    %eax,%edi
404ed0:	81 ff bb 06 00 00    	cmp    $0x6bb,%edi
404ed6:	75 16                	jne    0x404eee
404ed8:	83 fe 01             	cmp    $0x1,%esi
404edb:	75 0b                	jne    0x404ee8
404edd:	68 f4 01 00 00       	push   $0x1f4
404ee2:	ff 15 04 e1 40 00    	call   *0x40e104
404ee8:	46                   	inc    %esi
404ee9:	83 fe 03             	cmp    $0x3,%esi
404eec:	7c d2                	jl     0x404ec0
404eee:	85 ff                	test   %edi,%edi
404ef0:	74 2c                	je     0x404f1e
404ef2:	a1 00 d0 40 00       	mov    0x40d000,%eax
404ef7:	3d 00 d0 40 00       	cmp    $0x40d000,%eax
404efc:	74 20                	je     0x404f1e
404efe:	80 78 19 02          	cmpb   $0x2,0x19(%eax)
404f02:	72 1a                	jb     0x404f1e
404f04:	81 cf 00 00 01 80    	or     $0x80010000,%edi
404f0a:	ba d4 18 40 00       	mov    $0x4018d4,%edx
404f0f:	57                   	push   %edi
404f10:	ff 70 14             	push   0x14(%eax)
404f13:	ff 70 10             	push   0x10(%eax)
404f16:	6a 0c                	push   $0xc
404f18:	59                   	pop    %ecx
404f19:	e8 8d f0 ff ff       	call   0x403fab
404f1e:	5f                   	pop    %edi
404f1f:	c7 05 20 d7 40 00 01 	movl   $0x1,0x40d720
404f26:	00 00 00
404f29:	5e                   	pop    %esi
404f2a:	ff 35 1c d7 40 00    	push   0x40d71c
404f30:	ff 15 04 e0 40 00    	call   *0x40e004
404f36:	83 25 20 d7 40 00 00 	andl   $0x0,0x40d720
404f3d:	c3                   	ret
404f3e:	8b ff                	mov    %edi,%edi
404f40:	55                   	push   %ebp
404f41:	8b ec                	mov    %esp,%ebp
404f43:	51                   	push   %ecx
404f44:	51                   	push   %ecx
404f45:	56                   	push   %esi
404f46:	8b f1                	mov    %ecx,%esi
404f48:	8d 4d f8             	lea    -0x8(%ebp),%ecx
404f4b:	68 f8 d5 40 00       	push   $0x40d5f8
404f50:	e8 df fb ff ff       	call   0x404b34
404f55:	80 3e 00             	cmpb   $0x0,(%esi)
404f58:	74 11                	je     0x404f6b
404f5a:	83 2d 24 d7 40 00 01 	subl   $0x1,0x40d724
404f61:	c6 06 00             	movb   $0x0,(%esi)
404f64:	75 05                	jne    0x404f6b
404f66:	e8 3e ff ff ff       	call   0x404ea9
404f6b:	8d 4d f8             	lea    -0x8(%ebp),%ecx
404f6e:	e8 92 fb ff ff       	call   0x404b05
404f73:	5e                   	pop    %esi
404f74:	c9                   	leave
404f75:	c3                   	ret
404f76:	8b ff                	mov    %edi,%edi
404f78:	55                   	push   %ebp
404f79:	8b ec                	mov    %esp,%ebp
404f7b:	8b 45 08             	mov    0x8(%ebp),%eax
404f7e:	8d 4d 10             	lea    0x10(%ebp),%ecx
404f81:	51                   	push   %ecx
404f82:	ff 75 0c             	push   0xc(%ebp)
404f85:	6a 20                	push   $0x20
404f87:	50                   	push   %eax
404f88:	e8 a9 59 00 00       	call   0x40a936
404f8d:	83 c4 10             	add    $0x10,%esp
404f90:	5d                   	pop    %ebp
404f91:	c3                   	ret
404f92:	8b ff                	mov    %edi,%edi
404f94:	55                   	push   %ebp
404f95:	8b ec                	mov    %esp,%ebp
404f97:	8b 45 14             	mov    0x14(%ebp),%eax
404f9a:	8d 4d 18             	lea    0x18(%ebp),%ecx
404f9d:	6a 00                	push   $0x0
404f9f:	6a 04                	push   $0x4
404fa1:	51                   	push   %ecx
404fa2:	6a 10                	push   $0x10
404fa4:	50                   	push   %eax
404fa5:	6a 04                	push   $0x4
404fa7:	8d 45 10             	lea    0x10(%ebp),%eax
404faa:	50                   	push   %eax
404fab:	6a 17                	push   $0x17
404fad:	68 3c 1e 40 00       	push   $0x401e3c
404fb2:	6a 2b                	push   $0x2b
404fb4:	ff 75 0c             	push   0xc(%ebp)
404fb7:	ff 75 08             	push   0x8(%ebp)
404fba:	ff 15 dc e1 40 00    	call   *0x40e1dc
404fc0:	83 c4 30             	add    $0x30,%esp
404fc3:	5d                   	pop    %ebp