4131d4:	5f                   	pop    %edi
4131d5:	5e                   	pop    %esi
4131d6:	5b                   	pop    %ebx
4131d7:	8b e5                	mov    %ebp,%esp
4131d9:	5d                   	pop    %ebp
4131da:	c3                   	ret
4131db:	8b 45 ec             	mov    -0x14(%ebp),%eax
4131de:	8b 08                	mov    (%eax),%ecx
4131e0:	8b 01                	mov    (%ecx),%eax
4131e2:	33 d2                	xor    %edx,%edx
4131e4:	3d 05 00 00 c0       	cmp    $0xc0000005,%eax
4131e9:	0f 94 c2             	sete   %dl
4131ec:	8b c2                	mov    %edx,%eax
4131ee:	c3                   	ret
4131ef:	8b 65 e8             	mov    -0x18(%ebp),%esp
4131f2:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4131f9:	33 c0                	xor    %eax,%eax
4131fb:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4131fe:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
413205:	59                   	pop    %ecx
413206:	5f                   	pop    %edi
413207:	5e                   	pop    %esi
413208:	5b                   	pop    %ebx
413209:	8b e5                	mov    %ebp,%esp
41320b:	5d                   	pop    %ebp
41320c:	c3                   	ret
41320d:	55                   	push   %ebp
41320e:	8b ec                	mov    %esp,%ebp
413210:	83 ec 04             	sub    $0x4,%esp
413213:	89 7d fc             	mov    %edi,-0x4(%ebp)
413216:	8b 7d 08             	mov    0x8(%ebp),%edi
413219:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41321c:	c1 e9 07             	shr    $0x7,%ecx
41321f:	66 0f ef c0          	pxor   %xmm0,%xmm0
413223:	eb 08                	jmp    0x41322d
413225:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
41322c:	90                   	nop
41322d:	66 0f 7f 07          	movdqa %xmm0,(%edi)
413231:	66 0f 7f 47 10       	movdqa %xmm0,0x10(%edi)
413236:	66 0f 7f 47 20       	movdqa %xmm0,0x20(%edi)
41323b:	66 0f 7f 47 30       	movdqa %xmm0,0x30(%edi)
413240:	66 0f 7f 47 40       	movdqa %xmm0,0x40(%edi)
413245:	66 0f 7f 47 50       	movdqa %xmm0,0x50(%edi)
41324a:	66 0f 7f 47 60       	movdqa %xmm0,0x60(%edi)
41324f:	66 0f 7f 47 70       	movdqa %xmm0,0x70(%edi)
413254:	8d bf 80 00 00 00    	lea    0x80(%edi),%edi
41325a:	49                   	dec    %ecx
41325b:	75 d0                	jne    0x41322d
41325d:	8b 7d fc             	mov    -0x4(%ebp),%edi
413260:	8b e5                	mov    %ebp,%esp
413262:	5d                   	pop    %ebp
413263:	c3                   	ret
413264:	55                   	push   %ebp
413265:	8b ec                	mov    %esp,%ebp
413267:	83 ec 10             	sub    $0x10,%esp
41326a:	89 7d fc             	mov    %edi,-0x4(%ebp)
41326d:	8b 45 08             	mov    0x8(%ebp),%eax
413270:	99                   	cltd
413271:	8b f8                	mov    %eax,%edi
413273:	33 fa                	xor    %edx,%edi
413275:	2b fa                	sub    %edx,%edi
413277:	83 e7 0f             	and    $0xf,%edi
41327a:	33 fa                	xor    %edx,%edi
41327c:	2b fa                	sub    %edx,%edi
41327e:	85 ff                	test   %edi,%edi
413280:	75 3c                	jne    0x4132be
413282:	8b 4d 10             	mov    0x10(%ebp),%ecx
413285:	8b d1                	mov    %ecx,%edx
413287:	83 e2 7f             	and    $0x7f,%edx
41328a:	89 55 f4             	mov    %edx,-0xc(%ebp)
41328d:	3b ca                	cmp    %edx,%ecx
41328f:	74 12                	je     0x4132a3
413291:	2b ca                	sub    %edx,%ecx
413293:	51                   	push   %ecx
413294:	50                   	push   %eax
413295:	e8 73 ff ff ff       	call   0x41320d
41329a:	83 c4 08             	add    $0x8,%esp
41329d:	8b 45 08             	mov    0x8(%ebp),%eax
4132a0:	8b 55 f4             	mov    -0xc(%ebp),%edx
4132a3:	85 d2                	test   %edx,%edx
4132a5:	74 45                	je     0x4132ec
4132a7:	03 45 10             	add    0x10(%ebp),%eax
4132aa:	2b c2                	sub    %edx,%eax
4132ac:	89 45 f8             	mov    %eax,-0x8(%ebp)
4132af:	33 c0                	xor    %eax,%eax
4132b1:	8b 7d f8             	mov    -0x8(%ebp),%edi
4132b4:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4132b7:	f3 aa                	rep stos %al,%es:(%edi)
4132b9:	8b 45 08             	mov    0x8(%ebp),%eax
4132bc:	eb 2e                	jmp    0x4132ec
4132be:	f7 df                	neg    %edi
4132c0:	83 c7 10             	add    $0x10,%edi
4132c3:	89 7d f0             	mov    %edi,-0x10(%ebp)
4132c6:	33 c0                	xor    %eax,%eax
4132c8:	8b 7d 08             	mov    0x8(%ebp),%edi
4132cb:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4132ce:	f3 aa                	rep stos %al,%es:(%edi)
4132d0:	8b 45 f0             	mov    -0x10(%ebp),%eax
4132d3:	8b 4d 08             	mov    0x8(%ebp),%ecx
4132d6:	8b 55 10             	mov    0x10(%ebp),%edx
4132d9:	03 c8                	add    %eax,%ecx
4132db:	2b d0                	sub    %eax,%edx
4132dd:	52                   	push   %edx
4132de:	6a 00                	push   $0x0
4132e0:	51                   	push   %ecx
4132e1:	e8 7e ff ff ff       	call   0x413264
4132e6:	83 c4 0c             	add    $0xc,%esp
4132e9:	8b 45 08             	mov    0x8(%ebp),%eax
4132ec:	8b 7d fc             	mov    -0x4(%ebp),%edi
4132ef:	8b e5                	mov    %ebp,%esp
4132f1:	5d                   	pop    %ebp
4132f2:	c3                   	ret
4132f3:	6a 10                	push   $0x10
4132f5:	68 70 9a 42 00       	push   $0x429a70
4132fa:	e8 dd 70 ff ff       	call   0x40a3dc
4132ff:	33 db                	xor    %ebx,%ebx
413301:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
413304:	6a 01                	push   $0x1
413306:	e8 d9 65 ff ff       	call   0x4098e4
41330b:	59                   	pop    %ecx
41330c:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41330f:	6a 03                	push   $0x3
413311:	5f                   	pop    %edi
413312:	89 7d e0             	mov    %edi,-0x20(%ebp)
413315:	3b 3d 80 23 c7 00    	cmp    0xc72380,%edi
41331b:	7d 57                	jge    0x413374
41331d:	8b f7                	mov    %edi,%esi
41331f:	c1 e6 02             	shl    $0x2,%esi
413322:	a1 68 13 c7 00       	mov    0xc71368,%eax
413327:	03 c6                	add    %esi,%eax
413329:	39 18                	cmp    %ebx,(%eax)
41332b:	74 44                	je     0x413371
41332d:	8b 00                	mov    (%eax),%eax
41332f:	f6 40 0c 83          	testb  $0x83,0xc(%eax)
413333:	74 0f                	je     0x413344
413335:	50                   	push   %eax
413336:	e8 ab 24 ff ff       	call   0x4057e6
41333b:	59                   	pop    %ecx
41333c:	83 f8 ff             	cmp    $0xffffffff,%eax
41333f:	74 03                	je     0x413344
413341:	ff 45 e4             	incl   -0x1c(%ebp)
413344:	83 ff 14             	cmp    $0x14,%edi
413347:	7c 28                	jl     0x413371
413349:	a1 68 13 c7 00       	mov    0xc71368,%eax
41334e:	8b 04 06             	mov    (%esi,%eax,1),%eax
413351:	83 c0 20             	add    $0x20,%eax
413354:	50                   	push   %eax
413355:	ff 15 8c a0 41 00    	call   *0x41a08c
41335b:	a1 68 13 c7 00       	mov    0xc71368,%eax
413360:	ff 34 06             	push   (%esi,%eax,1)
413363:	e8 b8 1c ff ff       	call   0x405020
413368:	59                   	pop    %ecx
413369:	a1 68 13 c7 00       	mov    0xc71368,%eax
41336e:	89 1c 06             	mov    %ebx,(%esi,%eax,1)
413371:	47                   	inc    %edi
413372:	eb 9e                	jmp    0x413312
413374:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
41337b:	e8 09 00 00 00       	call   0x413389
413380:	8b 45 e4             	mov    -0x1c(%ebp),%eax
413383:	e8 99 70 ff ff       	call   0x40a421
413388:	c3                   	ret
413389:	6a 01                	push   $0x1
41338b:	e8 7a 64 ff ff       	call   0x40980a
413390:	59                   	pop    %ecx
413391:	c3                   	ret
413392:	8b ff                	mov    %edi,%edi
413394:	55                   	push   %ebp
413395:	8b ec                	mov    %esp,%ebp
413397:	83 ec 30             	sub    $0x30,%esp
41339a:	53                   	push   %ebx
41339b:	33 db                	xor    %ebx,%ebx
41339d:	f6 45 10 80          	testb  $0x80,0x10(%ebp)
4133a1:	56                   	push   %esi
4133a2:	57                   	push   %edi
4133a3:	8b f0                	mov    %eax,%esi
4133a5:	89 5d e0             	mov    %ebx,-0x20(%ebp)
4133a8:	88 5d fe             	mov    %bl,-0x2(%ebp)
4133ab:	c7 45 d0 0c 00 00 00 	movl   $0xc,-0x30(%ebp)
4133b2:	89 5d d4             	mov    %ebx,-0x2c(%ebp)
4133b5:	74 09                	je     0x4133c0
4133b7:	89 5d d8             	mov    %ebx,-0x28(%ebp)
4133ba:	c6 45 ff 10          	movb   $0x10,-0x1(%ebp)
4133be:	eb 0a                	jmp    0x4133ca
4133c0:	c7 45 d8 01 00 00 00 	movl   $0x1,-0x28(%ebp)
4133c7:	88 5d ff             	mov    %bl,-0x1(%ebp)
4133ca:	8d 45 e0             	lea    -0x20(%ebp),%eax
4133cd:	50                   	push   %eax
4133ce:	e8 bb 32 00 00       	call   0x41668e
4133d3:	59                   	pop    %ecx
4133d4:	85 c0                	test   %eax,%eax
4133d6:	74 0d                	je     0x4133e5
4133d8:	53                   	push   %ebx
4133d9:	53                   	push   %ebx
4133da:	53                   	push   %ebx
4133db:	53                   	push   %ebx
4133dc:	53                   	push   %ebx
4133dd:	e8 1b 1d ff ff       	call   0x4050fd
4133e2:	83 c4 14             	add    $0x14,%esp
4133e5:	8b 4d 10             	mov    0x10(%ebp),%ecx
4133e8:	b8 00 80 00 00       	mov    $0x8000,%eax
4133ed:	85 c8                	test   %ecx,%eax
4133ef:	75 11                	jne    0x413402
4133f1:	f7 c1 00 40 07 00    	test   $0x74000,%ecx
4133f7:	75 05                	jne    0x4133fe
4133f9:	39 45 e0             	cmp    %eax,-0x20(%ebp)
4133fc:	74 04                	je     0x413402
4133fe:	80 4d ff 80          	orb    $0x80,-0x1(%ebp)
413402:	8b c1                	mov    %ecx,%eax
413404:	83 e0 03             	and    $0x3,%eax
413407:	2b c3                	sub    %ebx,%eax
413409:	ba 00 00 00 c0       	mov    $0xc0000000,%edx
41340e:	bf 00 00 00 80       	mov    $0x80000000,%edi
413413:	74 47                	je     0x41345c
413415:	48                   	dec    %eax
413416:	74 2e                	je     0x413446
413418:	48                   	dec    %eax
413419:	74 26                	je     0x413441
41341b:	e8 c8 26 ff ff       	call   0x405ae8
413420:	89 18                	mov    %ebx,(%eax)
413422:	83 0e ff             	orl    $0xffffffff,(%esi)
413425:	e8 ab 26 ff ff       	call   0x405ad5
41342a:	6a 16                	push   $0x16
41342c:	5e                   	pop    %esi
41342d:	53                   	push   %ebx
41342e:	53                   	push   %ebx
41342f:	53                   	push   %ebx
413430:	53                   	push   %ebx
413431:	53                   	push   %ebx
413432:	89 30                	mov    %esi,(%eax)
413434:	e8 ec 1d ff ff       	call   0x405225
413439:	83 c4 14             	add    $0x14,%esp
41343c:	e9 00 05 00 00       	jmp    0x413941
413441:	89 55 f8             	mov    %edx,-0x8(%ebp)
413444:	eb 19                	jmp    0x41345f
413446:	f6 c1 08             	test   $0x8,%cl
413449:	74 08                	je     0x413453
41344b:	f7 c1 00 00 07 00    	test   $0x70000,%ecx
413451:	75 ee                	jne    0x413441
413453:	c7 45 f8 00 00 00 40 	movl   $0x40000000,-0x8(%ebp)
41345a:	eb 03                	jmp    0x41345f
41345c:	89 7d f8             	mov    %edi,-0x8(%ebp)
41345f:	8b 45 14             	mov    0x14(%ebp),%eax
413462:	6a 10                	push   $0x10
413464:	59                   	pop    %ecx
413465:	2b c1                	sub    %ecx,%eax
413467:	74 37                	je     0x4134a0
413469:	2b c1                	sub    %ecx,%eax
41346b:	74 2a                	je     0x413497
41346d:	2b c1                	sub    %ecx,%eax
41346f:	74 1d                	je     0x41348e
413471:	2b c1                	sub    %ecx,%eax
413473:	74 10                	je     0x413485
413475:	83 e8 40             	sub    $0x40,%eax
413478:	75 a1                	jne    0x41341b
41347a:	39 7d f8             	cmp    %edi,-0x8(%ebp)
41347d:	0f 94 c0             	sete   %al
413480:	89 45 f0             	mov    %eax,-0x10(%ebp)
413483:	eb 1e                	jmp    0x4134a3
413485:	c7 45 f0 03 00 00 00 	movl   $0x3,-0x10(%ebp)
41348c:	eb 15                	jmp    0x4134a3
41348e:	c7 45 f0 02 00 00 00 	movl   $0x2,-0x10(%ebp)
413495:	eb 0c                	jmp    0x4134a3
413497:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
41349e:	eb 03                	jmp    0x4134a3
4134a0:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4134a3:	8b 45 10             	mov    0x10(%ebp),%eax
4134a6:	ba 00 07 00 00       	mov    $0x700,%edx
4134ab:	23 c2                	and    %edx,%eax
4134ad:	b9 00 04 00 00       	mov    $0x400,%ecx
4134b2:	3b c1                	cmp    %ecx,%eax
4134b4:	bf 00 01 00 00       	mov    $0x100,%edi
4134b9:	7f 3b                	jg     0x4134f6
4134bb:	74 30                	je     0x4134ed
4134bd:	3b c3                	cmp    %ebx,%eax
4134bf:	74 2c                	je     0x4134ed
4134c1:	3b c7                	cmp    %edi,%eax
4134c3:	74 1f                	je     0x4134e4
4134c5:	3d 00 02 00 00       	cmp    $0x200,%eax
4134ca:	0f 84 94 00 00 00    	je     0x413564
4134d0:	3d 00 03 00 00       	cmp    $0x300,%eax
4134d5:	0f 85 40 ff ff ff    	jne    0x41341b
4134db:	c7 45 ec 02 00 00 00 	movl   $0x2,-0x14(%ebp)
4134e2:	eb 2f                	jmp    0x413513
4134e4:	c7 45 ec 04 00 00 00 	movl   $0x4,-0x14(%ebp)
4134eb:	eb 26                	jmp    0x413513
4134ed:	c7 45 ec 03 00 00 00 	movl   $0x3,-0x14(%ebp)
4134f4:	eb 1d                	jmp    0x413513
4134f6:	3d 00 05 00 00       	cmp    $0x500,%eax
4134fb:	74 0f                	je     0x41350c
4134fd:	3d 00 06 00 00       	cmp    $0x600,%eax
413502:	74 60                	je     0x413564
413504:	3b c2                	cmp    %edx,%eax
413506:	0f 85 0f ff ff ff    	jne    0x41341b
41350c:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
413513:	8b 45 10             	mov    0x10(%ebp),%eax
413516:	c7 45 f4 80 00 00 00 	movl   $0x80,-0xc(%ebp)
41351d:	85 c7                	test   %eax,%edi
41351f:	74 16                	je     0x413537
413521:	8b 0d 8c 09 43 00    	mov    0x43098c,%ecx
413527:	f7 d1                	not    %ecx
413529:	23 4d 18             	and    0x18(%ebp),%ecx
41352c:	84 c9                	test   %cl,%cl
41352e:	78 07                	js     0x413537
413530:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
413537:	a8 40                	test   $0x40,%al
413539:	74 12                	je     0x41354d
41353b:	81 4d f4 00 00 00 04 	orl    $0x4000000,-0xc(%ebp)
413542:	81 4d f8 00 00 01 00 	orl    $0x10000,-0x8(%ebp)
413549:	83 4d f0 04          	orl    $0x4,-0x10(%ebp)
41354d:	a9 00 10 00 00       	test   $0x1000,%eax
413552:	74 03                	je     0x413557
413554:	09 7d f4             	or     %edi,-0xc(%ebp)
413557:	a8 20                	test   $0x20,%al
413559:	74 12                	je     0x41356d
41355b:	81 4d f4 00 00 00 08 	orl    $0x8000000,-0xc(%ebp)
413562:	eb 14                	jmp    0x413578
413564:	c7 45 ec 05 00 00 00 	movl   $0x5,-0x14(%ebp)
41356b:	eb a6                	jmp    0x413513
41356d:	a8 10                	test   $0x10,%al
41356f:	74 07                	je     0x413578
413571:	81 4d f4 00 00 00 10 	orl    $0x10000000,-0xc(%ebp)
413578:	e8 82 1d 00 00       	call   0x4152ff
41357d:	89 06                	mov    %eax,(%esi)
41357f:	83 f8 ff             	cmp    $0xffffffff,%eax
413582:	75 1a                	jne    0x41359e
413584:	e8 5f 25 ff ff       	call   0x405ae8
413589:	89 18                	mov    %ebx,(%eax)
41358b:	83 0e ff             	orl    $0xffffffff,(%esi)
41358e:	e8 42 25 ff ff       	call   0x405ad5
413593:	c7 00 18 00 00 00    	movl   $0x18,(%eax)
413599:	e9 8e 00 00 00       	jmp    0x41362c
41359e:	8b 45 08             	mov    0x8(%ebp),%eax
4135a1:	8b 3d 64 a1 41 00    	mov    0x41a164,%edi
4135a7:	53                   	push   %ebx
4135a8:	ff 75 f4             	push   -0xc(%ebp)
4135ab:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
4135b1:	ff 75 ec             	push   -0x14(%ebp)
4135b4:	8d 45 d0             	lea    -0x30(%ebp),%eax
4135b7:	50                   	push   %eax
4135b8:	ff 75 f0             	push   -0x10(%ebp)
4135bb:	ff 75 f8             	push   -0x8(%ebp)
4135be:	ff 75 0c             	push   0xc(%ebp)
4135c1:	ff d7                	call   *%edi
4135c3:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4135c6:	83 f8 ff             	cmp    $0xffffffff,%eax
4135c9:	75 6d                	jne    0x413638
4135cb:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4135ce:	b8 00 00 00 c0       	mov    $0xc0000000,%eax
4135d3:	23 c8                	and    %eax,%ecx
4135d5:	3b c8                	cmp    %eax,%ecx