412287:	59                   	pop    %ecx
412288:	59                   	pop    %ecx
412289:	0f ae 5d f4          	stmxcsr -0xc(%ebp)
41228d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
412290:	8b c1                	mov    %ecx,%eax
412292:	c1 e8 03             	shr    $0x3,%eax
412295:	83 e0 10             	and    $0x10,%eax
412298:	f7 c1 00 02 00 00    	test   $0x200,%ecx
41229e:	74 03                	je     0x4122a3
4122a0:	83 c8 08             	or     $0x8,%eax
4122a3:	f7 c1 00 04 00 00    	test   $0x400,%ecx
4122a9:	74 03                	je     0x4122ae
4122ab:	83 c8 04             	or     $0x4,%eax
4122ae:	f7 c1 00 08 00 00    	test   $0x800,%ecx
4122b4:	74 03                	je     0x4122b9
4122b6:	83 c8 02             	or     $0x2,%eax
4122b9:	f7 c1 00 10 00 00    	test   $0x1000,%ecx
4122bf:	74 03                	je     0x4122c4
4122c1:	83 c8 01             	or     $0x1,%eax
4122c4:	f7 c1 00 01 00 00    	test   $0x100,%ecx
4122ca:	74 05                	je     0x4122d1
4122cc:	0d 00 00 08 00       	or     $0x80000,%eax
4122d1:	8b d1                	mov    %ecx,%edx
4122d3:	bf 00 60 00 00       	mov    $0x6000,%edi
4122d8:	23 d7                	and    %edi,%edx
4122da:	74 27                	je     0x412303
4122dc:	81 fa 00 20 00 00    	cmp    $0x2000,%edx
4122e2:	74 1a                	je     0x4122fe
4122e4:	81 fa 00 40 00 00    	cmp    $0x4000,%edx
4122ea:	74 0b                	je     0x4122f7
4122ec:	3b d7                	cmp    %edi,%edx
4122ee:	75 13                	jne    0x412303
4122f0:	0d 00 03 00 00       	or     $0x300,%eax
4122f5:	eb 0c                	jmp    0x412303
4122f7:	0d 00 02 00 00       	or     $0x200,%eax
4122fc:	eb 05                	jmp    0x412303
4122fe:	0d 00 01 00 00       	or     $0x100,%eax
412303:	81 e1 40 80 00 00    	and    $0x8040,%ecx
412309:	2b cb                	sub    %ebx,%ecx
41230b:	74 1a                	je     0x412327
41230d:	81 e9 c0 7f 00 00    	sub    $0x7fc0,%ecx
412313:	74 0b                	je     0x412320
412315:	2b cb                	sub    %ebx,%ecx
412317:	75 13                	jne    0x41232c
412319:	0d 00 00 00 01       	or     $0x1000000,%eax
41231e:	eb 0c                	jmp    0x41232c
412320:	0d 00 00 00 03       	or     $0x3000000,%eax
412325:	eb 05                	jmp    0x41232c
412327:	0d 00 00 00 02       	or     $0x2000000,%eax
41232c:	8b c8                	mov    %eax,%ecx
41232e:	33 c6                	xor    %esi,%eax
412330:	0b ce                	or     %esi,%ecx
412332:	a9 1f 03 08 00       	test   $0x8031f,%eax
412337:	74 06                	je     0x41233f
412339:	81 c9 00 00 00 80    	or     $0x80000000,%ecx
41233f:	8b c1                	mov    %ecx,%eax
412341:	eb 02                	jmp    0x412345
412343:	8b c6                	mov    %esi,%eax
412345:	5f                   	pop    %edi
412346:	5e                   	pop    %esi
412347:	5b                   	pop    %ebx
412348:	c9                   	leave
412349:	c3                   	ret
41234a:	8b ff                	mov    %edi,%edi
41234c:	55                   	push   %ebp
41234d:	8b ec                	mov    %esp,%ebp
41234f:	8b 4d 08             	mov    0x8(%ebp),%ecx
412352:	8b d1                	mov    %ecx,%edx
412354:	c1 ea 04             	shr    $0x4,%edx
412357:	83 e2 01             	and    $0x1,%edx
41235a:	8b c2                	mov    %edx,%eax
41235c:	f6 c1 08             	test   $0x8,%cl
41235f:	74 06                	je     0x412367
412361:	83 ca 04             	or     $0x4,%edx
412364:	0f b7 c2             	movzwl %dx,%eax
412367:	f6 c1 04             	test   $0x4,%cl
41236a:	74 03                	je     0x41236f
41236c:	83 c8 08             	or     $0x8,%eax
41236f:	f6 c1 02             	test   $0x2,%cl
412372:	74 03                	je     0x412377
412374:	83 c8 10             	or     $0x10,%eax
412377:	f6 c1 01             	test   $0x1,%cl
41237a:	74 03                	je     0x41237f
41237c:	83 c8 20             	or     $0x20,%eax
41237f:	f7 c1 00 00 08 00    	test   $0x80000,%ecx
412385:	74 03                	je     0x41238a
412387:	83 c8 02             	or     $0x2,%eax
41238a:	56                   	push   %esi
41238b:	8b d1                	mov    %ecx,%edx
41238d:	be 00 03 00 00       	mov    $0x300,%esi
412392:	57                   	push   %edi
412393:	bf 00 02 00 00       	mov    $0x200,%edi
412398:	23 d6                	and    %esi,%edx
41239a:	74 23                	je     0x4123bf
41239c:	81 fa 00 01 00 00    	cmp    $0x100,%edx
4123a2:	74 16                	je     0x4123ba
4123a4:	3b d7                	cmp    %edi,%edx
4123a6:	74 0b                	je     0x4123b3
4123a8:	3b d6                	cmp    %esi,%edx
4123aa:	75 13                	jne    0x4123bf
4123ac:	0d 00 0c 00 00       	or     $0xc00,%eax
4123b1:	eb 0c                	jmp    0x4123bf
4123b3:	0d 00 08 00 00       	or     $0x800,%eax
4123b8:	eb 05                	jmp    0x4123bf
4123ba:	0d 00 04 00 00       	or     $0x400,%eax
4123bf:	8b d1                	mov    %ecx,%edx
4123c1:	81 e2 00 00 03 00    	and    $0x30000,%edx
4123c7:	74 0c                	je     0x4123d5
4123c9:	81 fa 00 00 01 00    	cmp    $0x10000,%edx
4123cf:	75 06                	jne    0x4123d7
4123d1:	0b c7                	or     %edi,%eax
4123d3:	eb 02                	jmp    0x4123d7
4123d5:	0b c6                	or     %esi,%eax
4123d7:	5f                   	pop    %edi
4123d8:	5e                   	pop    %esi
4123d9:	f7 c1 00 00 04 00    	test   $0x40000,%ecx
4123df:	74 05                	je     0x4123e6
4123e1:	0d 00 10 00 00       	or     $0x1000,%eax
4123e6:	5d                   	pop    %ebp
4123e7:	c3                   	ret
4123e8:	8b ff                	mov    %edi,%edi
4123ea:	55                   	push   %ebp
4123eb:	8b ec                	mov    %esp,%ebp
4123ed:	8b 45 08             	mov    0x8(%ebp),%eax
4123f0:	8b 4d 10             	mov    0x10(%ebp),%ecx
4123f3:	8b 55 0c             	mov    0xc(%ebp),%edx
4123f6:	89 10                	mov    %edx,(%eax)
4123f8:	89 48 04             	mov    %ecx,0x4(%eax)
4123fb:	85 c9                	test   %ecx,%ecx
4123fd:	74 02                	je     0x412401
4123ff:	89 11                	mov    %edx,(%ecx)
412401:	5d                   	pop    %ebp
412402:	c3                   	ret
412403:	8b ff                	mov    %edi,%edi
412405:	55                   	push   %ebp
412406:	8b ec                	mov    %esp,%ebp
412408:	51                   	push   %ecx
412409:	6a 01                	push   $0x1
41240b:	ff 75 10             	push   0x10(%ebp)
41240e:	51                   	push   %ecx
41240f:	51                   	push   %ecx
412410:	8b c4                	mov    %esp,%eax
412412:	ff 75 0c             	push   0xc(%ebp)
412415:	ff 75 08             	push   0x8(%ebp)
412418:	50                   	push   %eax
412419:	e8 ca ff ff ff       	call   0x4123e8
41241e:	83 c4 0c             	add    $0xc,%esp
412421:	6a 00                	push   $0x0
412423:	e8 0e b7 ff ff       	call   0x40db36
412428:	83 c4 14             	add    $0x14,%esp
41242b:	c9                   	leave
41242c:	c3                   	ret
41242d:	8b ff                	mov    %edi,%edi
41242f:	55                   	push   %ebp
412430:	8b ec                	mov    %esp,%ebp
412432:	51                   	push   %ecx
412433:	6a 01                	push   $0x1
412435:	ff 75 10             	push   0x10(%ebp)
412438:	51                   	push   %ecx
412439:	51                   	push   %ecx
41243a:	8b c4                	mov    %esp,%eax
41243c:	ff 75 0c             	push   0xc(%ebp)
41243f:	ff 75 08             	push   0x8(%ebp)
412442:	50                   	push   %eax
412443:	e8 a0 ff ff ff       	call   0x4123e8
412448:	83 c4 0c             	add    $0xc,%esp
41244b:	6a 00                	push   $0x0
41244d:	e8 07 b9 ff ff       	call   0x40dd59
412452:	83 c4 14             	add    $0x14,%esp
412455:	c9                   	leave
412456:	c3                   	ret
412457:	8b ff                	mov    %edi,%edi
412459:	55                   	push   %ebp
41245a:	8b ec                	mov    %esp,%ebp
41245c:	83 ec 10             	sub    $0x10,%esp
41245f:	53                   	push   %ebx
412460:	57                   	push   %edi
412461:	8b 7d 0c             	mov    0xc(%ebp),%edi
412464:	85 ff                	test   %edi,%edi
412466:	0f 84 19 01 00 00    	je     0x412585
41246c:	8b 5d 10             	mov    0x10(%ebp),%ebx
41246f:	85 db                	test   %ebx,%ebx
412471:	0f 84 0e 01 00 00    	je     0x412585
412477:	80 3f 00             	cmpb   $0x0,(%edi)
41247a:	75 15                	jne    0x412491
41247c:	8b 45 08             	mov    0x8(%ebp),%eax
41247f:	85 c0                	test   %eax,%eax
412481:	0f 84 0c 01 00 00    	je     0x412593
412487:	33 c9                	xor    %ecx,%ecx
412489:	66 89 08             	mov    %cx,(%eax)
41248c:	e9 02 01 00 00       	jmp    0x412593
412491:	56                   	push   %esi
412492:	ff 75 14             	push   0x14(%ebp)
412495:	8d 4d f0             	lea    -0x10(%ebp),%ecx
412498:	e8 ad a5 ff ff       	call   0x40ca4a
41249d:	8b 45 f4             	mov    -0xc(%ebp),%eax
4124a0:	81 78 08 e9 fd 00 00 	cmpl   $0xfde9,0x8(%eax)
4124a7:	75 21                	jne    0x4124ca
4124a9:	68 28 73 42 00       	push   $0x427328
4124ae:	53                   	push   %ebx
4124af:	57                   	push   %edi
4124b0:	ff 75 08             	push   0x8(%ebp)
4124b3:	e8 4f 26 00 00       	call   0x414b07
4124b8:	8b f0                	mov    %eax,%esi
4124ba:	83 c4 10             	add    $0x10,%esp
4124bd:	85 f6                	test   %esi,%esi
4124bf:	0f 89 ab 00 00 00    	jns    0x412570
4124c5:	e9 a3 00 00 00       	jmp    0x41256d
4124ca:	83 b8 a8 00 00 00 00 	cmpl   $0x0,0xa8(%eax)
4124d1:	75 15                	jne    0x4124e8
4124d3:	8b 4d 08             	mov    0x8(%ebp),%ecx
4124d6:	85 c9                	test   %ecx,%ecx
4124d8:	74 06                	je     0x4124e0
4124da:	0f b6 07             	movzbl (%edi),%eax
4124dd:	66 89 01             	mov    %ax,(%ecx)
4124e0:	33 f6                	xor    %esi,%esi
4124e2:	46                   	inc    %esi
4124e3:	e9 88 00 00 00       	jmp    0x412570
4124e8:	8d 45 f4             	lea    -0xc(%ebp),%eax
4124eb:	50                   	push   %eax
4124ec:	0f b6 07             	movzbl (%edi),%eax
4124ef:	50                   	push   %eax
4124f0:	e8 ac 25 00 00       	call   0x414aa1
4124f5:	59                   	pop    %ecx
4124f6:	59                   	pop    %ecx
4124f7:	85 c0                	test   %eax,%eax
4124f9:	74 42                	je     0x41253d
4124fb:	8b 75 f4             	mov    -0xc(%ebp),%esi
4124fe:	83 7e 04 01          	cmpl   $0x1,0x4(%esi)
412502:	7e 29                	jle    0x41252d
412504:	3b 5e 04             	cmp    0x4(%esi),%ebx
412507:	7c 27                	jl     0x412530
412509:	33 c0                	xor    %eax,%eax
41250b:	39 45 08             	cmp    %eax,0x8(%ebp)
41250e:	0f 95 c0             	setne  %al
412511:	50                   	push   %eax
412512:	ff 75 08             	push   0x8(%ebp)
412515:	ff 76 04             	push   0x4(%esi)
412518:	57                   	push   %edi
412519:	6a 09                	push   $0x9
41251b:	ff 76 08             	push   0x8(%esi)
41251e:	e8 a6 da ff ff       	call   0x40ffc9
412523:	8b 75 f4             	mov    -0xc(%ebp),%esi
412526:	83 c4 18             	add    $0x18,%esp
412529:	85 c0                	test   %eax,%eax
41252b:	75 0b                	jne    0x412538
41252d:	3b 5e 04             	cmp    0x4(%esi),%ebx
412530:	72 30                	jb     0x412562
412532:	80 7f 01 00          	cmpb   $0x0,0x1(%edi)
412536:	74 2a                	je     0x412562
412538:	8b 76 04             	mov    0x4(%esi),%esi
41253b:	eb 33                	jmp    0x412570
41253d:	33 c0                	xor    %eax,%eax
41253f:	39 45 08             	cmp    %eax,0x8(%ebp)
412542:	0f 95 c0             	setne  %al
412545:	33 f6                	xor    %esi,%esi
412547:	50                   	push   %eax
412548:	ff 75 08             	push   0x8(%ebp)
41254b:	8b 45 f4             	mov    -0xc(%ebp),%eax
41254e:	46                   	inc    %esi
41254f:	56                   	push   %esi
412550:	57                   	push   %edi
412551:	6a 09                	push   $0x9
412553:	ff 70 08             	push   0x8(%eax)
412556:	e8 6e da ff ff       	call   0x40ffc9
41255b:	83 c4 18             	add    $0x18,%esp
41255e:	85 c0                	test   %eax,%eax
412560:	75 0e                	jne    0x412570
412562:	e8 6c c7 ff ff       	call   0x40ecd3
412567:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
41256d:	83 ce ff             	or     $0xffffffff,%esi
412570:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
412574:	74 0a                	je     0x412580
412576:	8b 4d f0             	mov    -0x10(%ebp),%ecx
412579:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
412580:	8b c6                	mov    %esi,%eax
412582:	5e                   	pop    %esi
412583:	eb 10                	jmp    0x412595
412585:	83 25 28 73 42 00 00 	andl   $0x0,0x427328
41258c:	83 25 2c 73 42 00 00 	andl   $0x0,0x42732c
412593:	33 c0                	xor    %eax,%eax
412595:	5f                   	pop    %edi
412596:	5b                   	pop    %ebx
412597:	c9                   	leave
412598:	c3                   	ret
412599:	8b ff                	mov    %edi,%edi
41259b:	55                   	push   %ebp
41259c:	8b ec                	mov    %esp,%ebp
41259e:	6a 00                	push   $0x0
4125a0:	ff 75 10             	push   0x10(%ebp)
4125a3:	ff 75 0c             	push   0xc(%ebp)
4125a6:	ff 75 08             	push   0x8(%ebp)
4125a9:	e8 a9 fe ff ff       	call   0x412457
4125ae:	83 c4 10             	add    $0x10,%esp
4125b1:	5d                   	pop    %ebp
4125b2:	c3                   	ret
4125b3:	8b ff                	mov    %edi,%edi
4125b5:	55                   	push   %ebp
4125b6:	8b ec                	mov    %esp,%ebp
4125b8:	56                   	push   %esi
4125b9:	8b 75 0c             	mov    0xc(%ebp),%esi
4125bc:	8b 06                	mov    (%esi),%eax
4125be:	3b 05 1c 72 42 00    	cmp    0x42721c,%eax
4125c4:	74 17                	je     0x4125dd
4125c6:	8b 4d 08             	mov    0x8(%ebp),%ecx
4125c9:	a1 a0 66 42 00       	mov    0x4266a0,%eax
4125ce:	85 81 50 03 00 00    	test   %eax,0x350(%ecx)
4125d4:	75 07                	jne    0x4125dd
4125d6:	e8 1b eb ff ff       	call   0x4110f6
4125db:	89 06                	mov    %eax,(%esi)
4125dd:	5e                   	pop    %esi
4125de:	5d                   	pop    %ebp
4125df:	c3                   	ret
4125e0:	8b ff                	mov    %edi,%edi
4125e2:	55                   	push   %ebp
4125e3:	8b ec                	mov    %esp,%ebp
4125e5:	56                   	push   %esi
4125e6:	8b 75 0c             	mov    0xc(%ebp),%esi
4125e9:	8b 06                	mov    (%esi),%eax
4125eb:	3b 05 98 6e 42 00    	cmp    0x426e98,%eax
4125f1:	74 17                	je     0x41260a
4125f3:	8b 4d 08             	mov    0x8(%ebp),%ecx
4125f6:	a1 a0 66 42 00       	mov    0x4266a0,%eax
4125fb:	85 81 50 03 00 00    	test   %eax,0x350(%ecx)
412601:	75 07                	jne    0x41260a
412603:	e8 b0 d6 ff ff       	call   0x40fcb8
412608:	89 06                	mov    %eax,(%esi)
41260a:	5e                   	pop    %esi
41260b:	5d                   	pop    %ebp
41260c:	c3                   	ret
41260d:	8b ff                	mov    %edi,%edi
41260f:	55                   	push   %ebp
412610:	8b ec                	mov    %esp,%ebp
412612:	8b 45 08             	mov    0x8(%ebp),%eax
412615:	33 c9                	xor    %ecx,%ecx
412617:	56                   	push   %esi
412618:	57                   	push   %edi
412619:	be ff 07 00 00       	mov    $0x7ff,%esi
41261e:	8b 38                	mov    (%eax),%edi
412620:	8b 50 04             	mov    0x4(%eax),%edx
412623:	8b c2                	mov    %edx,%eax
412625:	c1 e8 14             	shr    $0x14,%eax
412628:	23 c6                	and    %esi,%eax
41262a:	3b c6                	cmp    %esi,%eax
41262c:	75 3b                	jne    0x412669
41262e:	8b f2                	mov    %edx,%esi
412630:	8b c7                	mov    %edi,%eax
412632:	81 e6 ff ff 0f 00    	and    $0xfffff,%esi
412638:	0b c6                	or     %esi,%eax
41263a:	75 03                	jne    0x41263f