453eb6:	8b 55 e4             	mov    -0x1c(%ebp),%edx
453eb9:	8b 45 ec             	mov    -0x14(%ebp),%eax
453ebc:	e8 9b a3 fc ff       	call   0x41e25c
453ec1:	a1 f0 dd 46 00       	mov    0x46ddf0,%eax
453ec6:	8b 00                	mov    (%eax),%eax
453ec8:	8b 90 88 00 00 00    	mov    0x88(%eax),%edx
453ece:	8b 45 ec             	mov    -0x14(%ebp),%eax
453ed1:	e8 26 a2 fc ff       	call   0x41e0fc
453ed6:	8b 45 d8             	mov    -0x28(%ebp),%eax
453ed9:	83 c0 10             	add    $0x10,%eax
453edc:	50                   	push   %eax
453edd:	8b 45 d8             	mov    -0x28(%ebp),%eax
453ee0:	8d 48 0c             	lea    0xc(%eax),%ecx
453ee3:	8b 55 ec             	mov    -0x14(%ebp),%edx
453ee6:	8b 45 f4             	mov    -0xc(%ebp),%eax
453ee9:	8b 18                	mov    (%eax),%ebx
453eeb:	ff 53 38             	call   *0x38(%ebx)
453eee:	33 c0                	xor    %eax,%eax
453ef0:	5a                   	pop    %edx
453ef1:	59                   	pop    %ecx
453ef2:	59                   	pop    %ecx
453ef3:	64 89 10             	mov    %edx,%fs:(%eax)
453ef6:	68 1a 3f 45 00       	push   $0x453f1a
453efb:	33 d2                	xor    %edx,%edx
453efd:	8b 45 ec             	mov    -0x14(%ebp),%eax
453f00:	e8 57 a3 fc ff       	call   0x41e25c
453f05:	8b 45 e8             	mov    -0x18(%ebp),%eax
453f08:	50                   	push   %eax
453f09:	8b 45 e4             	mov    -0x1c(%ebp),%eax
453f0c:	50                   	push   %eax
453f0d:	e8 5a 24 fb ff       	call   0x40636c
453f12:	c3                   	ret
453f13:	e9 84 fa fa ff       	jmp    0x40399c
453f18:	eb e1                	jmp    0x453efb
453f1a:	33 c0                	xor    %eax,%eax
453f1c:	5a                   	pop    %edx
453f1d:	59                   	pop    %ecx
453f1e:	59                   	pop    %ecx
453f1f:	64 89 10             	mov    %edx,%fs:(%eax)
453f22:	68 37 3f 45 00       	push   $0x453f37
453f27:	8b 45 ec             	mov    -0x14(%ebp),%eax
453f2a:	e8 19 f3 fa ff       	call   0x403248
453f2f:	c3                   	ret
453f30:	e9 67 fa fa ff       	jmp    0x40399c
453f35:	eb f0                	jmp    0x453f27
453f37:	33 c0                	xor    %eax,%eax
453f39:	5a                   	pop    %edx
453f3a:	59                   	pop    %ecx
453f3b:	59                   	pop    %ecx
453f3c:	64 89 10             	mov    %edx,%fs:(%eax)
453f3f:	68 c9 3f 45 00       	push   $0x453fc9
453f44:	8b 45 e4             	mov    -0x1c(%ebp),%eax
453f47:	50                   	push   %eax
453f48:	8b 45 fc             	mov    -0x4(%ebp),%eax
453f4b:	8b 40 10             	mov    0x10(%eax),%eax
453f4e:	50                   	push   %eax
453f4f:	e8 98 28 fb ff       	call   0x4067ec
453f54:	c3                   	ret
453f55:	e9 42 fa fa ff       	jmp    0x40399c
453f5a:	eb e8                	jmp    0x453f44
453f5c:	47                   	inc    %edi
453f5d:	4b                   	dec    %ebx
453f5e:	0f 85 da fe ff ff    	jne    0x453e3e
453f64:	eb 49                	jmp    0x453faf
453f66:	8b 45 fc             	mov    -0x4(%ebp),%eax
453f69:	8b 58 08             	mov    0x8(%eax),%ebx
453f6c:	4b                   	dec    %ebx
453f6d:	85 db                	test   %ebx,%ebx
453f6f:	7c 3e                	jl     0x453faf
453f71:	43                   	inc    %ebx
453f72:	33 ff                	xor    %edi,%edi
453f74:	8b d7                	mov    %edi,%edx
453f76:	8b 45 fc             	mov    -0x4(%ebp),%eax
453f79:	e8 fe fd fb ff       	call   0x413d7c
453f7e:	89 45 d4             	mov    %eax,-0x2c(%ebp)
453f81:	8b 45 d4             	mov    -0x2c(%ebp),%eax
453f84:	8b 10                	mov    (%eax),%edx
453f86:	ff 52 34             	call   *0x34(%edx)
453f89:	3b 46 08             	cmp    0x8(%esi),%eax
453f8c:	74 11                	je     0x453f9f
453f8e:	8b 56 08             	mov    0x8(%esi),%edx
453f91:	b1 01                	mov    $0x1,%cl
453f93:	8b 45 d4             	mov    -0x2c(%ebp),%eax
453f96:	e8 01 ee ff ff       	call   0x452d9c
453f9b:	85 c0                	test   %eax,%eax
453f9d:	74 0c                	je     0x453fab
453f9f:	8b d6                	mov    %esi,%edx
453fa1:	8b 45 d4             	mov    -0x2c(%ebp),%eax
453fa4:	e8 f3 f6 ff ff       	call   0x45369c
453fa9:	eb 1e                	jmp    0x453fc9
453fab:	47                   	inc    %edi
453fac:	4b                   	dec    %ebx
453fad:	75 c5                	jne    0x453f74
453faf:	8b 46 08             	mov    0x8(%esi),%eax
453fb2:	50                   	push   %eax
453fb3:	8b 46 04             	mov    0x4(%esi),%eax
453fb6:	50                   	push   %eax
453fb7:	8b 06                	mov    (%esi),%eax
453fb9:	50                   	push   %eax
453fba:	8b 45 fc             	mov    -0x4(%ebp),%eax
453fbd:	8b 40 10             	mov    0x10(%eax),%eax
453fc0:	50                   	push   %eax
453fc1:	e8 c6 24 fb ff       	call   0x40648c
453fc6:	89 46 0c             	mov    %eax,0xc(%esi)
453fc9:	33 c0                	xor    %eax,%eax
453fcb:	5a                   	pop    %edx
453fcc:	59                   	pop    %ecx
453fcd:	59                   	pop    %ecx
453fce:	64 89 10             	mov    %edx,%fs:(%eax)
453fd1:	68 e6 3f 45 00       	push   $0x453fe6
453fd6:	8d 45 d0             	lea    -0x30(%ebp),%eax
453fd9:	e8 ba ff fa ff       	call   0x403f98
453fde:	c3                   	ret
453fdf:	e9 b8 f9 fa ff       	jmp    0x40399c
453fe4:	eb f0                	jmp    0x453fd6
453fe6:	5f                   	pop    %edi
453fe7:	5e                   	pop    %esi
453fe8:	5b                   	pop    %ebx
453fe9:	8b e5                	mov    %ebp,%esp
453feb:	5d                   	pop    %ebp
453fec:	c3                   	ret
453fed:	8d 40 00             	lea    0x0(%eax),%eax
453ff0:	53                   	push   %ebx
453ff1:	56                   	push   %esi
453ff2:	8b f2                	mov    %edx,%esi
453ff4:	8b d8                	mov    %eax,%ebx
453ff6:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
453ffa:	75 0e                	jne    0x45400a
453ffc:	53                   	push   %ebx
453ffd:	68 60 3a 45 00       	push   $0x453a60
454002:	e8 21 70 fc ff       	call   0x41b028
454007:	89 43 10             	mov    %eax,0x10(%ebx)
45400a:	8b d6                	mov    %esi,%edx
45400c:	8b c3                	mov    %ebx,%eax
45400e:	e8 0d fc fb ff       	call   0x413c20
454013:	5e                   	pop    %esi
454014:	5b                   	pop    %ebx
454015:	c3                   	ret
454016:	8b c0                	mov    %eax,%eax
454018:	53                   	push   %ebx
454019:	8b d8                	mov    %eax,%ebx
45401b:	8b c3                	mov    %ebx,%eax
45401d:	e8 f6 fe fb ff       	call   0x413f18
454022:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
454026:	75 08                	jne    0x454030
454028:	8b 43 10             	mov    0x10(%ebx),%eax
45402b:	e8 ac 70 fc ff       	call   0x41b0dc
454030:	5b                   	pop    %ebx
454031:	c3                   	ret
454032:	8b c0                	mov    %eax,%eax
454034:	53                   	push   %ebx
454035:	56                   	push   %esi
454036:	84 d2                	test   %dl,%dl
454038:	74 08                	je     0x454042
45403a:	83 c4 f0             	add    $0xfffffff0,%esp
45403d:	e8 2a f5 fa ff       	call   0x40356c
454042:	8b da                	mov    %edx,%ebx
454044:	8b f0                	mov    %eax,%esi
454046:	33 d2                	xor    %edx,%edx
454048:	8b c6                	mov    %esi,%eax
45404a:	e8 65 eb ff ff       	call   0x452bb4
45404f:	c7 46 58 ff ff ff ff 	movl   $0xffffffff,0x58(%esi)
454056:	c7 46 5c ff ff ff ff 	movl   $0xffffffff,0x5c(%esi)
45405d:	8b 46 34             	mov    0x34(%esi),%eax
454060:	89 b0 8c 00 00 00    	mov    %esi,0x8c(%eax)
454066:	8b 16                	mov    (%esi),%edx
454068:	8b 52 3c             	mov    0x3c(%edx),%edx
45406b:	89 90 88 00 00 00    	mov    %edx,0x88(%eax)
454071:	a1 9c dc 46 00       	mov    0x46dc9c,%eax
454076:	8b 00                	mov    (%eax),%eax
454078:	8b 40 30             	mov    0x30(%eax),%eax
45407b:	89 46 38             	mov    %eax,0x38(%esi)
45407e:	c6 46 61 01          	movb   $0x1,0x61(%esi)
454082:	8b d6                	mov    %esi,%edx
454084:	a1 a8 eb 46 00       	mov    0x46eba8,%eax
454089:	e8 62 ff ff ff       	call   0x453ff0
45408e:	8b c6                	mov    %esi,%eax
454090:	84 db                	test   %bl,%bl
454092:	74 0f                	je     0x4540a3
454094:	e8 2b f5 fa ff       	call   0x4035c4
454099:	64 8f 05 00 00 00 00 	pop    %fs:0x0
4540a0:	83 c4 0c             	add    $0xc,%esp
4540a3:	8b c6                	mov    %esi,%eax
4540a5:	5e                   	pop    %esi
4540a6:	5b                   	pop    %ebx
4540a7:	c3                   	ret
4540a8:	53                   	push   %ebx
4540a9:	56                   	push   %esi
4540aa:	e8 25 f5 fa ff       	call   0x4035d4
4540af:	8b da                	mov    %edx,%ebx
4540b1:	8b f0                	mov    %eax,%esi
4540b3:	8b d6                	mov    %esi,%edx
4540b5:	a1 a8 eb 46 00       	mov    0x46eba8,%eax
4540ba:	e8 59 ff ff ff       	call   0x454018
4540bf:	8b d3                	mov    %ebx,%edx
4540c1:	80 e2 fc             	and    $0xfc,%dl
4540c4:	8b c6                	mov    %esi,%eax
4540c6:	e8 85 eb ff ff       	call   0x452c50
4540cb:	84 db                	test   %bl,%bl
4540cd:	7e 07                	jle    0x4540d6
4540cf:	8b c6                	mov    %esi,%eax
4540d1:	e8 e6 f4 fa ff       	call   0x4035bc
4540d6:	5e                   	pop    %esi
4540d7:	5b                   	pop    %ebx
4540d8:	c3                   	ret
4540d9:	8d 40 00             	lea    0x0(%eax),%eax
4540dc:	53                   	push   %ebx
4540dd:	66 83 78 72 00       	cmpw   $0x0,0x72(%eax)
4540e2:	74 08                	je     0x4540ec
4540e4:	8b d8                	mov    %eax,%ebx
4540e6:	8b 43 74             	mov    0x74(%ebx),%eax
4540e9:	ff 53 70             	call   *0x70(%ebx)
4540ec:	5b                   	pop    %ebx
4540ed:	c3                   	ret
4540ee:	8b c0                	mov    %eax,%eax
4540f0:	8b 40 34             	mov    0x34(%eax),%eax
4540f3:	8b 40 54             	mov    0x54(%eax),%eax
4540f6:	c3                   	ret
4540f7:	90                   	nop
4540f8:	8b 40 34             	mov    0x34(%eax),%eax
4540fb:	89 50 54             	mov    %edx,0x54(%eax)
4540fe:	c3                   	ret
4540ff:	90                   	nop
454100:	53                   	push   %ebx
454101:	8b d8                	mov    %eax,%ebx
454103:	a1 1c de 46 00       	mov    0x46de1c,%eax
454108:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
45410c:	74 37                	je     0x454145
45410e:	80 7b 41 00          	cmpb   $0x0,0x41(%ebx)
454112:	74 31                	je     0x454145
454114:	8d 43 58             	lea    0x58(%ebx),%eax
454117:	e8 30 ae ff ff       	call   0x44ef4c
45411c:	85 c0                	test   %eax,%eax
45411e:	74 10                	je     0x454130
454120:	8a 50 5f             	mov    0x5f(%eax),%dl
454123:	8b c3                	mov    %ebx,%eax
454125:	e8 92 f7 ff ff       	call   0x4538bc
45412a:	c6 43 41 01          	movb   $0x1,0x41(%ebx)
45412e:	eb 15                	jmp    0x454145
454130:	a1 9c dc 46 00       	mov    0x46dc9c,%eax
454135:	8b 00                	mov    (%eax),%eax
454137:	8a 50 34             	mov    0x34(%eax),%dl
45413a:	8b c3                	mov    %ebx,%eax
45413c:	e8 7b f7 ff ff       	call   0x4538bc
454141:	c6 43 41 01          	movb   $0x1,0x41(%ebx)
454145:	5b                   	pop    %ebx
454146:	c3                   	ret
454147:	90                   	nop
454148:	56                   	push   %esi
454149:	33 d2                	xor    %edx,%edx
45414b:	8b 0d 1c de 46 00    	mov    0x46de1c,%ecx
454151:	80 79 0d 00          	cmpb   $0x0,0xd(%ecx)
454155:	74 36                	je     0x45418d
454157:	80 78 41 00          	cmpb   $0x0,0x41(%eax)
45415b:	74 29                	je     0x454186
45415d:	83 c0 58             	add    $0x58,%eax
454160:	e8 e7 ad ff ff       	call   0x44ef4c
454165:	85 c0                	test   %eax,%eax
454167:	74 0d                	je     0x454176
454169:	66 be c8 ff          	mov    $0xffc8,%si
45416d:	e8 d2 f2 fa ff       	call   0x403444
454172:	8b d0                	mov    %eax,%edx
454174:	eb 17                	jmp    0x45418d
454176:	a1 9c dc 46 00       	mov    0x46dc9c,%eax
45417b:	8b 00                	mov    (%eax),%eax
45417d:	e8 22 a5 00 00       	call   0x45e6a4
454182:	8b d0                	mov    %eax,%edx
454184:	eb 07                	jmp    0x45418d
454186:	80 78 30 01          	cmpb   $0x1,0x30(%eax)
45418a:	0f 94 c2             	sete   %dl
45418d:	8b c2                	mov    %edx,%eax
45418f:	5e                   	pop    %esi
454190:	c3                   	ret
454191:	8d 40 00             	lea    0x0(%eax),%eax
454194:	53                   	push   %ebx
454195:	56                   	push   %esi
454196:	57                   	push   %edi
454197:	55                   	push   %ebp
454198:	83 c4 f8             	add    $0xfffffff8,%esp
45419b:	8b f9                	mov    %ecx,%edi
45419d:	8b f2                	mov    %edx,%esi
45419f:	8b d8                	mov    %eax,%ebx
4541a1:	8b cc                	mov    %esp,%ecx
4541a3:	8b d7                	mov    %edi,%edx
4541a5:	8b c6                	mov    %esi,%eax
4541a7:	e8 74 e7 fb ff       	call   0x412920
4541ac:	8b 04 24             	mov    (%esp),%eax
4541af:	89 43 58             	mov    %eax,0x58(%ebx)
4541b2:	8b 44 24 04          	mov    0x4(%esp),%eax
4541b6:	89 43 5c             	mov    %eax,0x5c(%ebx)
4541b9:	8b c3                	mov    %ebx,%eax
4541bb:	e8 40 ff ff ff       	call   0x454100
4541c0:	8b d3                	mov    %ebx,%edx
4541c2:	8b c3                	mov    %ebx,%eax
4541c4:	8b 08                	mov    (%eax),%ecx
4541c6:	ff 51 3c             	call   *0x3c(%ecx)
4541c9:	33 d2                	xor    %edx,%edx
4541cb:	8b 43 34             	mov    0x34(%ebx),%eax
4541ce:	e8 35 e3 ff ff       	call   0x452508
4541d3:	33 d2                	xor    %edx,%edx
4541d5:	8b 43 34             	mov    0x34(%ebx),%eax
4541d8:	e8 27 e8 ff ff       	call   0x452a04
4541dd:	8b 43 34             	mov    0x34(%ebx),%eax
4541e0:	e8 c7 bb ff ff       	call   0x44fdac
4541e5:	8b c3                	mov    %ebx,%eax
4541e7:	e8 c0 f1 ff ff       	call   0x4533ac
4541ec:	8b c3                	mov    %ebx,%eax
4541ee:	e8 55 ff ff ff       	call   0x454148
4541f3:	83 e0 7f             	and    $0x7f,%eax
4541f6:	8d 04 40             	lea    (%eax,%eax,2),%eax
4541f9:	8d 04 45 7c 3d 46 00 	lea    0x463d7c(,%eax,2),%eax
454200:	33 d2                	xor    %edx,%edx
454202:	8a 53 60             	mov    0x60(%ebx),%dl
454205:	66 8b 2c 50          	mov    (%eax,%edx,2),%bp
454209:	33 c0                	xor    %eax,%eax
45420b:	8a 43 68             	mov    0x68(%ebx),%al
45420e:	66 0b 2c 45 88 3d 46 	or     0x463d88(,%eax,2),%bp
454215:	00
454216:	0f b7 ed             	movzwl %bp,%ebp
454219:	33 c0                	xor    %eax,%eax
45421b:	8a 43 69             	mov    0x69(%ebx),%al
45421e:	c1 e0 0a             	shl    $0xa,%eax
454221:	0b e8                	or     %eax,%ebp
454223:	6a 00                	push   $0x0
454225:	a1 a8 eb 46 00       	mov    0x46eba8,%eax
45422a:	8b 40 10             	mov    0x10(%eax),%eax
45422d:	50                   	push   %eax
45422e:	6a 00                	push   $0x0
454230:	57                   	push   %edi
454231:	56                   	push   %esi
454232:	55                   	push   %ebp
454233:	8b 43 34             	mov    0x34(%ebx),%eax
454236:	e8 a1 bc ff ff       	call   0x44fedc
45423b:	50                   	push   %eax
45423c:	e8 9b 26 fb ff       	call   0x4068dc
454241:	59                   	pop    %ecx
454242:	5a                   	pop    %edx
454243:	5d                   	pop    %ebp
454244:	5f                   	pop    %edi
454245:	5e                   	pop    %esi
454246:	5b                   	pop    %ebx
454247:	c3                   	ret
454248:	53                   	push   %ebx
454249:	56                   	push   %esi
45424a:	57                   	push   %edi
45424b:	55                   	push   %ebp
45424c:	8b ea                	mov    %edx,%ebp
45424e:	8b f8                	mov    %eax,%edi
454250:	8b 47 04             	mov    0x4(%edi),%eax
454253:	8b 70 08             	mov    0x8(%eax),%esi