456ec0:	c7 85 6c ff ff ff 00 	movl   $0x0,-0x94(%ebp)
456ec7:	00 00 00
456eca:	c7 85 70 ff ff ff 07 	movl   $0x7,-0x90(%ebp)
456ed1:	00 00 00
456ed4:	66 89 85 5c ff ff ff 	mov    %ax,-0xa4(%ebp)
456edb:	83 fa 08             	cmp    $0x8,%edx
456ede:	72 35                	jb     0x456f15
456ee0:	8b 8d 20 ff ff ff    	mov    -0xe0(%ebp),%ecx
456ee6:	8d 14 55 02 00 00 00 	lea    0x2(,%edx,2),%edx
456eed:	8b c1                	mov    %ecx,%eax
456eef:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
456ef5:	72 14                	jb     0x456f0b
456ef7:	8b 49 fc             	mov    -0x4(%ecx),%ecx
456efa:	83 c2 23             	add    $0x23,%edx
456efd:	2b c1                	sub    %ecx,%eax
456eff:	83 c0 fc             	add    $0xfffffffc,%eax
456f02:	83 f8 1f             	cmp    $0x1f,%eax
456f05:	0f 87 1e 01 00 00    	ja     0x457029
456f0b:	52                   	push   %edx
456f0c:	51                   	push   %ecx
456f0d:	e8 60 a1 18 00       	call   0x5e1072
456f12:	83 c4 08             	add    $0x8,%esp
456f15:	8b 45 94             	mov    -0x6c(%ebp),%eax
456f18:	85 c0                	test   %eax,%eax
456f1a:	74 72                	je     0x456f8e
456f1c:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
456f1f:	51                   	push   %ecx
456f20:	ff 75 98             	push   -0x68(%ebp)
456f23:	50                   	push   %eax
456f24:	e8 e7 1b ff ff       	call   0x448b10
456f29:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
456f2c:	b8 ab aa aa 2a       	mov    $0x2aaaaaab,%eax
456f31:	8b 75 94             	mov    -0x6c(%ebp),%esi
456f34:	83 c4 0c             	add    $0xc,%esp
456f37:	2b ce                	sub    %esi,%ecx
456f39:	f7 e9                	imul   %ecx
456f3b:	c1 fa 02             	sar    $0x2,%edx
456f3e:	8b c2                	mov    %edx,%eax
456f40:	c1 e8 1f             	shr    $0x1f,%eax
456f43:	03 c2                	add    %edx,%eax
456f45:	8d 0c 40             	lea    (%eax,%eax,2),%ecx
456f48:	8b c6                	mov    %esi,%eax
456f4a:	c1 e1 03             	shl    $0x3,%ecx
456f4d:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
456f53:	72 14                	jb     0x456f69
456f55:	8b 76 fc             	mov    -0x4(%esi),%esi
456f58:	83 c1 23             	add    $0x23,%ecx
456f5b:	2b c6                	sub    %esi,%eax
456f5d:	83 c0 fc             	add    $0xfffffffc,%eax
456f60:	83 f8 1f             	cmp    $0x1f,%eax
456f63:	0f 87 c0 00 00 00    	ja     0x457029
456f69:	51                   	push   %ecx
456f6a:	56                   	push   %esi
456f6b:	e8 02 a1 18 00       	call   0x5e1072
456f70:	8b b5 ec fd ff ff    	mov    -0x214(%ebp),%esi
456f76:	83 c4 08             	add    $0x8,%esp
456f79:	c7 45 94 00 00 00 00 	movl   $0x0,-0x6c(%ebp)
456f80:	c7 45 98 00 00 00 00 	movl   $0x0,-0x68(%ebp)
456f87:	c7 45 9c 00 00 00 00 	movl   $0x0,-0x64(%ebp)
456f8e:	85 ff                	test   %edi,%edi
456f90:	74 2f                	je     0x456fc1
456f92:	8b 8d cc fd ff ff    	mov    -0x234(%ebp),%ecx
456f98:	8b c7                	mov    %edi,%eax
456f9a:	2b cf                	sub    %edi,%ecx
456f9c:	83 e1 f8             	and    $0xfffffff8,%ecx
456f9f:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
456fa5:	72 10                	jb     0x456fb7
456fa7:	8b 7f fc             	mov    -0x4(%edi),%edi
456faa:	83 c1 23             	add    $0x23,%ecx
456fad:	2b c7                	sub    %edi,%eax
456faf:	83 c0 fc             	add    $0xfffffffc,%eax
456fb2:	83 f8 1f             	cmp    $0x1f,%eax
456fb5:	77 72                	ja     0x457029
456fb7:	51                   	push   %ecx
456fb8:	57                   	push   %edi
456fb9:	e8 b4 a0 18 00       	call   0x5e1072
456fbe:	83 c4 08             	add    $0x8,%esp
456fc1:	8d 4d 88             	lea    -0x78(%ebp),%ecx
456fc4:	e8 77 e1 ff ff       	call   0x455140
456fc9:	8d 8d 38 ff ff ff    	lea    -0xc8(%ebp),%ecx
456fcf:	e8 6c e1 ff ff       	call   0x455140
456fd4:	8d 4d a0             	lea    -0x60(%ebp),%ecx
456fd7:	e8 64 e1 ff ff       	call   0x455140
456fdc:	8b 55 20             	mov    0x20(%ebp),%edx
456fdf:	83 fa 10             	cmp    $0x10,%edx
456fe2:	72 28                	jb     0x45700c
456fe4:	8b 4d 0c             	mov    0xc(%ebp),%ecx
456fe7:	42                   	inc    %edx
456fe8:	8b c1                	mov    %ecx,%eax
456fea:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
456ff0:	72 10                	jb     0x457002
456ff2:	8b 49 fc             	mov    -0x4(%ecx),%ecx
456ff5:	83 c2 23             	add    $0x23,%edx
456ff8:	2b c1                	sub    %ecx,%eax
456ffa:	83 c0 fc             	add    $0xfffffffc,%eax
456ffd:	83 f8 1f             	cmp    $0x1f,%eax
457000:	77 27                	ja     0x457029
457002:	52                   	push   %edx
457003:	51                   	push   %ecx
457004:	e8 69 a0 18 00       	call   0x5e1072
457009:	83 c4 08             	add    $0x8,%esp
45700c:	8b c6                	mov    %esi,%eax
45700e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
457011:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
457018:	59                   	pop    %ecx
457019:	5f                   	pop    %edi
45701a:	5e                   	pop    %esi
45701b:	8b 4d f0             	mov    -0x10(%ebp),%ecx
45701e:	33 cd                	xor    %ebp,%ecx
457020:	e8 b5 a4 18 00       	call   0x5e14da
457025:	8b e5                	mov    %ebp,%esp
457027:	5d                   	pop    %ebp
457028:	c3                   	ret
457029:	e8 01 5f 19 00       	call   0x5ecf2f
45702e:	cc                   	int3
45702f:	cc                   	int3
457030:	55                   	push   %ebp
457031:	8b ec                	mov    %esp,%ebp
457033:	6a ff                	push   $0xffffffff
457035:	68 c0 f2 64 00       	push   $0x64f2c0
45703a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
457040:	50                   	push   %eax
457041:	83 ec 58             	sub    $0x58,%esp
457044:	a1 d4 89 72 00       	mov    0x7289d4,%eax
457049:	33 c5                	xor    %ebp,%eax
45704b:	89 45 f0             	mov    %eax,-0x10(%ebp)
45704e:	53                   	push   %ebx
45704f:	56                   	push   %esi
457050:	57                   	push   %edi
457051:	50                   	push   %eax
457052:	8d 45 f4             	lea    -0xc(%ebp),%eax
457055:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
45705b:	8b 45 08             	mov    0x8(%ebp),%eax
45705e:	bb 0f 00 00 00       	mov    $0xf,%ebx
457063:	89 45 c0             	mov    %eax,-0x40(%ebp)
457066:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
45706d:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
457074:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
45707b:	89 5d ec             	mov    %ebx,-0x14(%ebp)
45707e:	c6 45 d8 00          	movb   $0x0,-0x28(%ebp)
457082:	32 c0                	xor    %al,%al
457084:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
45708b:	88 45 c7             	mov    %al,-0x39(%ebp)
45708e:	33 f6                	xor    %esi,%esi
457090:	8d 45 d0             	lea    -0x30(%ebp),%eax
457093:	c7 45 b4 80 4f 12 00 	movl   $0x124f80,-0x4c(%ebp)
45709a:	50                   	push   %eax
45709b:	68 ff 01 0f 00       	push   $0xf01ff
4570a0:	c7 45 b8 80 cb a4 00 	movl   $0xa4cb80,-0x48(%ebp)
4570a7:	ff 15 6c 21 68 00    	call   *0x68216c
4570ad:	50                   	push   %eax
4570ae:	ff 15 c0 20 68 00    	call   *0x6820c0
4570b4:	85 c0                	test   %eax,%eax
4570b6:	75 27                	jne    0x4570df
4570b8:	ff 15 e0 21 68 00    	call   *0x6821e0
4570be:	50                   	push   %eax
4570bf:	68 c4 e0 68 00       	push   $0x68e0c4
4570c4:	ff 35 58 9c 71 00    	push   0x719c58
4570ca:	6a 02                	push   $0x2
4570cc:	68 a4 dd 68 00       	push   $0x68dda4
4570d1:	56                   	push   %esi
4570d2:	e8 59 60 03 00       	call   0x48d130
4570d7:	8b 7d d8             	mov    -0x28(%ebp),%edi
4570da:	e9 2b 03 00 00       	jmp    0x45740a
4570df:	8b 45 d0             	mov    -0x30(%ebp),%eax
4570e2:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
4570e5:	51                   	push   %ecx
4570e6:	6a 00                	push   $0x0
4570e8:	6a 00                	push   $0x0
4570ea:	6a 01                	push   $0x1
4570ec:	50                   	push   %eax
4570ed:	89 45 bc             	mov    %eax,-0x44(%ebp)
4570f0:	89 75 d4             	mov    %esi,-0x2c(%ebp)
4570f3:	89 75 c8             	mov    %esi,-0x38(%ebp)
4570f6:	ff 15 94 20 68 00    	call   *0x682094
4570fc:	85 c0                	test   %eax,%eax
4570fe:	75 33                	jne    0x457133
457100:	ff 15 e0 21 68 00    	call   *0x6821e0
457106:	83 f8 7a             	cmp    $0x7a,%eax
457109:	74 28                	je     0x457133
45710b:	ff 15 e0 21 68 00    	call   *0x6821e0
457111:	50                   	push   %eax
457112:	68 30 df 68 00       	push   $0x68df30
457117:	ff 35 58 9c 71 00    	push   0x719c58
45711d:	6a 02                	push   $0x2
45711f:	68 a4 dd 68 00       	push   $0x68dda4
457124:	6a 00                	push   $0x0
457126:	e8 05 60 03 00       	call   0x48d130
45712b:	83 c4 18             	add    $0x18,%esp
45712e:	e9 93 00 00 00       	jmp    0x4571c6
457133:	ff 75 d4             	push   -0x2c(%ebp)
457136:	6a 40                	push   $0x40
457138:	ff 15 cc 21 68 00    	call   *0x6821cc
45713e:	8b f8                	mov    %eax,%edi
457140:	85 ff                	test   %edi,%edi
457142:	75 24                	jne    0x457168
457144:	ff 15 e0 21 68 00    	call   *0x6821e0
45714a:	50                   	push   %eax
45714b:	68 74 df 68 00       	push   $0x68df74
457150:	ff 35 58 9c 71 00    	push   0x719c58
457156:	6a 02                	push   $0x2
457158:	68 a4 dd 68 00       	push   $0x68dda4
45715d:	57                   	push   %edi
45715e:	e8 cd 5f 03 00       	call   0x48d130
457163:	83 c4 18             	add    $0x18,%esp
457166:	eb 5e                	jmp    0x4571c6
457168:	8d 45 d4             	lea    -0x2c(%ebp),%eax
45716b:	50                   	push   %eax
45716c:	ff 75 d4             	push   -0x2c(%ebp)
45716f:	57                   	push   %edi
457170:	6a 01                	push   $0x1
457172:	ff 75 bc             	push   -0x44(%ebp)
457175:	ff 15 94 20 68 00    	call   *0x682094
45717b:	85 c0                	test   %eax,%eax
45717d:	75 0e                	jne    0x45718d
45717f:	ff 15 e0 21 68 00    	call   *0x6821e0
457185:	50                   	push   %eax
457186:	68 30 df 68 00       	push   $0x68df30
45718b:	eb 1b                	jmp    0x4571a8
45718d:	8d 45 c8             	lea    -0x38(%ebp),%eax
457190:	50                   	push   %eax
457191:	ff 37                	push   (%edi)
457193:	e8 04 5e 03 00       	call   0x48cf9c
457198:	85 c0                	test   %eax,%eax
45719a:	75 4e                	jne    0x4571ea
45719c:	ff 15 e0 21 68 00    	call   *0x6821e0
4571a2:	50                   	push   %eax
4571a3:	68 a8 df 68 00       	push   $0x68dfa8
4571a8:	ff 35 58 9c 71 00    	push   0x719c58
4571ae:	6a 02                	push   $0x2
4571b0:	68 a4 dd 68 00       	push   $0x68dda4
4571b5:	6a 00                	push   $0x0
4571b7:	e8 74 5f 03 00       	call   0x48d130
4571bc:	83 c4 18             	add    $0x18,%esp
4571bf:	57                   	push   %edi
4571c0:	ff 15 c8 21 68 00    	call   *0x6821c8
4571c6:	68 00 e1 68 00       	push   $0x68e100
4571cb:	ff 35 58 9c 71 00    	push   0x719c58
4571d1:	6a 02                	push   $0x2
4571d3:	68 a4 dd 68 00       	push   $0x68dda4
4571d8:	6a 00                	push   $0x0
4571da:	e8 51 5f 03 00       	call   0x48d130
4571df:	8b 7d d8             	mov    -0x28(%ebp),%edi
4571e2:	83 c4 14             	add    $0x14,%esp
4571e5:	e9 23 02 00 00       	jmp    0x45740d
4571ea:	8b 55 c8             	mov    -0x38(%ebp),%edx
4571ed:	8b ca                	mov    %edx,%ecx
4571ef:	8d 59 01             	lea    0x1(%ecx),%ebx
4571f2:	8a 01                	mov    (%ecx),%al
4571f4:	41                   	inc    %ecx
4571f5:	84 c0                	test   %al,%al
4571f7:	75 f9                	jne    0x4571f2
4571f9:	2b cb                	sub    %ebx,%ecx
4571fb:	51                   	push   %ecx
4571fc:	52                   	push   %edx
4571fd:	8d 4d d8             	lea    -0x28(%ebp),%ecx
457200:	e8 3b e0 fe ff       	call   0x445240
457205:	57                   	push   %edi
457206:	ff 15 c8 21 68 00    	call   *0x6821c8
45720c:	8d 45 d8             	lea    -0x28(%ebp),%eax
45720f:	50                   	push   %eax
457210:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
457213:	e8 88 5b fe ff       	call   0x43cda0
457218:	83 7d b0 10          	cmpl   $0x10,-0x50(%ebp)
45721c:	8d 45 9c             	lea    -0x64(%ebp),%eax
45721f:	ff 75 ac             	push   -0x54(%ebp)
457222:	0f 43 45 9c          	cmovae -0x64(%ebp),%eax
457226:	b9 a8 de 70 00       	mov    $0x70dea8,%ecx
45722b:	50                   	push   %eax
45722c:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
457230:	e8 0b e0 fe ff       	call   0x445240
457235:	8b 55 b0             	mov    -0x50(%ebp),%edx
457238:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
45723c:	83 fa 10             	cmp    $0x10,%edx
45723f:	72 2c                	jb     0x45726d
457241:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
457244:	42                   	inc    %edx
457245:	8b c1                	mov    %ecx,%eax
457247:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
45724d:	72 14                	jb     0x457263
45724f:	8b 49 fc             	mov    -0x4(%ecx),%ecx
457252:	83 c2 23             	add    $0x23,%edx
457255:	2b c1                	sub    %ecx,%eax
457257:	83 c0 fc             	add    $0xfffffffc,%eax
45725a:	83 f8 1f             	cmp    $0x1f,%eax
45725d:	0f 87 0e 02 00 00    	ja     0x457471
457263:	52                   	push   %edx
457264:	51                   	push   %ecx
457265:	e8 08 9e 18 00       	call   0x5e1072
45726a:	83 c4 08             	add    $0x8,%esp
45726d:	8b 5d ec             	mov    -0x14(%ebp),%ebx
457270:	8d 45 d8             	lea    -0x28(%ebp),%eax
457273:	8b 7d d8             	mov    -0x28(%ebp),%edi
457276:	83 fb 10             	cmp    $0x10,%ebx
457279:	6a 08                	push   $0x8
45727b:	68 6c dd 68 00       	push   $0x68dd6c
457280:	ff 75 e8             	push   -0x18(%ebp)
457283:	0f 43 c7             	cmovae %edi,%eax
457286:	50                   	push   %eax
457287:	e8 b4 fe fe ff       	call   0x447140
45728c:	83 c4 10             	add    $0x10,%esp
45728f:	85 c0                	test   %eax,%eax
457291:	0f 85 1f 01 00 00    	jne    0x4573b6
457297:	c6 45 c7 01          	movb   $0x1,-0x39(%ebp)
45729b:	0f 1f 44 00 00       	nopl   0x0(%eax,%eax,1)
4572a0:	8d 45 cc             	lea    -0x34(%ebp),%eax
4572a3:	50                   	push   %eax
4572a4:	e8 d7 01 00 00       	call   0x457480
4572a9:	8b 45 cc             	mov    -0x34(%ebp),%eax
4572ac:	83 c4 04             	add    $0x4,%esp
4572af:	85 c0                	test   %eax,%eax
4572b1:	0f 85 d7 00 00 00    	jne    0x45738e
4572b7:	68 2c e1 68 00       	push   $0x68e12c
4572bc:	ff 35 58 9c 71 00    	push   0x719c58
4572c2:	6a 02                	push   $0x2
4572c4:	68 a4 dd 68 00       	push   $0x68dda4
4572c9:	50                   	push   %eax
4572ca:	e8 61 5e 03 00       	call   0x48d130
4572cf:	83 c4 14             	add    $0x14,%esp
4572d2:	e8 a9 68 00 00       	call   0x45db80
4572d7:	84 c0                	test   %al,%al
4572d9:	0f 85 8c 00 00 00    	jne    0x45736b
4572df:	83 fe 02             	cmp    $0x2,%esi
4572e2:	0f 8d 83 00 00 00    	jge    0x45736b
4572e8:	85 f6                	test   %esi,%esi
4572ea:	b9 5c e1 68 00       	mov    $0x68e15c,%ecx
4572ef:	b8 54 e1 68 00       	mov    $0x68e154,%eax
4572f4:	0f 45 c1             	cmovne %ecx,%eax
4572f7:	50                   	push   %eax
4572f8:	68 64 e1 68 00       	push   $0x68e164
4572fd:	ff 35 58 9c 71 00    	push   0x719c58
457303:	6a 04                	push   $0x4
457305:	68 a4 dd 68 00       	push   $0x68dda4
45730a:	6a 00                	push   $0x0
45730c:	e8 1f 5e 03 00       	call   0x48d130
457311:	83 c4 18             	add    $0x18,%esp
457314:	ff 74 b5 b4          	push   -0x4c(%ebp,%esi,4)
457318:	ff 35 c4 d4 72 00    	push   0x72d4c4
45731e:	ff 15 c0 21 68 00    	call   *0x6821c0
457324:	85 c0                	test   %eax,%eax
457326:	74 22                	je     0x45734a
457328:	68 c8 e1 68 00       	push   $0x68e1c8
45732d:	ff 35 58 9c 71 00    	push   0x719c58
457333:	6a 04                	push   $0x4
457335:	68 a4 dd 68 00       	push   $0x68dda4
45733a:	6a 00                	push   $0x0
45733c:	e8 ef 5d 03 00       	call   0x48d130
457341:	83 c4 14             	add    $0x14,%esp
457344:	46                   	inc    %esi
457345:	e9 56 ff ff ff       	jmp    0x4572a0