4314dd:	8d 45 d8             	lea    -0x28(%ebp),%eax
4314e0:	50                   	push   %eax
4314e1:	ff 75 18             	push   0x18(%ebp)
4314e4:	ff 75 14             	push   0x14(%ebp)
4314e7:	ff 75 10             	push   0x10(%ebp)
4314ea:	ff 75 0c             	push   0xc(%ebp)
4314ed:	ff 75 08             	push   0x8(%ebp)
4314f0:	e8 58 fc ff ff       	call   0x43114d
4314f5:	83 c4 18             	add    $0x18,%esp
4314f8:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4314fb:	8b f0                	mov    %eax,%esi
4314fd:	e8 a9 f2 fe ff       	call   0x4207ab
431502:	8b c6                	mov    %esi,%eax
431504:	5e                   	pop    %esi
431505:	c9                   	leave
431506:	c3                   	ret
431507:	8b ff                	mov    %edi,%edi
431509:	55                   	push   %ebp
43150a:	8b ec                	mov    %esp,%ebp
43150c:	83 ec 18             	sub    $0x18,%esp
43150f:	a1 14 40 45 00       	mov    0x454014,%eax
431514:	33 c5                	xor    %ebp,%eax
431516:	89 45 fc             	mov    %eax,-0x4(%ebp)
431519:	53                   	push   %ebx
43151a:	56                   	push   %esi
43151b:	57                   	push   %edi
43151c:	ff 75 08             	push   0x8(%ebp)
43151f:	8d 4d e8             	lea    -0x18(%ebp),%ecx
431522:	e8 ca 38 ff ff       	call   0x424df1
431527:	8b 45 ec             	mov    -0x14(%ebp),%eax
43152a:	33 ff                	xor    %edi,%edi
43152c:	57                   	push   %edi
43152d:	57                   	push   %edi
43152e:	ff 75 10             	push   0x10(%ebp)
431531:	8b 40 08             	mov    0x8(%eax),%eax
431534:	ff 75 0c             	push   0xc(%ebp)
431537:	89 45 f8             	mov    %eax,-0x8(%ebp)
43153a:	e8 31 db ff ff       	call   0x42f070
43153f:	8b d8                	mov    %eax,%ebx
431541:	85 db                	test   %ebx,%ebx
431543:	74 7d                	je     0x4315c2
431545:	8d 04 1b             	lea    (%ebx,%ebx,1),%eax
431548:	8d 48 08             	lea    0x8(%eax),%ecx
43154b:	3b c1                	cmp    %ecx,%eax
43154d:	1b c0                	sbb    %eax,%eax
43154f:	23 c1                	and    %ecx,%eax
431551:	74 66                	je     0x4315b9
431553:	3d 00 04 00 00       	cmp    $0x400,%eax
431558:	77 13                	ja     0x43156d
43155a:	e8 d1 af fe ff       	call   0x41c530
43155f:	8b f4                	mov    %esp,%esi
431561:	85 f6                	test   %esi,%esi
431563:	74 56                	je     0x4315bb
431565:	c7 06 cc cc 00 00    	movl   $0xcccc,(%esi)
43156b:	eb 13                	jmp    0x431580
43156d:	50                   	push   %eax
43156e:	e8 3e af ff ff       	call   0x42c4b1
431573:	8b f0                	mov    %eax,%esi
431575:	59                   	pop    %ecx
431576:	85 f6                	test   %esi,%esi
431578:	74 41                	je     0x4315bb
43157a:	c7 06 dd dd 00 00    	movl   $0xdddd,(%esi)
431580:	83 c6 08             	add    $0x8,%esi
431583:	85 f6                	test   %esi,%esi
431585:	74 34                	je     0x4315bb
431587:	53                   	push   %ebx
431588:	56                   	push   %esi
431589:	ff 75 10             	push   0x10(%ebp)
43158c:	ff 75 0c             	push   0xc(%ebp)
43158f:	e8 dc da ff ff       	call   0x42f070
431594:	85 c0                	test   %eax,%eax
431596:	74 23                	je     0x4315bb
431598:	8b 45 18             	mov    0x18(%ebp),%eax
43159b:	57                   	push   %edi
43159c:	57                   	push   %edi
43159d:	50                   	push   %eax
43159e:	f7 d8                	neg    %eax
4315a0:	1b c0                	sbb    %eax,%eax
4315a2:	23 45 14             	and    0x14(%ebp),%eax
4315a5:	50                   	push   %eax
4315a6:	6a ff                	push   $0xffffffff
4315a8:	56                   	push   %esi
4315a9:	57                   	push   %edi
4315aa:	ff 75 f8             	push   -0x8(%ebp)
4315ad:	e8 c8 1a 00 00       	call   0x43307a
4315b2:	83 c4 20             	add    $0x20,%esp
4315b5:	8b f8                	mov    %eax,%edi
4315b7:	eb 02                	jmp    0x4315bb
4315b9:	8b f7                	mov    %edi,%esi
4315bb:	56                   	push   %esi
4315bc:	e8 f1 a2 fe ff       	call   0x41b8b2
4315c1:	59                   	pop    %ecx
4315c2:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
4315c6:	74 0a                	je     0x4315d2
4315c8:	8b 45 e8             	mov    -0x18(%ebp),%eax
4315cb:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
4315d2:	8b c7                	mov    %edi,%eax
4315d4:	8d 65 dc             	lea    -0x24(%ebp),%esp
4315d7:	5f                   	pop    %edi
4315d8:	5e                   	pop    %esi
4315d9:	5b                   	pop    %ebx
4315da:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4315dd:	33 cd                	xor    %ebp,%ecx
4315df:	e8 ec a2 fe ff       	call   0x41b8d0
4315e4:	c9                   	leave
4315e5:	c3                   	ret
4315e6:	8b ff                	mov    %edi,%edi
4315e8:	55                   	push   %ebp
4315e9:	8b ec                	mov    %esp,%ebp
4315eb:	81 ec 90 00 00 00    	sub    $0x90,%esp
4315f1:	a1 14 40 45 00       	mov    0x454014,%eax
4315f6:	33 c5                	xor    %ebp,%eax
4315f8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4315fb:	8b 45 0c             	mov    0xc(%ebp),%eax
4315fe:	8b 4d 08             	mov    0x8(%ebp),%ecx
431601:	53                   	push   %ebx
431602:	8b 5d 18             	mov    0x18(%ebp),%ebx
431605:	56                   	push   %esi
431606:	8b 75 10             	mov    0x10(%ebp),%esi
431609:	57                   	push   %edi
43160a:	33 ff                	xor    %edi,%edi
43160c:	89 8d 70 ff ff ff    	mov    %ecx,-0x90(%ebp)
431612:	89 b5 78 ff ff ff    	mov    %esi,-0x88(%ebp)
431618:	89 3b                	mov    %edi,(%ebx)
43161a:	83 f8 01             	cmp    $0x1,%eax
43161d:	0f 85 e2 00 00 00    	jne    0x431705
431623:	68 80 00 00 00       	push   $0x80
431628:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
43162e:	50                   	push   %eax
43162f:	ff 75 14             	push   0x14(%ebp)
431632:	56                   	push   %esi
431633:	51                   	push   %ecx
431634:	e8 ce fe ff ff       	call   0x431507
431639:	83 c4 14             	add    $0x14,%esp
43163c:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
431642:	85 c0                	test   %eax,%eax
431644:	74 46                	je     0x43168c
431646:	6a 01                	push   $0x1
431648:	50                   	push   %eax
431649:	e8 cc ad ff ff       	call   0x42c41a
43164e:	57                   	push   %edi
43164f:	89 03                	mov    %eax,(%ebx)
431651:	e8 21 ae ff ff       	call   0x42c477
431656:	83 c4 0c             	add    $0xc,%esp
431659:	39 3b                	cmp    %edi,(%ebx)
43165b:	0f 84 18 01 00 00    	je     0x431779
431661:	8b 8d 74 ff ff ff    	mov    -0x8c(%ebp),%ecx
431667:	8d 41 ff             	lea    -0x1(%ecx),%eax
43166a:	50                   	push   %eax
43166b:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
431671:	50                   	push   %eax
431672:	51                   	push   %ecx
431673:	ff 33                	push   (%ebx)
431675:	e8 0b 93 00 00       	call   0x43a985
43167a:	83 c4 10             	add    $0x10,%esp
43167d:	85 c0                	test   %eax,%eax
43167f:	0f 85 06 01 00 00    	jne    0x43178b
431685:	33 c0                	xor    %eax,%eax
431687:	e9 f0 00 00 00       	jmp    0x43177c
43168c:	ff 15 60 f0 43 00    	call   *0x43f060
431692:	83 f8 7a             	cmp    $0x7a,%eax
431695:	0f 85 de 00 00 00    	jne    0x431779
43169b:	57                   	push   %edi
43169c:	57                   	push   %edi
43169d:	ff 75 14             	push   0x14(%ebp)
4316a0:	56                   	push   %esi
4316a1:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
4316a7:	e8 5b fe ff ff       	call   0x431507
4316ac:	83 c4 14             	add    $0x14,%esp
4316af:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
4316b5:	85 c0                	test   %eax,%eax
4316b7:	0f 84 bc 00 00 00    	je     0x431779
4316bd:	6a 01                	push   $0x1
4316bf:	50                   	push   %eax
4316c0:	e8 55 ad ff ff       	call   0x42c41a
4316c5:	8b f0                	mov    %eax,%esi
4316c7:	59                   	pop    %ecx
4316c8:	59                   	pop    %ecx
4316c9:	85 f6                	test   %esi,%esi
4316cb:	74 2a                	je     0x4316f7
4316cd:	ff b5 74 ff ff ff    	push   -0x8c(%ebp)
4316d3:	56                   	push   %esi
4316d4:	ff 75 14             	push   0x14(%ebp)
4316d7:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
4316dd:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
4316e3:	e8 1f fe ff ff       	call   0x431507
4316e8:	83 c4 14             	add    $0x14,%esp
4316eb:	85 c0                	test   %eax,%eax
4316ed:	74 08                	je     0x4316f7
4316ef:	8b c6                	mov    %esi,%eax
4316f1:	8b f7                	mov    %edi,%esi
4316f3:	89 03                	mov    %eax,(%ebx)
4316f5:	eb 03                	jmp    0x4316fa
4316f7:	83 cf ff             	or     $0xffffffff,%edi
4316fa:	56                   	push   %esi
4316fb:	e8 77 ad ff ff       	call   0x42c477
431700:	59                   	pop    %ecx
431701:	8b c7                	mov    %edi,%eax
431703:	eb 77                	jmp    0x43177c
431705:	83 f8 02             	cmp    $0x2,%eax
431708:	75 3c                	jne    0x431746
43170a:	57                   	push   %edi
43170b:	57                   	push   %edi
43170c:	ff 75 14             	push   0x14(%ebp)
43170f:	56                   	push   %esi
431710:	e8 5b d9 ff ff       	call   0x42f070
431715:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
43171b:	85 c0                	test   %eax,%eax
43171d:	74 5a                	je     0x431779
43171f:	6a 02                	push   $0x2
431721:	50                   	push   %eax
431722:	e8 f3 ac ff ff       	call   0x42c41a
431727:	8b f0                	mov    %eax,%esi
431729:	59                   	pop    %ecx
43172a:	59                   	pop    %ecx
43172b:	85 f6                	test   %esi,%esi
43172d:	74 c8                	je     0x4316f7
43172f:	ff b5 74 ff ff ff    	push   -0x8c(%ebp)
431735:	56                   	push   %esi
431736:	ff 75 14             	push   0x14(%ebp)
431739:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
43173f:	e8 2c d9 ff ff       	call   0x42f070
431744:	eb a5                	jmp    0x4316eb
431746:	85 c0                	test   %eax,%eax
431748:	75 2f                	jne    0x431779
43174a:	6a 02                	push   $0x2
43174c:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
431752:	89 bd 78 ff ff ff    	mov    %edi,-0x88(%ebp)
431758:	50                   	push   %eax
431759:	8b 45 14             	mov    0x14(%ebp),%eax
43175c:	0d 00 00 00 20       	or     $0x20000000,%eax
431761:	50                   	push   %eax
431762:	56                   	push   %esi
431763:	e8 08 d9 ff ff       	call   0x42f070
431768:	85 c0                	test   %eax,%eax
43176a:	74 0d                	je     0x431779
43176c:	8a 85 78 ff ff ff    	mov    -0x88(%ebp),%al
431772:	88 03                	mov    %al,(%ebx)
431774:	e9 0c ff ff ff       	jmp    0x431685
431779:	83 c8 ff             	or     $0xffffffff,%eax
43177c:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43177f:	5f                   	pop    %edi
431780:	5e                   	pop    %esi
431781:	33 cd                	xor    %ebp,%ecx
431783:	5b                   	pop    %ebx
431784:	e8 47 a1 fe ff       	call   0x41b8d0
431789:	c9                   	leave
43178a:	c3                   	ret
43178b:	57                   	push   %edi
43178c:	57                   	push   %edi
43178d:	57                   	push   %edi
43178e:	57                   	push   %edi
43178f:	57                   	push   %edi
431790:	e8 07 f3 fe ff       	call   0x420a9c
431795:	cc                   	int3
431796:	8b ff                	mov    %edi,%edi
431798:	55                   	push   %ebp
431799:	8b ec                	mov    %esp,%ebp
43179b:	83 ec 1c             	sub    $0x1c,%esp
43179e:	a1 14 40 45 00       	mov    0x454014,%eax
4317a3:	33 c5                	xor    %ebp,%eax
4317a5:	89 45 fc             	mov    %eax,-0x4(%ebp)
4317a8:	53                   	push   %ebx
4317a9:	56                   	push   %esi
4317aa:	57                   	push   %edi
4317ab:	ff 75 08             	push   0x8(%ebp)
4317ae:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
4317b1:	e8 3b 36 ff ff       	call   0x424df1
4317b6:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
4317b9:	85 db                	test   %ebx,%ebx
4317bb:	75 06                	jne    0x4317c3
4317bd:	8b 45 e8             	mov    -0x18(%ebp),%eax
4317c0:	8b 58 08             	mov    0x8(%eax),%ebx
4317c3:	33 c0                	xor    %eax,%eax
4317c5:	33 ff                	xor    %edi,%edi
4317c7:	39 45 20             	cmp    %eax,0x20(%ebp)
4317ca:	57                   	push   %edi
4317cb:	57                   	push   %edi
4317cc:	ff 75 14             	push   0x14(%ebp)
4317cf:	0f 95 c0             	setne  %al
4317d2:	ff 75 10             	push   0x10(%ebp)
4317d5:	8d 04 c5 01 00 00 00 	lea    0x1(,%eax,8),%eax
4317dc:	50                   	push   %eax
4317dd:	53                   	push   %ebx
4317de:	e8 dd 17 00 00       	call   0x432fc0
4317e3:	83 c4 18             	add    $0x18,%esp
4317e6:	89 45 f4             	mov    %eax,-0xc(%ebp)
4317e9:	85 c0                	test   %eax,%eax
4317eb:	0f 84 82 00 00 00    	je     0x431873
4317f1:	03 c0                	add    %eax,%eax
4317f3:	89 45 f8             	mov    %eax,-0x8(%ebp)
4317f6:	8d 48 08             	lea    0x8(%eax),%ecx
4317f9:	3b c1                	cmp    %ecx,%eax
4317fb:	1b c0                	sbb    %eax,%eax
4317fd:	23 c1                	and    %ecx,%eax
4317ff:	74 69                	je     0x43186a
431801:	3d 00 04 00 00       	cmp    $0x400,%eax
431806:	77 13                	ja     0x43181b
431808:	e8 23 ad fe ff       	call   0x41c530
43180d:	8b f4                	mov    %esp,%esi
43180f:	85 f6                	test   %esi,%esi
431811:	74 59                	je     0x43186c
431813:	c7 06 cc cc 00 00    	movl   $0xcccc,(%esi)
431819:	eb 13                	jmp    0x43182e
43181b:	50                   	push   %eax
43181c:	e8 90 ac ff ff       	call   0x42c4b1
431821:	8b f0                	mov    %eax,%esi
431823:	59                   	pop    %ecx
431824:	85 f6                	test   %esi,%esi
431826:	74 44                	je     0x43186c
431828:	c7 06 dd dd 00 00    	movl   $0xdddd,(%esi)
43182e:	83 c6 08             	add    $0x8,%esi
431831:	85 f6                	test   %esi,%esi
431833:	74 37                	je     0x43186c
431835:	ff 75 f8             	push   -0x8(%ebp)
431838:	57                   	push   %edi
431839:	56                   	push   %esi
43183a:	e8 a1 c1 fe ff       	call   0x41d9e0
43183f:	ff 75 f4             	push   -0xc(%ebp)
431842:	56                   	push   %esi
431843:	ff 75 14             	push   0x14(%ebp)
431846:	ff 75 10             	push   0x10(%ebp)
431849:	6a 01                	push   $0x1
43184b:	53                   	push   %ebx
43184c:	e8 6f 17 00 00       	call   0x432fc0
431851:	83 c4 24             	add    $0x24,%esp
431854:	85 c0                	test   %eax,%eax
431856:	74 14                	je     0x43186c
431858:	ff 75 18             	push   0x18(%ebp)
43185b:	50                   	push   %eax
43185c:	56                   	push   %esi
43185d:	ff 75 0c             	push   0xc(%ebp)
431860:	ff 15 28 f1 43 00    	call   *0x43f128
431866:	8b f8                	mov    %eax,%edi
431868:	eb 02                	jmp    0x43186c
43186a:	8b f7                	mov    %edi,%esi
43186c:	56                   	push   %esi
43186d:	e8 40 a0 fe ff       	call   0x41b8b2
431872:	59                   	pop    %ecx
431873:	80 7d f0 00          	cmpb   $0x0,-0x10(%ebp)
431877:	74 0a                	je     0x431883
431879:	8b 45 e4             	mov    -0x1c(%ebp),%eax
43187c:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
431883:	8b c7                	mov    %edi,%eax
431885:	8d 65 d8             	lea    -0x28(%ebp),%esp
431888:	5f                   	pop    %edi
431889:	5e                   	pop    %esi
43188a:	5b                   	pop    %ebx
43188b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43188e:	33 cd                	xor    %ebp,%ecx