42413f:	50                   	push   %eax
424140:	e8 47 02 00 00       	call   0x42438c
424145:	83 c4 10             	add    $0x10,%esp
424148:	8b fe                	mov    %esi,%edi
42414a:	8d 85 5c fc ff ff    	lea    -0x3a4(%ebp),%eax
424150:	50                   	push   %eax
424151:	8d 85 2c fe ff ff    	lea    -0x1d4(%ebp),%eax
424157:	50                   	push   %eax
424158:	e8 43 ec fe ff       	call   0x412da0
42415d:	59                   	pop    %ecx
42415e:	59                   	pop    %ecx
42415f:	6a 0a                	push   $0xa
424161:	5a                   	pop    %edx
424162:	3b c2                	cmp    %edx,%eax
424164:	0f 85 91 00 00 00    	jne    0x4241fb
42416a:	ff 85 94 f8 ff ff    	incl   -0x76c(%ebp)
424170:	8d 77 01             	lea    0x1(%edi),%esi
424173:	8b 85 5c fc ff ff    	mov    -0x3a4(%ebp),%eax
424179:	c6 07 31             	movb   $0x31,(%edi)
42417c:	89 b5 b4 f8 ff ff    	mov    %esi,-0x74c(%ebp)
424182:	85 c0                	test   %eax,%eax
424184:	0f 84 8b 00 00 00    	je     0x424215
42418a:	33 ff                	xor    %edi,%edi
42418c:	8b f0                	mov    %eax,%esi
42418e:	33 c9                	xor    %ecx,%ecx
424190:	8b 84 8d 60 fc ff ff 	mov    -0x3a0(%ebp,%ecx,4),%eax
424197:	f7 e2                	mul    %edx
424199:	6a 0a                	push   $0xa
42419b:	03 c7                	add    %edi,%eax
42419d:	89 84 8d 60 fc ff ff 	mov    %eax,-0x3a0(%ebp,%ecx,4)
4241a4:	83 d2 00             	adc    $0x0,%edx
4241a7:	41                   	inc    %ecx
4241a8:	8b fa                	mov    %edx,%edi
4241aa:	5a                   	pop    %edx
4241ab:	3b ce                	cmp    %esi,%ecx
4241ad:	75 e1                	jne    0x424190
4241af:	8b b5 b4 f8 ff ff    	mov    -0x74c(%ebp),%esi
4241b5:	85 ff                	test   %edi,%edi
4241b7:	74 5c                	je     0x424215
4241b9:	8b 85 5c fc ff ff    	mov    -0x3a4(%ebp),%eax
4241bf:	83 f8 73             	cmp    $0x73,%eax
4241c2:	73 0f                	jae    0x4241d3
4241c4:	89 bc 85 60 fc ff ff 	mov    %edi,-0x3a0(%ebp,%eax,4)
4241cb:	ff 85 5c fc ff ff    	incl   -0x3a4(%ebp)
4241d1:	eb 42                	jmp    0x424215
4241d3:	33 c0                	xor    %eax,%eax
4241d5:	50                   	push   %eax
4241d6:	89 85 9c f6 ff ff    	mov    %eax,-0x964(%ebp)
4241dc:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
4241e2:	8d 85 a0 f6 ff ff    	lea    -0x960(%ebp),%eax
4241e8:	50                   	push   %eax
4241e9:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
4241ef:	53                   	push   %ebx
4241f0:	50                   	push   %eax
4241f1:	e8 96 01 00 00       	call   0x42438c
4241f6:	83 c4 10             	add    $0x10,%esp
4241f9:	eb 1a                	jmp    0x424215
4241fb:	85 c0                	test   %eax,%eax
4241fd:	75 09                	jne    0x424208
4241ff:	8b 85 94 f8 ff ff    	mov    -0x76c(%ebp),%eax
424205:	48                   	dec    %eax
424206:	eb 13                	jmp    0x42421b
424208:	04 30                	add    $0x30,%al
42420a:	8d 77 01             	lea    0x1(%edi),%esi
42420d:	88 07                	mov    %al,(%edi)
42420f:	89 b5 b4 f8 ff ff    	mov    %esi,-0x74c(%ebp)
424215:	8b 85 94 f8 ff ff    	mov    -0x76c(%ebp),%eax
42421b:	8b 8d 80 f8 ff ff    	mov    -0x780(%ebp),%ecx
424221:	89 41 04             	mov    %eax,0x4(%ecx)
424224:	8b 8d 88 f8 ff ff    	mov    -0x778(%ebp),%ecx
42422a:	85 c0                	test   %eax,%eax
42422c:	78 0a                	js     0x424238
42422e:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
424234:	77 02                	ja     0x424238
424236:	03 c8                	add    %eax,%ecx
424238:	8b 45 1c             	mov    0x1c(%ebp),%eax
42423b:	48                   	dec    %eax
42423c:	3b c1                	cmp    %ecx,%eax
42423e:	72 02                	jb     0x424242
424240:	8b c1                	mov    %ecx,%eax
424242:	03 85 84 f8 ff ff    	add    -0x77c(%ebp),%eax
424248:	89 85 88 f8 ff ff    	mov    %eax,-0x778(%ebp)
42424e:	3b f0                	cmp    %eax,%esi
424250:	0f 84 d3 00 00 00    	je     0x424329
424256:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
42425c:	85 c0                	test   %eax,%eax
42425e:	0f 84 c5 00 00 00    	je     0x424329
424264:	33 ff                	xor    %edi,%edi
424266:	8b f0                	mov    %eax,%esi
424268:	33 c9                	xor    %ecx,%ecx
42426a:	8b 84 8d 30 fe ff ff 	mov    -0x1d0(%ebp,%ecx,4),%eax
424271:	ba 00 ca 9a 3b       	mov    $0x3b9aca00,%edx
424276:	f7 e2                	mul    %edx
424278:	03 c7                	add    %edi,%eax
42427a:	89 84 8d 30 fe ff ff 	mov    %eax,-0x1d0(%ebp,%ecx,4)
424281:	83 d2 00             	adc    $0x0,%edx
424284:	41                   	inc    %ecx
424285:	8b fa                	mov    %edx,%edi
424287:	3b ce                	cmp    %esi,%ecx
424289:	75 df                	jne    0x42426a
42428b:	8b b5 b4 f8 ff ff    	mov    -0x74c(%ebp),%esi
424291:	85 ff                	test   %edi,%edi
424293:	74 40                	je     0x4242d5
424295:	8b 85 2c fe ff ff    	mov    -0x1d4(%ebp),%eax
42429b:	83 f8 73             	cmp    $0x73,%eax
42429e:	73 0f                	jae    0x4242af
4242a0:	89 bc 85 30 fe ff ff 	mov    %edi,-0x1d0(%ebp,%eax,4)
4242a7:	ff 85 2c fe ff ff    	incl   -0x1d4(%ebp)
4242ad:	eb 26                	jmp    0x4242d5
4242af:	33 c0                	xor    %eax,%eax
4242b1:	50                   	push   %eax
4242b2:	89 85 9c f6 ff ff    	mov    %eax,-0x964(%ebp)
4242b8:	89 85 2c fe ff ff    	mov    %eax,-0x1d4(%ebp)
4242be:	8d 85 a0 f6 ff ff    	lea    -0x960(%ebp),%eax
4242c4:	50                   	push   %eax
4242c5:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
4242cb:	53                   	push   %ebx
4242cc:	50                   	push   %eax
4242cd:	e8 ba 00 00 00       	call   0x42438c
4242d2:	83 c4 10             	add    $0x10,%esp
4242d5:	8d 85 5c fc ff ff    	lea    -0x3a4(%ebp),%eax
4242db:	50                   	push   %eax
4242dc:	8d 85 2c fe ff ff    	lea    -0x1d4(%ebp),%eax
4242e2:	50                   	push   %eax
4242e3:	e8 b8 ea fe ff       	call   0x412da0
4242e8:	59                   	pop    %ecx
4242e9:	59                   	pop    %ecx
4242ea:	8b 8d 88 f8 ff ff    	mov    -0x778(%ebp),%ecx
4242f0:	6a 08                	push   $0x8
4242f2:	5f                   	pop    %edi
4242f3:	2b ce                	sub    %esi,%ecx
4242f5:	33 d2                	xor    %edx,%edx
4242f7:	f7 b5 8c f8 ff ff    	divl   -0x774(%ebp)
4242fd:	80 c2 30             	add    $0x30,%dl
424300:	3b cf                	cmp    %edi,%ecx
424302:	72 03                	jb     0x424307
424304:	88 14 37             	mov    %dl,(%edi,%esi,1)
424307:	4f                   	dec    %edi
424308:	83 ff ff             	cmp    $0xffffffff,%edi
42430b:	75 e8                	jne    0x4242f5
42430d:	83 f9 09             	cmp    $0x9,%ecx
424310:	76 03                	jbe    0x424315
424312:	6a 09                	push   $0x9
424314:	59                   	pop    %ecx
424315:	03 f1                	add    %ecx,%esi
424317:	89 b5 b4 f8 ff ff    	mov    %esi,-0x74c(%ebp)
42431d:	3b b5 88 f8 ff ff    	cmp    -0x778(%ebp),%esi
424323:	0f 85 2d ff ff ff    	jne    0x424256
424329:	c6 06 00             	movb   $0x0,(%esi)
42432c:	eb 2a                	jmp    0x424358
42432e:	68 38 f5 42 00       	push   $0x42f538
424333:	eb 13                	jmp    0x424348
424335:	68 30 f5 42 00       	push   $0x42f530
42433a:	eb 0c                	jmp    0x424348
42433c:	68 28 f5 42 00       	push   $0x42f528
424341:	eb 05                	jmp    0x424348
424343:	68 20 f5 42 00       	push   $0x42f520
424348:	ff 75 1c             	push   0x1c(%ebp)
42434b:	53                   	push   %ebx
42434c:	e8 14 38 ff ff       	call   0x417b65
424351:	83 c4 0c             	add    $0xc,%esp
424354:	85 c0                	test   %eax,%eax
424356:	75 27                	jne    0x42437f
424358:	80 bd 74 f8 ff ff 00 	cmpb   $0x0,-0x78c(%ebp)
42435f:	5f                   	pop    %edi
424360:	5e                   	pop    %esi
424361:	5b                   	pop    %ebx
424362:	74 0d                	je     0x424371
424364:	8d 85 6c f8 ff ff    	lea    -0x794(%ebp),%eax
42436a:	50                   	push   %eax
42436b:	e8 fc 18 00 00       	call   0x425c6c
424370:	59                   	pop    %ecx
424371:	8b 4d fc             	mov    -0x4(%ebp),%ecx
424374:	33 cd                	xor    %ebp,%ecx
424376:	e8 e5 2c fe ff       	call   0x407060
42437b:	8b e5                	mov    %ebp,%esp
42437d:	5d                   	pop    %ebp
42437e:	c3                   	ret
42437f:	33 c0                	xor    %eax,%eax
424381:	50                   	push   %eax
424382:	50                   	push   %eax
424383:	50                   	push   %eax
424384:	50                   	push   %eax
424385:	50                   	push   %eax
424386:	e8 84 79 fe ff       	call   0x40bd0f
42438b:	cc                   	int3
42438c:	8b ff                	mov    %edi,%edi
42438e:	55                   	push   %ebp
42438f:	8b ec                	mov    %esp,%ebp
424391:	56                   	push   %esi
424392:	8b 75 14             	mov    0x14(%ebp),%esi
424395:	85 f6                	test   %esi,%esi
424397:	75 04                	jne    0x42439d
424399:	33 c0                	xor    %eax,%eax
42439b:	eb 6d                	jmp    0x42440a
42439d:	8b 45 08             	mov    0x8(%ebp),%eax
4243a0:	85 c0                	test   %eax,%eax
4243a2:	75 13                	jne    0x4243b7
4243a4:	e8 c2 06 ff ff       	call   0x414a6b
4243a9:	6a 16                	push   $0x16
4243ab:	5e                   	pop    %esi
4243ac:	89 30                	mov    %esi,(%eax)
4243ae:	e8 2f 79 fe ff       	call   0x40bce2
4243b3:	8b c6                	mov    %esi,%eax
4243b5:	eb 53                	jmp    0x42440a
4243b7:	57                   	push   %edi
4243b8:	8b 7d 10             	mov    0x10(%ebp),%edi
4243bb:	85 ff                	test   %edi,%edi
4243bd:	74 14                	je     0x4243d3
4243bf:	39 75 0c             	cmp    %esi,0xc(%ebp)
4243c2:	72 0f                	jb     0x4243d3
4243c4:	56                   	push   %esi
4243c5:	57                   	push   %edi
4243c6:	50                   	push   %eax
4243c7:	e8 94 40 fe ff       	call   0x408460
4243cc:	83 c4 0c             	add    $0xc,%esp
4243cf:	33 c0                	xor    %eax,%eax
4243d1:	eb 36                	jmp    0x424409
4243d3:	ff 75 0c             	push   0xc(%ebp)
4243d6:	6a 00                	push   $0x0
4243d8:	50                   	push   %eax
4243d9:	e8 02 46 fe ff       	call   0x4089e0
4243de:	83 c4 0c             	add    $0xc,%esp
4243e1:	85 ff                	test   %edi,%edi
4243e3:	75 09                	jne    0x4243ee
4243e5:	e8 81 06 ff ff       	call   0x414a6b
4243ea:	6a 16                	push   $0x16
4243ec:	eb 0c                	jmp    0x4243fa
4243ee:	39 75 0c             	cmp    %esi,0xc(%ebp)
4243f1:	73 13                	jae    0x424406
4243f3:	e8 73 06 ff ff       	call   0x414a6b
4243f8:	6a 22                	push   $0x22
4243fa:	5e                   	pop    %esi
4243fb:	89 30                	mov    %esi,(%eax)
4243fd:	e8 e0 78 fe ff       	call   0x40bce2
424402:	8b c6                	mov    %esi,%eax
424404:	eb 03                	jmp    0x424409
424406:	6a 16                	push   $0x16
424408:	58                   	pop    %eax
424409:	5f                   	pop    %edi
42440a:	5e                   	pop    %esi
42440b:	5d                   	pop    %ebp
42440c:	c3                   	ret
42440d:	8b ff                	mov    %edi,%edi
42440f:	55                   	push   %ebp
424410:	8b ec                	mov    %esp,%ebp
424412:	57                   	push   %edi
424413:	ff 75 0c             	push   0xc(%ebp)
424416:	e8 64 63 ff ff       	call   0x41a77f
42441b:	59                   	pop    %ecx
42441c:	8b 4d 0c             	mov    0xc(%ebp),%ecx
42441f:	8b f8                	mov    %eax,%edi
424421:	8b 49 0c             	mov    0xc(%ecx),%ecx
424424:	f6 c1 06             	test   $0x6,%cl
424427:	75 1f                	jne    0x424448
424429:	e8 3d 06 ff ff       	call   0x414a6b
42442e:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
424434:	8b 45 0c             	mov    0xc(%ebp),%eax
424437:	6a 10                	push   $0x10
424439:	59                   	pop    %ecx
42443a:	83 c0 0c             	add    $0xc,%eax
42443d:	f0 09 08             	lock or %ecx,(%eax)
424440:	83 c8 ff             	or     $0xffffffff,%eax
424443:	e9 d3 00 00 00       	jmp    0x42451b
424448:	8b 45 0c             	mov    0xc(%ebp),%eax
42444b:	8b 40 0c             	mov    0xc(%eax),%eax
42444e:	c1 e8 0c             	shr    $0xc,%eax
424451:	a8 01                	test   $0x1,%al
424453:	74 0d                	je     0x424462
424455:	e8 11 06 ff ff       	call   0x414a6b
42445a:	c7 00 22 00 00 00    	movl   $0x22,(%eax)
424460:	eb d2                	jmp    0x424434
424462:	8b 45 0c             	mov    0xc(%ebp),%eax
424465:	8b 40 0c             	mov    0xc(%eax),%eax
424468:	a8 01                	test   $0x1,%al
42446a:	74 28                	je     0x424494
42446c:	8b 45 0c             	mov    0xc(%ebp),%eax
42446f:	83 60 08 00          	andl   $0x0,0x8(%eax)
424473:	8b 45 0c             	mov    0xc(%ebp),%eax
424476:	8b 40 0c             	mov    0xc(%eax),%eax
424479:	c1 e8 03             	shr    $0x3,%eax
42447c:	a8 01                	test   $0x1,%al
42447e:	8b 45 0c             	mov    0xc(%ebp),%eax
424481:	74 b4                	je     0x424437
424483:	8b 48 04             	mov    0x4(%eax),%ecx
424486:	89 08                	mov    %ecx,(%eax)
424488:	8b 45 0c             	mov    0xc(%ebp),%eax
42448b:	6a fe                	push   $0xfffffffe
42448d:	59                   	pop    %ecx
42448e:	83 c0 0c             	add    $0xc,%eax
424491:	f0 21 08             	lock and %ecx,(%eax)
424494:	8b 45 0c             	mov    0xc(%ebp),%eax
424497:	53                   	push   %ebx
424498:	6a 02                	push   $0x2
42449a:	5b                   	pop    %ebx
42449b:	83 c0 0c             	add    $0xc,%eax
42449e:	f0 09 18             	lock or %ebx,(%eax)
4244a1:	8b 45 0c             	mov    0xc(%ebp),%eax
4244a4:	6a f7                	push   $0xfffffff7
4244a6:	59                   	pop    %ecx
4244a7:	83 c0 0c             	add    $0xc,%eax
4244aa:	f0 21 08             	lock and %ecx,(%eax)
4244ad:	8b 45 0c             	mov    0xc(%ebp),%eax
4244b0:	83 60 08 00          	andl   $0x0,0x8(%eax)
4244b4:	8b 45 0c             	mov    0xc(%ebp),%eax
4244b7:	8b 40 0c             	mov    0xc(%eax),%eax
4244ba:	a9 c0 04 00 00       	test   $0x4c0,%eax
4244bf:	75 33                	jne    0x4244f4
4244c1:	56                   	push   %esi
4244c2:	8b 75 0c             	mov    0xc(%ebp),%esi
4244c5:	6a 01                	push   $0x1
4244c7:	e8 59 79 fe ff       	call   0x40be25
4244cc:	59                   	pop    %ecx
4244cd:	3b f0                	cmp    %eax,%esi
4244cf:	74 0e                	je     0x4244df
4244d1:	8b 75 0c             	mov    0xc(%ebp),%esi
4244d4:	53                   	push   %ebx
4244d5:	e8 4b 79 fe ff       	call   0x40be25
4244da:	59                   	pop    %ecx
4244db:	3b f0                	cmp    %eax,%esi
4244dd:	75 0b                	jne    0x4244ea
4244df:	57                   	push   %edi
4244e0:	e8 04 03 00 00       	call   0x4247e9
4244e5:	59                   	pop    %ecx
4244e6:	85 c0                	test   %eax,%eax
4244e8:	75 09                	jne    0x4244f3
4244ea:	ff 75 0c             	push   0xc(%ebp)
4244ed:	e8 4d 03 00 00       	call   0x42483f
4244f2:	59                   	pop    %ecx
4244f3:	5e                   	pop    %esi
4244f4:	ff 75 0c             	push   0xc(%ebp)
4244f7:	8b 5d 08             	mov    0x8(%ebp),%ebx
4244fa:	53                   	push   %ebx
4244fb:	e8 33 01 00 00       	call   0x424633
424500:	59                   	pop    %ecx
424501:	59                   	pop    %ecx
424502:	84 c0                	test   %al,%al
424504:	75 11                	jne    0x424517
424506:	8b 45 0c             	mov    0xc(%ebp),%eax
424509:	6a 10                	push   $0x10
42450b:	59                   	pop    %ecx
42450c:	83 c0 0c             	add    $0xc,%eax
42450f:	f0 09 08             	lock or %ecx,(%eax)
424512:	83 c8 ff             	or     $0xffffffff,%eax
424515:	eb 03                	jmp    0x42451a
424517:	0f b6 c3             	movzbl %bl,%eax
42451a:	5b                   	pop    %ebx
42451b:	5f                   	pop    %edi
42451c:	5d                   	pop    %ebp
42451d:	c3                   	ret