435490:	e8 e2 6f ff ff       	call   0x42c477
435495:	ff b6 8c 00 00 00    	push   0x8c(%esi)
43549b:	e8 d7 6f ff ff       	call   0x42c477
4354a0:	83 c4 10             	add    $0x10,%esp
4354a3:	ff b6 9c 00 00 00    	push   0x9c(%esi)
4354a9:	e8 95 00 00 00       	call   0x435543
4354ae:	59                   	pop    %ecx
4354af:	6a 06                	push   $0x6
4354b1:	58                   	pop    %eax
4354b2:	8d 9e a0 00 00 00    	lea    0xa0(%esi),%ebx
4354b8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4354bb:	8d 7e 28             	lea    0x28(%esi),%edi
4354be:	81 7f f8 78 42 45 00 	cmpl   $0x454278,-0x8(%edi)
4354c5:	74 1d                	je     0x4354e4
4354c7:	8b 07                	mov    (%edi),%eax
4354c9:	85 c0                	test   %eax,%eax
4354cb:	74 14                	je     0x4354e1
4354cd:	83 38 00             	cmpl   $0x0,(%eax)
4354d0:	75 0f                	jne    0x4354e1
4354d2:	50                   	push   %eax
4354d3:	e8 9f 6f ff ff       	call   0x42c477
4354d8:	ff 33                	push   (%ebx)
4354da:	e8 98 6f ff ff       	call   0x42c477
4354df:	59                   	pop    %ecx
4354e0:	59                   	pop    %ecx
4354e1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4354e4:	83 7f f4 00          	cmpl   $0x0,-0xc(%edi)
4354e8:	74 16                	je     0x435500
4354ea:	8b 47 fc             	mov    -0x4(%edi),%eax
4354ed:	85 c0                	test   %eax,%eax
4354ef:	74 0c                	je     0x4354fd
4354f1:	83 38 00             	cmpl   $0x0,(%eax)
4354f4:	75 07                	jne    0x4354fd
4354f6:	50                   	push   %eax
4354f7:	e8 7b 6f ff ff       	call   0x42c477
4354fc:	59                   	pop    %ecx
4354fd:	8b 45 fc             	mov    -0x4(%ebp),%eax
435500:	83 c3 04             	add    $0x4,%ebx
435503:	83 c7 10             	add    $0x10,%edi
435506:	83 e8 01             	sub    $0x1,%eax
435509:	89 45 fc             	mov    %eax,-0x4(%ebp)
43550c:	75 b0                	jne    0x4354be
43550e:	56                   	push   %esi
43550f:	e8 63 6f ff ff       	call   0x42c477
435514:	59                   	pop    %ecx
435515:	5f                   	pop    %edi
435516:	5e                   	pop    %esi
435517:	5b                   	pop    %ebx
435518:	c9                   	leave
435519:	c3                   	ret
43551a:	8b ff                	mov    %edi,%edi
43551c:	55                   	push   %ebp
43551d:	8b ec                	mov    %esp,%ebp
43551f:	8b 4d 08             	mov    0x8(%ebp),%ecx
435522:	85 c9                	test   %ecx,%ecx
435524:	74 16                	je     0x43553c
435526:	81 f9 d0 29 44 00    	cmp    $0x4429d0,%ecx
43552c:	74 0e                	je     0x43553c
43552e:	33 c0                	xor    %eax,%eax
435530:	40                   	inc    %eax
435531:	f0 0f c1 81 b0 00 00 	lock xadd %eax,0xb0(%ecx)
435538:	00
435539:	40                   	inc    %eax
43553a:	5d                   	pop    %ebp
43553b:	c3                   	ret
43553c:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
435541:	5d                   	pop    %ebp
435542:	c3                   	ret
435543:	8b ff                	mov    %edi,%edi
435545:	55                   	push   %ebp
435546:	8b ec                	mov    %esp,%ebp
435548:	56                   	push   %esi
435549:	8b 75 08             	mov    0x8(%ebp),%esi
43554c:	85 f6                	test   %esi,%esi
43554e:	74 21                	je     0x435571
435550:	81 fe d0 29 44 00    	cmp    $0x4429d0,%esi
435556:	74 19                	je     0x435571
435558:	8b 86 b0 00 00 00    	mov    0xb0(%esi),%eax
43555e:	90                   	nop
43555f:	85 c0                	test   %eax,%eax
435561:	75 0e                	jne    0x435571
435563:	56                   	push   %esi
435564:	e8 e5 fa ff ff       	call   0x43504e
435569:	56                   	push   %esi
43556a:	e8 08 6f ff ff       	call   0x42c477
43556f:	59                   	pop    %ecx
435570:	59                   	pop    %ecx
435571:	5e                   	pop    %esi
435572:	5d                   	pop    %ebp
435573:	c3                   	ret
435574:	8b ff                	mov    %edi,%edi
435576:	55                   	push   %ebp
435577:	8b ec                	mov    %esp,%ebp
435579:	8b 4d 08             	mov    0x8(%ebp),%ecx
43557c:	85 c9                	test   %ecx,%ecx
43557e:	74 16                	je     0x435596
435580:	81 f9 d0 29 44 00    	cmp    $0x4429d0,%ecx
435586:	74 0e                	je     0x435596
435588:	83 c8 ff             	or     $0xffffffff,%eax
43558b:	f0 0f c1 81 b0 00 00 	lock xadd %eax,0xb0(%ecx)
435592:	00
435593:	48                   	dec    %eax
435594:	5d                   	pop    %ebp
435595:	c3                   	ret
435596:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
43559b:	5d                   	pop    %ebp
43559c:	c3                   	ret
43559d:	8b ff                	mov    %edi,%edi
43559f:	55                   	push   %ebp
4355a0:	8b ec                	mov    %esp,%ebp
4355a2:	8b 45 08             	mov    0x8(%ebp),%eax
4355a5:	85 c0                	test   %eax,%eax
4355a7:	74 73                	je     0x43561c
4355a9:	f0 ff 48 0c          	lock decl 0xc(%eax)
4355ad:	8b 48 7c             	mov    0x7c(%eax),%ecx
4355b0:	85 c9                	test   %ecx,%ecx
4355b2:	74 03                	je     0x4355b7
4355b4:	f0 ff 09             	lock decl (%ecx)
4355b7:	8b 88 84 00 00 00    	mov    0x84(%eax),%ecx
4355bd:	85 c9                	test   %ecx,%ecx
4355bf:	74 03                	je     0x4355c4
4355c1:	f0 ff 09             	lock decl (%ecx)
4355c4:	8b 88 80 00 00 00    	mov    0x80(%eax),%ecx
4355ca:	85 c9                	test   %ecx,%ecx
4355cc:	74 03                	je     0x4355d1
4355ce:	f0 ff 09             	lock decl (%ecx)
4355d1:	8b 88 8c 00 00 00    	mov    0x8c(%eax),%ecx
4355d7:	85 c9                	test   %ecx,%ecx
4355d9:	74 03                	je     0x4355de
4355db:	f0 ff 09             	lock decl (%ecx)
4355de:	56                   	push   %esi
4355df:	6a 06                	push   $0x6
4355e1:	8d 48 28             	lea    0x28(%eax),%ecx
4355e4:	5e                   	pop    %esi
4355e5:	81 79 f8 78 42 45 00 	cmpl   $0x454278,-0x8(%ecx)
4355ec:	74 09                	je     0x4355f7
4355ee:	8b 11                	mov    (%ecx),%edx
4355f0:	85 d2                	test   %edx,%edx
4355f2:	74 03                	je     0x4355f7
4355f4:	f0 ff 0a             	lock decl (%edx)
4355f7:	83 79 f4 00          	cmpl   $0x0,-0xc(%ecx)
4355fb:	74 0a                	je     0x435607
4355fd:	8b 51 fc             	mov    -0x4(%ecx),%edx
435600:	85 d2                	test   %edx,%edx
435602:	74 03                	je     0x435607
435604:	f0 ff 0a             	lock decl (%edx)
435607:	83 c1 10             	add    $0x10,%ecx
43560a:	83 ee 01             	sub    $0x1,%esi
43560d:	75 d6                	jne    0x4355e5
43560f:	ff b0 9c 00 00 00    	push   0x9c(%eax)
435615:	e8 5a ff ff ff       	call   0x435574
43561a:	59                   	pop    %ecx
43561b:	5e                   	pop    %esi
43561c:	5d                   	pop    %ebp
43561d:	c3                   	ret
43561e:	6a 0c                	push   $0xc
435620:	68 70 27 45 00       	push   $0x452770
435625:	e8 a6 72 fe ff       	call   0x41c8d0
43562a:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
43562e:	e8 f6 6a ff ff       	call   0x42c129
435633:	8d 78 4c             	lea    0x4c(%eax),%edi
435636:	8b 0d 68 45 45 00    	mov    0x454568,%ecx
43563c:	85 88 50 03 00 00    	test   %ecx,0x350(%eax)
435642:	74 06                	je     0x43564a
435644:	8b 37                	mov    (%edi),%esi
435646:	85 f6                	test   %esi,%esi
435648:	75 3d                	jne    0x435687
43564a:	6a 04                	push   $0x4
43564c:	e8 70 2e ff ff       	call   0x4284c1
435651:	59                   	pop    %ecx
435652:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
435656:	ff 35 20 5d 45 00    	push   0x455d20
43565c:	57                   	push   %edi
43565d:	e8 3d 00 00 00       	call   0x43569f
435662:	59                   	pop    %ecx
435663:	59                   	pop    %ecx
435664:	8b f0                	mov    %eax,%esi
435666:	89 75 e4             	mov    %esi,-0x1c(%ebp)
435669:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
435670:	e8 09 00 00 00       	call   0x43567e
435675:	85 f6                	test   %esi,%esi
435677:	74 20                	je     0x435699
435679:	eb 0c                	jmp    0x435687
43567b:	8b 75 e4             	mov    -0x1c(%ebp),%esi
43567e:	6a 04                	push   $0x4
435680:	e8 8c 2e ff ff       	call   0x428511
435685:	59                   	pop    %ecx
435686:	c3                   	ret
435687:	8b c6                	mov    %esi,%eax
435689:	8b 4d f0             	mov    -0x10(%ebp),%ecx
43568c:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
435693:	59                   	pop    %ecx
435694:	5f                   	pop    %edi
435695:	5e                   	pop    %esi
435696:	5b                   	pop    %ebx
435697:	c9                   	leave
435698:	c3                   	ret
435699:	e8 db 38 ff ff       	call   0x428f79
43569e:	cc                   	int3
43569f:	8b ff                	mov    %edi,%edi
4356a1:	55                   	push   %ebp
4356a2:	8b ec                	mov    %esp,%ebp
4356a4:	56                   	push   %esi
4356a5:	8b 75 0c             	mov    0xc(%ebp),%esi
4356a8:	57                   	push   %edi
4356a9:	85 f6                	test   %esi,%esi
4356ab:	74 3c                	je     0x4356e9
4356ad:	8b 45 08             	mov    0x8(%ebp),%eax
4356b0:	85 c0                	test   %eax,%eax
4356b2:	74 35                	je     0x4356e9
4356b4:	8b 38                	mov    (%eax),%edi
4356b6:	3b fe                	cmp    %esi,%edi
4356b8:	75 04                	jne    0x4356be
4356ba:	8b c6                	mov    %esi,%eax
4356bc:	eb 2d                	jmp    0x4356eb
4356be:	56                   	push   %esi
4356bf:	89 30                	mov    %esi,(%eax)
4356c1:	e8 8f fc ff ff       	call   0x435355
4356c6:	59                   	pop    %ecx
4356c7:	85 ff                	test   %edi,%edi
4356c9:	74 ef                	je     0x4356ba
4356cb:	57                   	push   %edi
4356cc:	e8 cc fe ff ff       	call   0x43559d
4356d1:	83 7f 0c 00          	cmpl   $0x0,0xc(%edi)
4356d5:	59                   	pop    %ecx
4356d6:	75 e2                	jne    0x4356ba
4356d8:	81 ff b8 41 45 00    	cmp    $0x4541b8,%edi
4356de:	74 da                	je     0x4356ba
4356e0:	57                   	push   %edi
4356e1:	e8 ec fc ff ff       	call   0x4353d2
4356e6:	59                   	pop    %ecx
4356e7:	eb d1                	jmp    0x4356ba
4356e9:	33 c0                	xor    %eax,%eax
4356eb:	5f                   	pop    %edi
4356ec:	5e                   	pop    %esi
4356ed:	5d                   	pop    %ebp
4356ee:	c3                   	ret
4356ef:	8b ff                	mov    %edi,%edi
4356f1:	55                   	push   %ebp
4356f2:	8b ec                	mov    %esp,%ebp
4356f4:	81 ec b0 00 00 00    	sub    $0xb0,%esp
4356fa:	a1 14 40 45 00       	mov    0x454014,%eax
4356ff:	33 c5                	xor    %ebp,%eax
435701:	89 45 fc             	mov    %eax,-0x4(%ebp)
435704:	56                   	push   %esi
435705:	8b 75 08             	mov    0x8(%ebp),%esi
435708:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
43570e:	6a 55                	push   $0x55
435710:	50                   	push   %eax
435711:	81 4e 08 04 01 00 00 	orl    $0x104,0x8(%esi)
435718:	e8 16 9a ff ff       	call   0x42f133
43571d:	83 f8 01             	cmp    $0x1,%eax
435720:	7e 3c                	jle    0x43575e
435722:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
435728:	57                   	push   %edi
435729:	8d 51 02             	lea    0x2(%ecx),%edx
43572c:	33 ff                	xor    %edi,%edi
43572e:	66 8b 01             	mov    (%ecx),%ax
435731:	83 c1 02             	add    $0x2,%ecx
435734:	66 3b c7             	cmp    %di,%ax
435737:	75 f5                	jne    0x43572e
435739:	2b ca                	sub    %edx,%ecx
43573b:	d1 f9                	sar    $1,%ecx
43573d:	8d 41 01             	lea    0x1(%ecx),%eax
435740:	50                   	push   %eax
435741:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
435747:	50                   	push   %eax
435748:	8d 86 50 02 00 00    	lea    0x250(%esi),%eax
43574e:	6a 55                	push   $0x55
435750:	50                   	push   %eax
435751:	e8 52 26 ff ff       	call   0x427da8
435756:	83 c4 10             	add    $0x10,%esp
435759:	85 c0                	test   %eax,%eax
43575b:	75 0e                	jne    0x43576b
43575d:	5f                   	pop    %edi
43575e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
435761:	33 cd                	xor    %ebp,%ecx
435763:	5e                   	pop    %esi
435764:	e8 67 61 fe ff       	call   0x41b8d0
435769:	c9                   	leave
43576a:	c3                   	ret
43576b:	57                   	push   %edi
43576c:	57                   	push   %edi
43576d:	57                   	push   %edi
43576e:	57                   	push   %edi
43576f:	57                   	push   %edi
435770:	e8 27 b3 fe ff       	call   0x420a9c
435775:	cc                   	int3
435776:	8b ff                	mov    %edi,%edi
435778:	55                   	push   %ebp
435779:	8b ec                	mov    %esp,%ebp
43577b:	51                   	push   %ecx
43577c:	53                   	push   %ebx
43577d:	56                   	push   %esi
43577e:	8b 75 08             	mov    0x8(%ebp),%esi
435781:	33 db                	xor    %ebx,%ebx
435783:	57                   	push   %edi
435784:	6a 02                	push   $0x2
435786:	5f                   	pop    %edi
435787:	8b 0e                	mov    (%esi),%ecx
435789:	89 5d fc             	mov    %ebx,-0x4(%ebp)
43578c:	8d 51 02             	lea    0x2(%ecx),%edx
43578f:	66 8b 01             	mov    (%ecx),%ax
435792:	03 cf                	add    %edi,%ecx
435794:	66 3b c3             	cmp    %bx,%ax
435797:	75 f6                	jne    0x43578f
435799:	2b ca                	sub    %edx,%ecx
43579b:	33 c0                	xor    %eax,%eax
43579d:	8b 56 04             	mov    0x4(%esi),%edx
4357a0:	d1 f9                	sar    $1,%ecx
4357a2:	83 f9 03             	cmp    $0x3,%ecx
4357a5:	0f 94 c0             	sete   %al
4357a8:	8d 5a 02             	lea    0x2(%edx),%ebx
4357ab:	89 46 10             	mov    %eax,0x10(%esi)
4357ae:	66 8b 02             	mov    (%edx),%ax
4357b1:	03 d7                	add    %edi,%edx
4357b3:	66 3b 45 fc          	cmp    -0x4(%ebp),%ax
4357b7:	75 f5                	jne    0x4357ae
4357b9:	2b d3                	sub    %ebx,%edx
4357bb:	33 c0                	xor    %eax,%eax
4357bd:	d1 fa                	sar    $1,%edx
4357bf:	83 fa 03             	cmp    $0x3,%edx
4357c2:	0f 94 c0             	sete   %al
4357c5:	89 46 14             	mov    %eax,0x14(%esi)
4357c8:	83 f9 03             	cmp    $0x3,%ecx
4357cb:	74 0a                	je     0x4357d7
4357cd:	ff 36                	push   (%esi)
4357cf:	e8 94 00 00 00       	call   0x435868
4357d4:	59                   	pop    %ecx
4357d5:	8b f8                	mov    %eax,%edi
4357d7:	33 db                	xor    %ebx,%ebx
4357d9:	89 7e 0c             	mov    %edi,0xc(%esi)
4357dc:	53                   	push   %ebx
4357dd:	53                   	push   %ebx
4357de:	6a 03                	push   $0x3
4357e0:	68 a0 58 43 00       	push   $0x4358a0
4357e5:	e8 dc 96 ff ff       	call   0x42eec6
4357ea:	8b 4e 08             	mov    0x8(%esi),%ecx
4357ed:	f6 c1 07             	test   $0x7,%cl
4357f0:	0f 95 c2             	setne  %dl
4357f3:	0f ba e1 09          	bt     $0x9,%ecx
4357f7:	0f 92 c0             	setb   %al
4357fa:	22 d0                	and    %al,%dl
4357fc:	0f ba e1 08          	bt     $0x8,%ecx
435800:	0f 92 c0             	setb   %al
435803:	84 d0                	test   %dl,%al
435805:	75 03                	jne    0x43580a
435807:	89 5e 08             	mov    %ebx,0x8(%esi)
43580a:	5f                   	pop    %edi
43580b:	5e                   	pop    %esi