424d7e:	3b fd                	cmp    %ebp,%edi
424d80:	7d 1b                	jge    0x424d9d
424d82:	8b 46 10             	mov    0x10(%esi),%eax
424d85:	83 c0 08             	add    $0x8,%eax
424d88:	f6 00 01             	testb  $0x1,(%eax)
424d8b:	74 08                	je     0x424d95
424d8d:	47                   	inc    %edi
424d8e:	83 c0 08             	add    $0x8,%eax
424d91:	3b fd                	cmp    %ebp,%edi
424d93:	7c f3                	jl     0x424d88
424d95:	3b fd                	cmp    %ebp,%edi
424d97:	0f 8c 95 00 00 00    	jl     0x424e32
424d9d:	8b 46 10             	mov    0x10(%esi),%eax
424da0:	83 c5 20             	add    $0x20,%ebp
424da3:	85 c0                	test   %eax,%eax
424da5:	75 13                	jne    0x424dba
424da7:	8b c5                	mov    %ebp,%eax
424da9:	c1 e0 03             	shl    $0x3,%eax
424dac:	50                   	push   %eax
424dad:	68 02 20 00 00       	push   $0x2002
424db2:	ff 15 00 97 43 00    	call   *0x439700
424db8:	eb 22                	jmp    0x424ddc
424dba:	50                   	push   %eax
424dbb:	ff 15 d0 96 43 00    	call   *0x4396d0
424dc1:	8b d8                	mov    %eax,%ebx
424dc3:	53                   	push   %ebx
424dc4:	ff 15 30 97 43 00    	call   *0x439730
424dca:	8b c5                	mov    %ebp,%eax
424dcc:	68 02 20 00 00       	push   $0x2002
424dd1:	c1 e0 03             	shl    $0x3,%eax
424dd4:	50                   	push   %eax
424dd5:	53                   	push   %ebx
424dd6:	ff 15 c8 96 43 00    	call   *0x4396c8
424ddc:	8b 1d 28 97 43 00    	mov    0x439728,%ebx
424de2:	89 44 24 10          	mov    %eax,0x10(%esp)
424de6:	85 c0                	test   %eax,%eax
424de8:	75 1b                	jne    0x424e05
424dea:	ff 76 10             	push   0x10(%esi)
424ded:	ff 15 d0 96 43 00    	call   *0x4396d0
424df3:	50                   	push   %eax
424df4:	ff d3                	call   *%ebx
424df6:	ff 74 24 14          	push   0x14(%esp)
424dfa:	ff 15 cc 96 43 00    	call   *0x4396cc
424e00:	e8 70 48 ff ff       	call   0x419675
424e05:	ff 74 24 10          	push   0x10(%esp)
424e09:	ff d3                	call   *%ebx
424e0b:	8b d8                	mov    %eax,%ebx
424e0d:	8b 46 04             	mov    0x4(%esi),%eax
424e10:	8b c8                	mov    %eax,%ecx
424e12:	69 c9 ff ff ff 1f    	imul   $0x1fffffff,%ecx,%ecx
424e18:	03 cd                	add    %ebp,%ecx
424e1a:	8d 04 c3             	lea    (%ebx,%eax,8),%eax
424e1d:	c1 e1 03             	shl    $0x3,%ecx
424e20:	51                   	push   %ecx
424e21:	6a 00                	push   $0x0
424e23:	50                   	push   %eax
424e24:	e8 e7 75 fe ff       	call   0x40c410
424e29:	83 c4 0c             	add    $0xc,%esp
424e2c:	89 6e 04             	mov    %ebp,0x4(%esi)
424e2f:	89 5e 10             	mov    %ebx,0x10(%esi)
424e32:	3b 7e 0c             	cmp    0xc(%esi),%edi
424e35:	7c 06                	jl     0x424e3d
424e37:	8d 47 01             	lea    0x1(%edi),%eax
424e3a:	89 46 0c             	mov    %eax,0xc(%esi)
424e3d:	8b 46 10             	mov    0x10(%esi),%eax
424e40:	83 0c f8 01          	orl    $0x1,(%eax,%edi,8)
424e44:	ff 74 24 14          	push   0x14(%esp)
424e48:	8d 04 f8             	lea    (%eax,%edi,8),%eax
424e4b:	8d 47 01             	lea    0x1(%edi),%eax
424e4e:	89 46 08             	mov    %eax,0x8(%esi)
424e51:	ff 15 cc 96 43 00    	call   *0x4396cc
424e57:	8b c7                	mov    %edi,%eax
424e59:	5f                   	pop    %edi
424e5a:	5e                   	pop    %esi
424e5b:	5d                   	pop    %ebp
424e5c:	5b                   	pop    %ebx
424e5d:	59                   	pop    %ecx
424e5e:	59                   	pop    %ecx
424e5f:	c3                   	ret
424e60:	55                   	push   %ebp
424e61:	8b ec                	mov    %esp,%ebp
424e63:	51                   	push   %ecx
424e64:	53                   	push   %ebx
424e65:	56                   	push   %esi
424e66:	57                   	push   %edi
424e67:	8b f9                	mov    %ecx,%edi
424e69:	8d 47 1c             	lea    0x1c(%edi),%eax
424e6c:	50                   	push   %eax
424e6d:	89 45 fc             	mov    %eax,-0x4(%ebp)
424e70:	ff 15 c4 96 43 00    	call   *0x4396c4
424e76:	8b 77 14             	mov    0x14(%edi),%esi
424e79:	8b 5d 08             	mov    0x8(%ebp),%ebx
424e7c:	85 f6                	test   %esi,%esi
424e7e:	74 23                	je     0x424ea3
424e80:	3b 5e 08             	cmp    0x8(%esi),%ebx
424e83:	7d 17                	jge    0x424e9c
424e85:	8b 46 0c             	mov    0xc(%esi),%eax
424e88:	8b 0c 98             	mov    (%eax,%ebx,4),%ecx
424e8b:	85 c9                	test   %ecx,%ecx
424e8d:	74 06                	je     0x424e95
424e8f:	8b 01                	mov    (%ecx),%eax
424e91:	6a 01                	push   $0x1
424e93:	ff 10                	call   *(%eax)
424e95:	8b 46 0c             	mov    0xc(%esi),%eax
424e98:	83 24 98 00          	andl   $0x0,(%eax,%ebx,4)
424e9c:	8b 76 04             	mov    0x4(%esi),%esi
424e9f:	85 f6                	test   %esi,%esi
424ea1:	75 dd                	jne    0x424e80
424ea3:	8b 47 10             	mov    0x10(%edi),%eax
424ea6:	ff 75 fc             	push   -0x4(%ebp)
424ea9:	83 24 d8 fe          	andl   $0xfffffffe,(%eax,%ebx,8)
424ead:	8d 04 d8             	lea    (%eax,%ebx,8),%eax
424eb0:	ff 15 cc 96 43 00    	call   *0x4396cc
424eb6:	5f                   	pop    %edi
424eb7:	5e                   	pop    %esi
424eb8:	5b                   	pop    %ebx
424eb9:	c9                   	leave
424eba:	c2 04 00             	ret    $0x4
424ebd:	53                   	push   %ebx
424ebe:	56                   	push   %esi
424ebf:	57                   	push   %edi
424ec0:	8b f9                	mov    %ecx,%edi
424ec2:	ff 37                	push   (%edi)
424ec4:	ff 15 b8 96 43 00    	call   *0x4396b8
424eca:	8b f0                	mov    %eax,%esi
424ecc:	33 db                	xor    %ebx,%ebx
424ece:	3b f3                	cmp    %ebx,%esi
424ed0:	74 1b                	je     0x424eed
424ed2:	8b 44 24 10          	mov    0x10(%esp),%eax
424ed6:	3b 46 08             	cmp    0x8(%esi),%eax
424ed9:	0f 8c 98 00 00 00    	jl     0x424f77
424edf:	39 5c 24 14          	cmp    %ebx,0x14(%esp)
424ee3:	0f 84 8e 00 00 00    	je     0x424f77
424ee9:	3b f3                	cmp    %ebx,%esi
424eeb:	75 26                	jne    0x424f13
424eed:	6a 10                	push   $0x10
424eef:	e8 e6 fd ff ff       	call   0x424cda
424ef4:	3b c3                	cmp    %ebx,%eax
424ef6:	74 0a                	je     0x424f02
424ef8:	c7 00 0c b5 42 00    	movl   $0x42b50c,(%eax)
424efe:	8b f0                	mov    %eax,%esi
424f00:	eb 02                	jmp    0x424f04
424f02:	33 f6                	xor    %esi,%esi
424f04:	56                   	push   %esi
424f05:	8d 4f 14             	lea    0x14(%edi),%ecx
424f08:	89 5e 08             	mov    %ebx,0x8(%esi)
424f0b:	89 5e 0c             	mov    %ebx,0xc(%esi)
424f0e:	e8 69 fd ff ff       	call   0x424c7c
424f13:	8b 46 0c             	mov    0xc(%esi),%eax
424f16:	3b c3                	cmp    %ebx,%eax
424f18:	75 10                	jne    0x424f2a
424f1a:	8b 47 0c             	mov    0xc(%edi),%eax
424f1d:	c1 e0 02             	shl    $0x2,%eax
424f20:	50                   	push   %eax
424f21:	53                   	push   %ebx
424f22:	ff 15 e8 96 43 00    	call   *0x4396e8
424f28:	eb 10                	jmp    0x424f3a
424f2a:	8b 4f 0c             	mov    0xc(%edi),%ecx
424f2d:	6a 02                	push   $0x2
424f2f:	c1 e1 02             	shl    $0x2,%ecx
424f32:	51                   	push   %ecx
424f33:	50                   	push   %eax
424f34:	ff 15 bc 96 43 00    	call   *0x4396bc
424f3a:	3b c3                	cmp    %ebx,%eax
424f3c:	89 46 0c             	mov    %eax,0xc(%esi)
424f3f:	75 05                	jne    0x424f46
424f41:	e8 2f 47 ff ff       	call   0x419675
424f46:	8b 46 08             	mov    0x8(%esi),%eax
424f49:	8b c8                	mov    %eax,%ecx
424f4b:	69 c9 ff ff ff 3f    	imul   $0x3fffffff,%ecx,%ecx
424f51:	03 4f 0c             	add    0xc(%edi),%ecx
424f54:	c1 e1 02             	shl    $0x2,%ecx
424f57:	51                   	push   %ecx
424f58:	8b 4e 0c             	mov    0xc(%esi),%ecx
424f5b:	53                   	push   %ebx
424f5c:	8d 04 81             	lea    (%ecx,%eax,4),%eax
424f5f:	50                   	push   %eax
424f60:	e8 ab 74 fe ff       	call   0x40c410
424f65:	8b 47 0c             	mov    0xc(%edi),%eax
424f68:	83 c4 0c             	add    $0xc,%esp
424f6b:	89 46 08             	mov    %eax,0x8(%esi)
424f6e:	56                   	push   %esi
424f6f:	ff 37                	push   (%edi)
424f71:	ff 15 c0 96 43 00    	call   *0x4396c0
424f77:	8b 46 0c             	mov    0xc(%esi),%eax
424f7a:	8b 54 24 10          	mov    0x10(%esp),%edx
424f7e:	8b 4c 24 14          	mov    0x14(%esp),%ecx
424f82:	5f                   	pop    %edi
424f83:	5e                   	pop    %esi
424f84:	89 0c 90             	mov    %ecx,(%eax,%edx,4)
424f87:	5b                   	pop    %ebx
424f88:	c2 08 00             	ret    $0x8
424f8b:	56                   	push   %esi
424f8c:	8b f1                	mov    %ecx,%esi
424f8e:	e8 13 00 00 00       	call   0x424fa6
424f93:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
424f98:	74 06                	je     0x424fa0
424f9a:	56                   	push   %esi
424f9b:	e8 58 fd ff ff       	call   0x424cf8
424fa0:	8b c6                	mov    %esi,%eax
424fa2:	5e                   	pop    %esi
424fa3:	c2 04 00             	ret    $0x4
424fa6:	c7 01 94 ad 42 00    	movl   $0x42ad94,(%ecx)
424fac:	c3                   	ret
424fad:	55                   	push   %ebp
424fae:	8b ec                	mov    %esp,%ebp
424fb0:	51                   	push   %ecx
424fb1:	53                   	push   %ebx
424fb2:	56                   	push   %esi
424fb3:	8b 75 08             	mov    0x8(%ebp),%esi
424fb6:	57                   	push   %edi
424fb7:	6a 01                	push   $0x1
424fb9:	8b d9                	mov    %ecx,%ebx
424fbb:	5f                   	pop    %edi
424fbc:	39 7e 08             	cmp    %edi,0x8(%esi)
424fbf:	89 7d fc             	mov    %edi,-0x4(%ebp)
424fc2:	7e 3c                	jle    0x425000
424fc4:	8b 45 0c             	mov    0xc(%ebp),%eax
424fc7:	85 c0                	test   %eax,%eax
424fc9:	74 18                	je     0x424fe3
424fcb:	8b 4b 10             	mov    0x10(%ebx),%ecx
424fce:	39 44 f9 04          	cmp    %eax,0x4(%ecx,%edi,8)
424fd2:	74 0f                	je     0x424fe3
424fd4:	8b 46 0c             	mov    0xc(%esi),%eax
424fd7:	83 3c b8 00          	cmpl   $0x0,(%eax,%edi,4)
424fdb:	74 1d                	je     0x424ffa
424fdd:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
424fe1:	eb 17                	jmp    0x424ffa
424fe3:	8b 46 0c             	mov    0xc(%esi),%eax
424fe6:	8b 0c b8             	mov    (%eax,%edi,4),%ecx
424fe9:	85 c9                	test   %ecx,%ecx
424feb:	74 06                	je     0x424ff3
424fed:	8b 01                	mov    (%ecx),%eax
424fef:	6a 01                	push   $0x1
424ff1:	ff 10                	call   *(%eax)
424ff3:	8b 46 0c             	mov    0xc(%esi),%eax
424ff6:	83 24 b8 00          	andl   $0x0,(%eax,%edi,4)
424ffa:	47                   	inc    %edi
424ffb:	3b 7e 08             	cmp    0x8(%esi),%edi
424ffe:	7c c4                	jl     0x424fc4
425000:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
425004:	74 28                	je     0x42502e
425006:	56                   	push   %esi
425007:	8d 4b 14             	lea    0x14(%ebx),%ecx
42500a:	e8 80 fc ff ff       	call   0x424c8f
42500f:	ff 76 0c             	push   0xc(%esi)
425012:	ff 15 e4 96 43 00    	call   *0x4396e4
425018:	85 f6                	test   %esi,%esi
42501a:	74 08                	je     0x425024
42501c:	8b 06                	mov    (%esi),%eax
42501e:	6a 01                	push   $0x1
425020:	8b ce                	mov    %esi,%ecx
425022:	ff 10                	call   *(%eax)
425024:	6a 00                	push   $0x0
425026:	ff 33                	push   (%ebx)
425028:	ff 15 c0 96 43 00    	call   *0x4396c0
42502e:	5f                   	pop    %edi
42502f:	5e                   	pop    %esi
425030:	5b                   	pop    %ebx
425031:	c9                   	leave
425032:	c2 08 00             	ret    $0x8
425035:	53                   	push   %ebx
425036:	56                   	push   %esi
425037:	8b f1                	mov    %ecx,%esi
425039:	57                   	push   %edi
42503a:	8d 5e 1c             	lea    0x1c(%esi),%ebx
42503d:	53                   	push   %ebx
42503e:	ff 15 c4 96 43 00    	call   *0x4396c4
425044:	83 7c 24 14 00       	cmpl   $0x0,0x14(%esp)
425049:	75 1a                	jne    0x425065
42504b:	ff 36                	push   (%esi)
42504d:	ff 15 b8 96 43 00    	call   *0x4396b8
425053:	85 c0                	test   %eax,%eax
425055:	74 2a                	je     0x425081
425057:	ff 74 24 10          	push   0x10(%esp)
42505b:	8b ce                	mov    %esi,%ecx
42505d:	50                   	push   %eax
42505e:	e8 4a ff ff ff       	call   0x424fad
425063:	eb 1c                	jmp    0x425081
425065:	8b 46 14             	mov    0x14(%esi),%eax
425068:	85 c0                	test   %eax,%eax
42506a:	74 15                	je     0x425081
42506c:	ff 74 24 10          	push   0x10(%esp)
425070:	8b 78 04             	mov    0x4(%eax),%edi
425073:	8b ce                	mov    %esi,%ecx
425075:	50                   	push   %eax
425076:	e8 32 ff ff ff       	call   0x424fad
42507b:	85 ff                	test   %edi,%edi
42507d:	8b c7                	mov    %edi,%eax
42507f:	75 eb                	jne    0x42506c
425081:	53                   	push   %ebx
425082:	ff 15 cc 96 43 00    	call   *0x4396cc
425088:	5f                   	pop    %edi
425089:	5e                   	pop    %esi
42508a:	5b                   	pop    %ebx
42508b:	c2 08 00             	ret    $0x8
42508e:	56                   	push   %esi
42508f:	57                   	push   %edi
425090:	8b f9                	mov    %ecx,%edi
425092:	83 3f 00             	cmpl   $0x0,(%edi)
425095:	75 2d                	jne    0x4250c4
425097:	8b 0d 38 6d 43 00    	mov    0x436d38,%ecx
42509d:	85 c9                	test   %ecx,%ecx
42509f:	75 1c                	jne    0x4250bd
4250a1:	b9 40 6d 43 00       	mov    $0x436d40,%ecx
4250a6:	8b c1                	mov    %ecx,%eax
4250a8:	85 c0                	test   %eax,%eax
4250aa:	74 09                	je     0x4250b5
4250ac:	e8 5b fc ff ff       	call   0x424d0c
4250b1:	8b c8                	mov    %eax,%ecx
4250b3:	eb 02                	jmp    0x4250b7
4250b5:	33 c9                	xor    %ecx,%ecx
4250b7:	89 0d 38 6d 43 00    	mov    %ecx,0x436d38
4250bd:	e8 8c fc ff ff       	call   0x424d4e
4250c2:	89 07                	mov    %eax,(%edi)
4250c4:	a1 38 6d 43 00       	mov    0x436d38,%eax
4250c9:	8b 37                	mov    (%edi),%esi
4250cb:	ff 30                	push   (%eax)
4250cd:	ff 15 b8 96 43 00    	call   *0x4396b8
4250d3:	85 c0                	test   %eax,%eax
4250d5:	74 0d                	je     0x4250e4
4250d7:	3b 70 08             	cmp    0x8(%eax),%esi
4250da:	7d 08                	jge    0x4250e4
4250dc:	8b 40 0c             	mov    0xc(%eax),%eax
4250df:	8b 34 b0             	mov    (%eax,%esi,4),%esi
4250e2:	eb 02                	jmp    0x4250e6
4250e4:	33 f6                	xor    %esi,%esi
4250e6:	85 f6                	test   %esi,%esi
4250e8:	75 14                	jne    0x4250fe
4250ea:	ff 54 24 0c          	call   *0xc(%esp)
4250ee:	8b 0d 38 6d 43 00    	mov    0x436d38,%ecx
4250f4:	8b f0                	mov    %eax,%esi
4250f6:	56                   	push   %esi
4250f7:	ff 37                	push   (%edi)
4250f9:	e8 bf fd ff ff       	call   0x424ebd
4250fe:	8b c6                	mov    %esi,%eax
425100:	5f                   	pop    %edi
425101:	5e                   	pop    %esi
425102:	c2 04 00             	ret    $0x4
425105:	56                   	push   %esi
425106:	8b 31                	mov    (%ecx),%esi
425108:	85 f6                	test   %esi,%esi
42510a:	74 22                	je     0x42512e
42510c:	a1 38 6d 43 00       	mov    0x436d38,%eax
425111:	85 c0                	test   %eax,%eax
425113:	74 19                	je     0x42512e
425115:	ff 30                	push   (%eax)
425117:	ff 15 b8 96 43 00    	call   *0x4396b8
42511d:	85 c0                	test   %eax,%eax
42511f:	74 0d                	je     0x42512e