41949f:	33 f6                	xor    %esi,%esi
4194a1:	3b d9                	cmp    %ecx,%ebx
4194a3:	72 04                	jb     0x4194a9
4194a5:	3b da                	cmp    %edx,%ebx
4194a7:	73 03                	jae    0x4194ac
4194a9:	33 f6                	xor    %esi,%esi
4194ab:	46                   	inc    %esi
4194ac:	89 58 04             	mov    %ebx,0x4(%eax)
4194af:	85 f6                	test   %esi,%esi
4194b1:	74 03                	je     0x4194b6
4194b3:	ff 40 08             	incl   0x8(%eax)
4194b6:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4194b9:	01 48 08             	add    %ecx,0x8(%eax)
4194bc:	83 65 ec 00          	andl   $0x0,-0x14(%ebp)
4194c0:	8d 0c 3f             	lea    (%edi,%edi,1),%ecx
4194c3:	8b d7                	mov    %edi,%edx
4194c5:	c1 ea 1f             	shr    $0x1f,%edx
4194c8:	8d 3c 1b             	lea    (%ebx,%ebx,1),%edi
4194cb:	0b fa                	or     %edx,%edi
4194cd:	8b 50 08             	mov    0x8(%eax),%edx
4194d0:	8b f3                	mov    %ebx,%esi
4194d2:	c1 ee 1f             	shr    $0x1f,%esi
4194d5:	8d 1c 12             	lea    (%edx,%edx,1),%ebx
4194d8:	8b 55 08             	mov    0x8(%ebp),%edx
4194db:	0b de                	or     %esi,%ebx
4194dd:	89 08                	mov    %ecx,(%eax)
4194df:	89 78 04             	mov    %edi,0x4(%eax)
4194e2:	89 58 08             	mov    %ebx,0x8(%eax)
4194e5:	0f be 12             	movsbl (%edx),%edx
4194e8:	8d 34 11             	lea    (%ecx,%edx,1),%esi
4194eb:	89 55 f0             	mov    %edx,-0x10(%ebp)
4194ee:	3b f1                	cmp    %ecx,%esi
4194f0:	72 04                	jb     0x4194f6
4194f2:	3b f2                	cmp    %edx,%esi
4194f4:	73 07                	jae    0x4194fd
4194f6:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
4194fd:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
419501:	89 30                	mov    %esi,(%eax)
419503:	74 1c                	je     0x419521
419505:	8d 4f 01             	lea    0x1(%edi),%ecx
419508:	33 d2                	xor    %edx,%edx
41950a:	3b cf                	cmp    %edi,%ecx
41950c:	72 05                	jb     0x419513
41950e:	83 f9 01             	cmp    $0x1,%ecx
419511:	73 03                	jae    0x419516
419513:	33 d2                	xor    %edx,%edx
419515:	42                   	inc    %edx
419516:	89 48 04             	mov    %ecx,0x4(%eax)
419519:	85 d2                	test   %edx,%edx
41951b:	74 04                	je     0x419521
41951d:	43                   	inc    %ebx
41951e:	89 58 08             	mov    %ebx,0x8(%eax)
419521:	ff 4d 0c             	decl   0xc(%ebp)
419524:	ff 45 08             	incl   0x8(%ebp)
419527:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
41952b:	0f 87 e4 fe ff ff    	ja     0x419415
419531:	33 f6                	xor    %esi,%esi
419533:	eb 26                	jmp    0x41955b
419535:	8b 48 04             	mov    0x4(%eax),%ecx
419538:	8b d1                	mov    %ecx,%edx
41953a:	c1 ea 10             	shr    $0x10,%edx
41953d:	89 50 08             	mov    %edx,0x8(%eax)
419540:	8b 10                	mov    (%eax),%edx
419542:	8b fa                	mov    %edx,%edi
419544:	c1 e1 10             	shl    $0x10,%ecx
419547:	c1 ef 10             	shr    $0x10,%edi
41954a:	0b cf                	or     %edi,%ecx
41954c:	c1 e2 10             	shl    $0x10,%edx
41954f:	81 45 e8 f0 ff 00 00 	addl   $0xfff0,-0x18(%ebp)
419556:	89 48 04             	mov    %ecx,0x4(%eax)
419559:	89 10                	mov    %edx,(%eax)
41955b:	39 70 08             	cmp    %esi,0x8(%eax)
41955e:	74 d5                	je     0x419535
419560:	bb 00 80 00 00       	mov    $0x8000,%ebx
419565:	85 58 08             	test   %ebx,0x8(%eax)
419568:	75 30                	jne    0x41959a
41956a:	8b 30                	mov    (%eax),%esi
41956c:	8b 78 04             	mov    0x4(%eax),%edi
41956f:	81 45 e8 ff ff 00 00 	addl   $0xffff,-0x18(%ebp)
419576:	8b ce                	mov    %esi,%ecx
419578:	03 f6                	add    %esi,%esi
41957a:	c1 e9 1f             	shr    $0x1f,%ecx
41957d:	89 30                	mov    %esi,(%eax)
41957f:	8d 34 3f             	lea    (%edi,%edi,1),%esi
419582:	0b f1                	or     %ecx,%esi
419584:	8b 48 08             	mov    0x8(%eax),%ecx
419587:	8b d7                	mov    %edi,%edx
419589:	c1 ea 1f             	shr    $0x1f,%edx
41958c:	03 c9                	add    %ecx,%ecx
41958e:	0b ca                	or     %edx,%ecx
419590:	89 70 04             	mov    %esi,0x4(%eax)
419593:	89 48 08             	mov    %ecx,0x8(%eax)
419596:	85 cb                	test   %ecx,%ebx
419598:	74 d0                	je     0x41956a
41959a:	66 8b 4d e8          	mov    -0x18(%ebp),%cx
41959e:	66 89 48 0a          	mov    %cx,0xa(%eax)
4195a2:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4195a5:	5f                   	pop    %edi
4195a6:	5e                   	pop    %esi
4195a7:	33 cd                	xor    %ebp,%ecx
4195a9:	5b                   	pop    %ebx
4195aa:	e8 77 d0 fe ff       	call   0x406626
4195af:	c9                   	leave
4195b0:	c3                   	ret
4195b1:	cc                   	int3
4195b2:	cc                   	int3
4195b3:	cc                   	int3
4195b4:	cc                   	int3
4195b5:	cc                   	int3
4195b6:	cc                   	int3
4195b7:	cc                   	int3
4195b8:	cc                   	int3
4195b9:	cc                   	int3
4195ba:	cc                   	int3
4195bb:	cc                   	int3
4195bc:	cc                   	int3
4195bd:	cc                   	int3
4195be:	cc                   	int3
4195bf:	cc                   	int3
4195c0:	8d 42 ff             	lea    -0x1(%edx),%eax
4195c3:	5b                   	pop    %ebx
4195c4:	c3                   	ret
4195c5:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
4195cc:	8d 64 24 00          	lea    0x0(%esp),%esp
4195d0:	33 c0                	xor    %eax,%eax
4195d2:	8a 44 24 08          	mov    0x8(%esp),%al
4195d6:	53                   	push   %ebx
4195d7:	8b d8                	mov    %eax,%ebx
4195d9:	c1 e0 08             	shl    $0x8,%eax
4195dc:	8b 54 24 08          	mov    0x8(%esp),%edx
4195e0:	f7 c2 03 00 00 00    	test   $0x3,%edx
4195e6:	74 15                	je     0x4195fd
4195e8:	8a 0a                	mov    (%edx),%cl
4195ea:	83 c2 01             	add    $0x1,%edx
4195ed:	3a cb                	cmp    %bl,%cl
4195ef:	74 cf                	je     0x4195c0
4195f1:	84 c9                	test   %cl,%cl
4195f3:	74 51                	je     0x419646
4195f5:	f7 c2 03 00 00 00    	test   $0x3,%edx
4195fb:	75 eb                	jne    0x4195e8
4195fd:	0b d8                	or     %eax,%ebx
4195ff:	57                   	push   %edi
419600:	8b c3                	mov    %ebx,%eax
419602:	c1 e3 10             	shl    $0x10,%ebx
419605:	56                   	push   %esi
419606:	0b d8                	or     %eax,%ebx
419608:	8b 0a                	mov    (%edx),%ecx
41960a:	bf ff fe fe 7e       	mov    $0x7efefeff,%edi
41960f:	8b c1                	mov    %ecx,%eax
419611:	8b f7                	mov    %edi,%esi
419613:	33 cb                	xor    %ebx,%ecx
419615:	03 f0                	add    %eax,%esi
419617:	03 f9                	add    %ecx,%edi
419619:	83 f1 ff             	xor    $0xffffffff,%ecx
41961c:	83 f0 ff             	xor    $0xffffffff,%eax
41961f:	33 cf                	xor    %edi,%ecx
419621:	33 c6                	xor    %esi,%eax
419623:	83 c2 04             	add    $0x4,%edx
419626:	81 e1 00 01 01 81    	and    $0x81010100,%ecx
41962c:	75 1c                	jne    0x41964a
41962e:	25 00 01 01 81       	and    $0x81010100,%eax
419633:	74 d3                	je     0x419608
419635:	25 00 01 01 01       	and    $0x1010100,%eax
41963a:	75 08                	jne    0x419644
41963c:	81 e6 00 00 00 80    	and    $0x80000000,%esi
419642:	75 c4                	jne    0x419608
419644:	5e                   	pop    %esi
419645:	5f                   	pop    %edi
419646:	5b                   	pop    %ebx
419647:	33 c0                	xor    %eax,%eax
419649:	c3                   	ret
41964a:	8b 42 fc             	mov    -0x4(%edx),%eax
41964d:	3a c3                	cmp    %bl,%al
41964f:	74 36                	je     0x419687
419651:	84 c0                	test   %al,%al
419653:	74 ef                	je     0x419644
419655:	3a e3                	cmp    %bl,%ah
419657:	74 27                	je     0x419680
419659:	84 e4                	test   %ah,%ah
41965b:	74 e7                	je     0x419644
41965d:	c1 e8 10             	shr    $0x10,%eax
419660:	3a c3                	cmp    %bl,%al
419662:	74 15                	je     0x419679
419664:	84 c0                	test   %al,%al
419666:	74 dc                	je     0x419644
419668:	3a e3                	cmp    %bl,%ah
41966a:	74 06                	je     0x419672
41966c:	84 e4                	test   %ah,%ah
41966e:	74 d4                	je     0x419644
419670:	eb 96                	jmp    0x419608
419672:	5e                   	pop    %esi
419673:	5f                   	pop    %edi
419674:	8d 42 ff             	lea    -0x1(%edx),%eax
419677:	5b                   	pop    %ebx
419678:	c3                   	ret
419679:	8d 42 fe             	lea    -0x2(%edx),%eax
41967c:	5e                   	pop    %esi
41967d:	5f                   	pop    %edi
41967e:	5b                   	pop    %ebx
41967f:	c3                   	ret
419680:	8d 42 fd             	lea    -0x3(%edx),%eax
419683:	5e                   	pop    %esi
419684:	5f                   	pop    %edi
419685:	5b                   	pop    %ebx
419686:	c3                   	ret
419687:	8d 42 fc             	lea    -0x4(%edx),%eax
41968a:	5e                   	pop    %esi
41968b:	5f                   	pop    %edi
41968c:	5b                   	pop    %ebx
41968d:	c3                   	ret
41968e:	ff 25 c0 a0 41 00    	jmp    *0x41a0c0
419694:	cc                   	int3
419695:	cc                   	int3
419696:	cc                   	int3
419697:	cc                   	int3
419698:	cc                   	int3
419699:	cc                   	int3
41969a:	cc                   	int3
41969b:	cc                   	int3
41969c:	cc                   	int3
41969d:	cc                   	int3
41969e:	cc                   	int3
41969f:	cc                   	int3
4196a0:	8d 4d f0             	lea    -0x10(%ebp),%ecx
4196a3:	e9 8e b0 fe ff       	jmp    0x404736
4196a8:	8b 54 24 08          	mov    0x8(%esp),%edx
4196ac:	8d 42 0c             	lea    0xc(%edx),%eax
4196af:	8b 4a ec             	mov    -0x14(%edx),%ecx
4196b2:	33 c8                	xor    %eax,%ecx
4196b4:	e8 6d cf fe ff       	call   0x406626
4196b9:	b8 d0 93 42 00       	mov    $0x4293d0,%eax
4196be:	e9 0a cc fe ff       	jmp    0x4062cd
4196c3:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4196c6:	e9 d5 7c fe ff       	jmp    0x4013a0
4196cb:	8b 54 24 08          	mov    0x8(%esp),%edx
4196cf:	8d 42 0c             	lea    0xc(%edx),%eax
4196d2:	8b 4a ec             	mov    -0x14(%edx),%ecx
4196d5:	33 c8                	xor    %eax,%ecx
4196d7:	e8 4a cf fe ff       	call   0x406626
4196dc:	b8 fc 93 42 00       	mov    $0x4293fc,%eax
4196e1:	e9 e7 cb fe ff       	jmp    0x4062cd
4196e6:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4196e9:	e9 b2 7c fe ff       	jmp    0x4013a0
4196ee:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4196f1:	83 c1 18             	add    $0x18,%ecx
4196f4:	e9 27 8d fe ff       	jmp    0x402420
4196f9:	8b 54 24 08          	mov    0x8(%esp),%edx
4196fd:	8d 42 0c             	lea    0xc(%edx),%eax
419700:	8b 4a ec             	mov    -0x14(%edx),%ecx
419703:	33 c8                	xor    %eax,%ecx
419705:	e8 1c cf fe ff       	call   0x406626
41970a:	b8 30 94 42 00       	mov    $0x429430,%eax
41970f:	e9 b9 cb fe ff       	jmp    0x4062cd
419714:	8d 4d f0             	lea    -0x10(%ebp),%ecx
419717:	e9 1a b0 fe ff       	jmp    0x404736
41971c:	ff 75 ec             	push   -0x14(%ebp)
41971f:	e8 12 bc fe ff       	call   0x405336
419724:	59                   	pop    %ecx
419725:	c3                   	ret
419726:	8b 54 24 08          	mov    0x8(%esp),%edx
41972a:	8d 42 0c             	lea    0xc(%edx),%eax
41972d:	8b 4a e8             	mov    -0x18(%edx),%ecx
419730:	33 c8                	xor    %eax,%ecx
419732:	e8 ef ce fe ff       	call   0x406626
419737:	b8 64 94 42 00       	mov    $0x429464,%eax
41973c:	e9 8c cb fe ff       	jmp    0x4062cd
419741:	8d 4d d8             	lea    -0x28(%ebp),%ecx
419744:	e9 d7 8c fe ff       	jmp    0x402420
419749:	8b 54 24 08          	mov    0x8(%esp),%edx
41974d:	8d 42 0c             	lea    0xc(%edx),%eax
419750:	8b 4a ac             	mov    -0x54(%edx),%ecx
419753:	33 c8                	xor    %eax,%ecx
419755:	e8 cc ce fe ff       	call   0x406626
41975a:	b8 90 94 42 00       	mov    $0x429490,%eax
41975f:	e9 69 cb fe ff       	jmp    0x4062cd
419764:	8b 54 24 08          	mov    0x8(%esp),%edx
419768:	8d 42 0c             	lea    0xc(%edx),%eax
41976b:	8b 4a ec             	mov    -0x14(%edx),%ecx
41976e:	33 c8                	xor    %eax,%ecx
419770:	e8 b1 ce fe ff       	call   0x406626
419775:	b8 88 98 42 00       	mov    $0x429888,%eax
41977a:	e9 4e cb fe ff       	jmp    0x4062cd
41977f:	cc                   	int3
419780:	8b 4d 04             	mov    0x4(%ebp),%ecx
419783:	e9 ae af fe ff       	jmp    0x404736
419788:	8b 4d 04             	mov    0x4(%ebp),%ecx
41978b:	83 c1 04             	add    $0x4,%ecx
41978e:	e9 8d 8c fe ff       	jmp    0x402420
419793:	8b 4d 04             	mov    0x4(%ebp),%ecx
419796:	83 c1 20             	add    $0x20,%ecx
419799:	e9 82 8c fe ff       	jmp    0x402420
41979e:	8b 4d 04             	mov    0x4(%ebp),%ecx
4197a1:	83 c1 3c             	add    $0x3c,%ecx
4197a4:	e9 77 8c fe ff       	jmp    0x402420
4197a9:	8b 4d 04             	mov    0x4(%ebp),%ecx
4197ac:	83 c1 58             	add    $0x58,%ecx
4197af:	e9 6c 8c fe ff       	jmp    0x402420
4197b4:	b8 b8 9c 42 00       	mov    $0x429cb8,%eax
4197b9:	e9 0f cb fe ff       	jmp    0x4062cd
4197be:	cc                   	int3
4197bf:	cc                   	int3
4197c0:	b8 44 9d 42 00       	mov    $0x429d44,%eax
4197c5:	e9 03 cb fe ff       	jmp    0x4062cd
4197ca:	cc                   	int3
4197cb:	cc                   	int3
4197cc:	cc                   	int3
4197cd:	cc                   	int3
4197ce:	cc                   	int3
4197cf:	cc                   	int3
4197d0:	8b 4d 04             	mov    0x4(%ebp),%ecx
4197d3:	83 c1 04             	add    $0x4,%ecx
4197d6:	e9 68 b0 fe ff       	jmp    0x404843
4197db:	b8 70 9d 42 00       	mov    $0x429d70,%eax
4197e0:	e9 e8 ca fe ff       	jmp    0x4062cd
4197e5:	cc                   	int3
4197e6:	cc                   	int3
4197e7:	cc                   	int3
4197e8:	cc                   	int3
4197e9:	cc                   	int3
4197ea:	cc                   	int3
4197eb:	cc                   	int3
4197ec:	cc                   	int3
4197ed:	cc                   	int3
4197ee:	cc                   	int3
4197ef:	cc                   	int3
4197f0:	8b 45 04             	mov    0x4(%ebp),%eax
4197f3:	e9 68 98 fe ff       	jmp    0x403060
4197f8:	b8 9c 9d 42 00       	mov    $0x429d9c,%eax
4197fd:	e9 cb ca fe ff       	jmp    0x4062cd
419802:	cc                   	int3
419803:	cc                   	int3
419804:	cc                   	int3
419805:	cc                   	int3
419806:	cc                   	int3
419807:	cc                   	int3
419808:	cc                   	int3
419809:	cc                   	int3
41980a:	cc                   	int3
41980b:	cc                   	int3
41980c:	cc                   	int3
41980d:	cc                   	int3
41980e:	cc                   	int3
41980f:	cc                   	int3
419810:	8b 45 04             	mov    0x4(%ebp),%eax
419813:	e9 38 7c fe ff       	jmp    0x401450
419818:	b8 c8 9d 42 00       	mov    $0x429dc8,%eax
41981d:	e9 ab ca fe ff       	jmp    0x4062cd
419822:	cc                   	int3
419823:	cc                   	int3
419824:	cc                   	int3