641077:	57                   	push   %edi
641078:	8b f9                	mov    %ecx,%edi
64107a:	8d 8f 78 04 00 00    	lea    0x478(%edi),%ecx
641080:	e8 fb a6 ff ff       	call   0x63b780
641085:	ff 75 08             	push   0x8(%ebp)
641088:	8d 45 f8             	lea    -0x8(%ebp),%eax
64108b:	50                   	push   %eax
64108c:	8d 8f 34 03 00 00    	lea    0x334(%edi),%ecx
641092:	e8 e9 f3 ff ff       	call   0x640480
641097:	8b 4d f8             	mov    -0x8(%ebp),%ecx
64109a:	ff 75 08             	push   0x8(%ebp)
64109d:	8d 49 14             	lea    0x14(%ecx),%ecx
6410a0:	e8 cb 1d 00 00       	call   0x642e70
6410a5:	8d 8f 78 04 00 00    	lea    0x478(%edi),%ecx
6410ab:	e8 f0 a6 ff ff       	call   0x63b7a0
6410b0:	5f                   	pop    %edi
6410b1:	5b                   	pop    %ebx
6410b2:	8b e5                	mov    %ebp,%esp
6410b4:	5d                   	pop    %ebp
6410b5:	c2 04 00             	ret    $0x4
6410b8:	cc                   	int3
6410b9:	cc                   	int3
6410ba:	cc                   	int3
6410bb:	cc                   	int3
6410bc:	cc                   	int3
6410bd:	cc                   	int3
6410be:	cc                   	int3
6410bf:	cc                   	int3
6410c0:	55                   	push   %ebp
6410c1:	8b ec                	mov    %esp,%ebp
6410c3:	8b 45 08             	mov    0x8(%ebp),%eax
6410c6:	85 c0                	test   %eax,%eax
6410c8:	75 04                	jne    0x6410ce
6410ca:	5d                   	pop    %ebp
6410cb:	c2 04 00             	ret    $0x4
6410ce:	3d 5d 74 d1 05       	cmp    $0x5d1745d,%eax
6410d3:	77 3c                	ja     0x641111
6410d5:	6b c0 2c             	imul   $0x2c,%eax,%eax
6410d8:	3d 00 10 00 00       	cmp    $0x1000,%eax
6410dd:	72 23                	jb     0x641102
6410df:	8d 48 23             	lea    0x23(%eax),%ecx
6410e2:	3b c8                	cmp    %eax,%ecx
6410e4:	76 30                	jbe    0x641116
6410e6:	51                   	push   %ecx
6410e7:	e8 56 ff f9 ff       	call   0x5e1042
6410ec:	8b c8                	mov    %eax,%ecx
6410ee:	83 c4 04             	add    $0x4,%esp
6410f1:	85 c9                	test   %ecx,%ecx
6410f3:	74 26                	je     0x64111b
6410f5:	8d 41 23             	lea    0x23(%ecx),%eax
6410f8:	83 e0 e0             	and    $0xffffffe0,%eax
6410fb:	89 48 fc             	mov    %ecx,-0x4(%eax)
6410fe:	5d                   	pop    %ebp
6410ff:	c2 04 00             	ret    $0x4
641102:	50                   	push   %eax
641103:	e8 3a ff f9 ff       	call   0x5e1042
641108:	83 c4 04             	add    $0x4,%esp
64110b:	85 c0                	test   %eax,%eax
64110d:	75 bb                	jne    0x6410ca
64110f:	eb 0f                	jmp    0x641120
641111:	e8 37 d2 f8 ff       	call   0x5ce34d
641116:	e8 32 d2 f8 ff       	call   0x5ce34d
64111b:	e8 0f be fa ff       	call   0x5ecf2f
641120:	e8 0a be fa ff       	call   0x5ecf2f
641125:	cc                   	int3
641126:	cc                   	int3
641127:	cc                   	int3
641128:	cc                   	int3
641129:	cc                   	int3
64112a:	cc                   	int3
64112b:	cc                   	int3
64112c:	cc                   	int3
64112d:	cc                   	int3
64112e:	cc                   	int3
64112f:	cc                   	int3
641130:	55                   	push   %ebp
641131:	8b ec                	mov    %esp,%ebp
641133:	83 ec 10             	sub    $0x10,%esp
641136:	53                   	push   %ebx
641137:	56                   	push   %esi
641138:	8b f1                	mov    %ecx,%esi
64113a:	57                   	push   %edi
64113b:	8d 86 94 04 00 00    	lea    0x494(%esi),%eax
641141:	8b c8                	mov    %eax,%ecx
641143:	89 45 f8             	mov    %eax,-0x8(%ebp)
641146:	e8 35 a6 ff ff       	call   0x63b780
64114b:	8d 4d 08             	lea    0x8(%ebp),%ecx
64114e:	33 ff                	xor    %edi,%edi
641150:	51                   	push   %ecx
641151:	8d 86 e0 01 00 00    	lea    0x1e0(%esi),%eax
641157:	8d 4d f0             	lea    -0x10(%ebp),%ecx
64115a:	89 45 fc             	mov    %eax,-0x4(%ebp)
64115d:	51                   	push   %ecx
64115e:	8b c8                	mov    %eax,%ecx
641160:	e8 8b f2 ff ff       	call   0x6403f0
641165:	8b 75 f0             	mov    -0x10(%ebp),%esi
641168:	8d 45 08             	lea    0x8(%ebp),%eax
64116b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
64116e:	b3 01                	mov    $0x1,%bl
641170:	50                   	push   %eax
641171:	8d 45 f0             	lea    -0x10(%ebp),%eax
641174:	8b 76 14             	mov    0x14(%esi),%esi
641177:	50                   	push   %eax
641178:	e8 73 f2 ff ff       	call   0x6403f0
64117d:	8b 45 f0             	mov    -0x10(%ebp),%eax
641180:	3b 70 18             	cmp    0x18(%eax),%esi
641183:	74 3b                	je     0x6411c0
641185:	84 db                	test   %bl,%bl
641187:	74 37                	je     0x6411c0
641189:	8b 0e                	mov    (%esi),%ecx
64118b:	ff 75 10             	push   0x10(%ebp)
64118e:	ff 75 0c             	push   0xc(%ebp)
641191:	8b 01                	mov    (%ecx),%eax
641193:	ff 75 08             	push   0x8(%ebp)
641196:	ff 10                	call   *(%eax)
641198:	8b 4d fc             	mov    -0x4(%ebp),%ecx
64119b:	8b f8                	mov    %eax,%edi
64119d:	33 c0                	xor    %eax,%eax
64119f:	0f b6 db             	movzbl %bl,%ebx
6411a2:	83 ff fb             	cmp    $0xfffffffb,%edi
6411a5:	0f 44 d8             	cmove  %eax,%ebx
6411a8:	8d 45 08             	lea    0x8(%ebp),%eax
6411ab:	50                   	push   %eax
6411ac:	8d 45 f0             	lea    -0x10(%ebp),%eax
6411af:	83 c6 04             	add    $0x4,%esi
6411b2:	50                   	push   %eax
6411b3:	e8 38 f2 ff ff       	call   0x6403f0
6411b8:	8b 45 f0             	mov    -0x10(%ebp),%eax
6411bb:	3b 70 18             	cmp    0x18(%eax),%esi
6411be:	75 c5                	jne    0x641185
6411c0:	8b 4d f8             	mov    -0x8(%ebp),%ecx
6411c3:	e8 d8 a5 ff ff       	call   0x63b7a0
6411c8:	8b c7                	mov    %edi,%eax
6411ca:	5f                   	pop    %edi
6411cb:	5e                   	pop    %esi
6411cc:	5b                   	pop    %ebx
6411cd:	8b e5                	mov    %ebp,%esp
6411cf:	5d                   	pop    %ebp
6411d0:	c2 0c 00             	ret    $0xc
6411d3:	cc                   	int3
6411d4:	cc                   	int3
6411d5:	cc                   	int3
6411d6:	cc                   	int3
6411d7:	cc                   	int3
6411d8:	cc                   	int3
6411d9:	cc                   	int3
6411da:	cc                   	int3
6411db:	cc                   	int3
6411dc:	cc                   	int3
6411dd:	cc                   	int3
6411de:	cc                   	int3
6411df:	cc                   	int3
6411e0:	55                   	push   %ebp
6411e1:	8b ec                	mov    %esp,%ebp
6411e3:	6a ff                	push   $0xffffffff
6411e5:	68 a8 47 66 00       	push   $0x6647a8
6411ea:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
6411f0:	50                   	push   %eax
6411f1:	83 ec 20             	sub    $0x20,%esp
6411f4:	a1 d4 89 72 00       	mov    0x7289d4,%eax
6411f9:	33 c5                	xor    %ebp,%eax
6411fb:	89 45 f0             	mov    %eax,-0x10(%ebp)
6411fe:	56                   	push   %esi
6411ff:	50                   	push   %eax
641200:	8d 45 f4             	lea    -0xc(%ebp),%eax
641203:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
641209:	8b f1                	mov    %ecx,%esi
64120b:	80 be a1 02 00 00 00 	cmpb   $0x0,0x2a1(%esi)
641212:	74 4f                	je     0x641263
641214:	81 c6 f0 00 00 00    	add    $0xf0,%esi
64121a:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
64121e:	72 04                	jb     0x641224
641220:	8b 06                	mov    (%esi),%eax
641222:	eb 02                	jmp    0x641226
641224:	8b c6                	mov    %esi,%eax
641226:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
641229:	51                   	push   %ecx
64122a:	50                   	push   %eax
64122b:	e8 40 93 ff ff       	call   0x63a570
641230:	83 c4 08             	add    $0x8,%esp
641233:	84 c0                	test   %al,%al
641235:	0f 85 fd 00 00 00    	jne    0x641338
64123b:	e8 a0 51 ff ff       	call   0x6363e0
641240:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
641244:	8b c8                	mov    %eax,%ecx
641246:	72 02                	jb     0x64124a
641248:	8b 36                	mov    (%esi),%esi
64124a:	8b 01                	mov    (%ecx),%eax
64124c:	56                   	push   %esi
64124d:	68 a8 1b 6e 00       	push   $0x6e1ba8
641252:	68 fc 56 6e 00       	push   $0x6e56fc
641257:	51                   	push   %ecx
641258:	ff 50 24             	call   *0x24(%eax)
64125b:	83 c4 10             	add    $0x10,%esp
64125e:	e9 d5 00 00 00       	jmp    0x641338
641263:	e8 78 51 ff ff       	call   0x6363e0
641268:	68 14 1c 6e 00       	push   $0x6e1c14
64126d:	50                   	push   %eax
64126e:	8b 08                	mov    (%eax),%ecx
641270:	ff 51 04             	call   *0x4(%ecx)
641273:	83 c4 08             	add    $0x8,%esp
641276:	80 be a2 02 00 00 00 	cmpb   $0x0,0x2a2(%esi)
64127d:	0f 84 8e 00 00 00    	je     0x641311
641283:	8d 86 08 01 00 00    	lea    0x108(%esi),%eax
641289:	50                   	push   %eax
64128a:	8d 8e f0 00 00 00    	lea    0xf0(%esi),%ecx
641290:	51                   	push   %ecx
641291:	8d 45 d8             	lea    -0x28(%ebp),%eax
641294:	50                   	push   %eax
641295:	e8 06 53 ff ff       	call   0x6365a0
64129a:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
64129e:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
6412a1:	8d 45 d8             	lea    -0x28(%ebp),%eax
6412a4:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
6412ab:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
6412af:	51                   	push   %ecx
6412b0:	50                   	push   %eax
6412b1:	e8 ca 9a ff ff       	call   0x63ad80
6412b6:	83 c4 14             	add    $0x14,%esp
6412b9:	84 c0                	test   %al,%al
6412bb:	75 24                	jne    0x6412e1
6412bd:	e8 1e 51 ff ff       	call   0x6363e0
6412c2:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
6412c6:	8d 55 d8             	lea    -0x28(%ebp),%edx
6412c9:	0f 43 55 d8          	cmovae -0x28(%ebp),%edx
6412cd:	8b 08                	mov    (%eax),%ecx
6412cf:	52                   	push   %edx
6412d0:	68 48 1c 6e 00       	push   $0x6e1c48
6412d5:	68 fc 56 6e 00       	push   $0x6e56fc
6412da:	50                   	push   %eax
6412db:	ff 51 24             	call   *0x24(%ecx)
6412de:	83 c4 10             	add    $0x10,%esp
6412e1:	8b 45 ec             	mov    -0x14(%ebp),%eax
6412e4:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
6412eb:	83 f8 08             	cmp    $0x8,%eax
6412ee:	72 0d                	jb     0x6412fd
6412f0:	40                   	inc    %eax
6412f1:	8d 4d d8             	lea    -0x28(%ebp),%ecx
6412f4:	50                   	push   %eax
6412f5:	ff 75 d8             	push   -0x28(%ebp)
6412f8:	e8 e3 7a df ff       	call   0x438de0
6412fd:	33 c0                	xor    %eax,%eax
6412ff:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
641306:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
64130d:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
641311:	8d 8e 3c 03 00 00    	lea    0x33c(%esi),%ecx
641317:	e8 04 d7 ff ff       	call   0x63ea20
64131c:	84 c0                	test   %al,%al
64131e:	75 18                	jne    0x641338
641320:	e8 bb 50 ff ff       	call   0x6363e0
641325:	68 98 1c 6e 00       	push   $0x6e1c98
64132a:	68 fc 56 6e 00       	push   $0x6e56fc
64132f:	50                   	push   %eax
641330:	8b 08                	mov    (%eax),%ecx
641332:	ff 51 1c             	call   *0x1c(%ecx)
641335:	83 c4 0c             	add    $0xc,%esp
641338:	8b 4d f4             	mov    -0xc(%ebp),%ecx
64133b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
641342:	59                   	pop    %ecx
641343:	5e                   	pop    %esi
641344:	8b 4d f0             	mov    -0x10(%ebp),%ecx
641347:	33 cd                	xor    %ebp,%ecx
641349:	e8 8c 01 fa ff       	call   0x5e14da
64134e:	8b e5                	mov    %ebp,%esp
641350:	5d                   	pop    %ebp
641351:	c3                   	ret
641352:	cc                   	int3
641353:	cc                   	int3
641354:	cc                   	int3
641355:	cc                   	int3
641356:	cc                   	int3
641357:	cc                   	int3
641358:	cc                   	int3
641359:	cc                   	int3
64135a:	cc                   	int3
64135b:	cc                   	int3
64135c:	cc                   	int3
64135d:	cc                   	int3
64135e:	cc                   	int3
64135f:	cc                   	int3
641360:	56                   	push   %esi
641361:	8b f1                	mov    %ecx,%esi
641363:	8d 8e f0 01 00 00    	lea    0x1f0(%esi),%ecx
641369:	e8 72 c6 ff ff       	call   0x63d9e0
64136e:	8b ce                	mov    %esi,%ecx
641370:	e8 3b a9 ff ff       	call   0x63bcb0
641375:	8d 8e 54 04 00 00    	lea    0x454(%esi),%ecx
64137b:	e8 f0 d0 ff ff       	call   0x63e470
641380:	c6 86 a0 02 00 00 00 	movb   $0x0,0x2a0(%esi)
641387:	b0 01                	mov    $0x1,%al
641389:	5e                   	pop    %esi
64138a:	c3                   	ret
64138b:	cc                   	int3
64138c:	cc                   	int3
64138d:	cc                   	int3
64138e:	cc                   	int3
64138f:	cc                   	int3
641390:	55                   	push   %ebp
641391:	8b ec                	mov    %esp,%ebp
641393:	6a ff                	push   $0xffffffff
641395:	68 16 48 66 00       	push   $0x664816
64139a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
6413a0:	50                   	push   %eax
6413a1:	83 ec 54             	sub    $0x54,%esp
6413a4:	a1 d4 89 72 00       	mov    0x7289d4,%eax
6413a9:	33 c5                	xor    %ebp,%eax
6413ab:	89 45 f0             	mov    %eax,-0x10(%ebp)
6413ae:	53                   	push   %ebx
6413af:	56                   	push   %esi
6413b0:	57                   	push   %edi
6413b1:	50                   	push   %eax
6413b2:	8d 45 f4             	lea    -0xc(%ebp),%eax
6413b5:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
6413bb:	8b f9                	mov    %ecx,%edi
6413bd:	8b 5d 08             	mov    0x8(%ebp),%ebx
6413c0:	8b 03                	mov    (%ebx),%eax
6413c2:	8b cb                	mov    %ebx,%ecx
6413c4:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
6413cb:	ff 70 04             	push   0x4(%eax)
6413ce:	e8 2d 4b ff ff       	call   0x635f00
6413d3:	8b 03                	mov    (%ebx),%eax
6413d5:	89 40 04             	mov    %eax,0x4(%eax)
6413d8:	8b 03                	mov    (%ebx),%eax
6413da:	89 00                	mov    %eax,(%eax)
6413dc:	8b 03                	mov    (%ebx),%eax
6413de:	89 40 08             	mov    %eax,0x8(%eax)
6413e1:	33 c0                	xor    %eax,%eax
6413e3:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
6413ea:	c7 45 bc 07 00 00 00 	movl   $0x7,-0x44(%ebp)
6413f1:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
6413f8:	66 89 45 a8          	mov    %ax,-0x58(%ebp)
6413fc:	8d 45 a8             	lea    -0x58(%ebp),%eax
6413ff:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
641406:	50                   	push   %eax
641407:	ff b7 b4 04 00 00    	push   0x4b4(%edi)
64140d:	ff b7 b0 04 00 00    	push   0x4b0(%edi)
641413:	e8 e8 9b ff ff       	call   0x63b000
641418:	83 c4 0c             	add    $0xc,%esp
64141b:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
641422:	33 c0                	xor    %eax,%eax
641424:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
64142b:	8d 4d d8             	lea    -0x28(%ebp),%ecx
64142e:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
641432:	6a 09                	push   $0x9
641434:	68 90 1e 6e 00       	push   $0x6e1e90
641439:	e8 b2 73 df ff       	call   0x4387f0
64143e:	8d 45 d8             	lea    -0x28(%ebp),%eax
641441:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
641445:	50                   	push   %eax
641446:	8d 45 a0             	lea    -0x60(%ebp),%eax