42054a:	e8 e1 a3 ff ff       	call   0x41a930
42054f:	8b f0                	mov    %eax,%esi
420551:	85 f6                	test   %esi,%esi
420553:	0f 88 fe 0d 00 00    	js     0x421357
420559:	6a 0a                	push   $0xa
42055b:	68 90 e5 40 00       	push   $0x40e590
420560:	ff 15 74 23 45 00    	call   *0x452374
420566:	6a 0a                	push   $0xa
420568:	ff 74 24 28          	push   0x28(%esp)
42056c:	68 dc e5 40 00       	push   $0x40e5dc
420571:	ff 15 74 23 45 00    	call   *0x452374
420577:	83 c4 14             	add    $0x14,%esp
42057a:	c7 44 24 14 01 00 00 	movl   $0x1,0x14(%esp)
420581:	00
420582:	8d 44 24 0c          	lea    0xc(%esp),%eax
420586:	68 2c dc 40 00       	push   $0x40dc2c
42058b:	6a 00                	push   $0x0
42058d:	6a 22                	push   $0x22
42058f:	6a 00                	push   $0x0
420591:	50                   	push   %eax
420592:	ff 15 3c 20 45 00    	call   *0x45203c
420598:	8b f0                	mov    %eax,%esi
42059a:	85 f6                	test   %esi,%esi
42059c:	0f 88 f4 f1 ff ff    	js     0x41f796
4205a2:	6a 00                	push   $0x0
4205a4:	6a 00                	push   $0x0
4205a6:	6a 23                	push   $0x23
4205a8:	6a 00                	push   $0x0
4205aa:	8d 44 24 1c          	lea    0x1c(%esp),%eax
4205ae:	50                   	push   %eax
4205af:	ff 15 3c 20 45 00    	call   *0x45203c
4205b5:	8b f0                	mov    %eax,%esi
4205b7:	85 f6                	test   %esi,%esi
4205b9:	0f 88 d7 f1 ff ff    	js     0x41f796
4205bf:	6a 00                	push   $0x0
4205c1:	68 00 01 00 00       	push   $0x100
4205c6:	6a 12                	push   $0x12
4205c8:	6a 00                	push   $0x0
4205ca:	8d 44 24 1c          	lea    0x1c(%esp),%eax
4205ce:	50                   	push   %eax
4205cf:	ff 15 3c 20 45 00    	call   *0x45203c
4205d5:	8b f0                	mov    %eax,%esi
4205d7:	85 f6                	test   %esi,%esi
4205d9:	0f 88 b7 f1 ff ff    	js     0x41f796
4205df:	6a 00                	push   $0x0
4205e1:	6a 00                	push   $0x0
4205e3:	6a 2e                	push   $0x2e
4205e5:	6a 00                	push   $0x0
4205e7:	8d 44 24 1c          	lea    0x1c(%esp),%eax
4205eb:	50                   	push   %eax
4205ec:	ff 15 3c 20 45 00    	call   *0x45203c
4205f2:	8b f0                	mov    %eax,%esi
4205f4:	85 f6                	test   %esi,%esi
4205f6:	0f 88 9a f1 ff ff    	js     0x41f796
4205fc:	6a 00                	push   $0x0
4205fe:	6a 00                	push   $0x0
420600:	6a 2d                	push   $0x2d
420602:	6a 00                	push   $0x0
420604:	8d 44 24 1c          	lea    0x1c(%esp),%eax
420608:	50                   	push   %eax
420609:	ff 15 3c 20 45 00    	call   *0x45203c
42060f:	8b f0                	mov    %eax,%esi
420611:	85 f6                	test   %esi,%esi
420613:	0f 88 7d f1 ff ff    	js     0x41f796
420619:	6a 00                	push   $0x0
42061b:	6a 00                	push   $0x0
42061d:	6a 36                	push   $0x36
42061f:	6a 00                	push   $0x0
420621:	8d 44 24 1c          	lea    0x1c(%esp),%eax
420625:	50                   	push   %eax
420626:	ff 15 3c 20 45 00    	call   *0x45203c
42062c:	8b f0                	mov    %eax,%esi
42062e:	85 f6                	test   %esi,%esi
420630:	0f 88 60 f1 ff ff    	js     0x41f796
420636:	6a 00                	push   $0x0
420638:	68 10 27 00 00       	push   $0x2710
42063d:	6a 06                	push   $0x6
42063f:	6a 00                	push   $0x0
420641:	8d 44 24 1c          	lea    0x1c(%esp),%eax
420645:	50                   	push   %eax
420646:	ff 15 3c 20 45 00    	call   *0x45203c
42064c:	8b f0                	mov    %eax,%esi
42064e:	85 f6                	test   %esi,%esi
420650:	0f 88 40 f1 ff ff    	js     0x41f796
420656:	6a 00                	push   $0x0
420658:	68 10 27 00 00       	push   $0x2710
42065d:	6a 07                	push   $0x7
42065f:	6a 00                	push   $0x0
420661:	8d 44 24 1c          	lea    0x1c(%esp),%eax
420665:	50                   	push   %eax
420666:	ff 15 3c 20 45 00    	call   *0x45203c
42066c:	8b f0                	mov    %eax,%esi
42066e:	85 f6                	test   %esi,%esi
420670:	0f 88 20 f1 ff ff    	js     0x41f796
420676:	6a 00                	push   $0x0
420678:	68 10 27 00 00       	push   $0x2710
42067d:	6a 0a                	push   $0xa
42067f:	6a 00                	push   $0x0
420681:	8d 44 24 1c          	lea    0x1c(%esp),%eax
420685:	50                   	push   %eax
420686:	ff 15 3c 20 45 00    	call   *0x45203c
42068c:	8b f0                	mov    %eax,%esi
42068e:	85 f6                	test   %esi,%esi
420690:	0f 88 00 f1 ff ff    	js     0x41f796
420696:	6a 00                	push   $0x0
420698:	6a 01                	push   $0x1
42069a:	6a 41                	push   $0x41
42069c:	6a 00                	push   $0x0
42069e:	8d 44 24 1c          	lea    0x1c(%esp),%eax
4206a2:	50                   	push   %eax
4206a3:	ff 15 3c 20 45 00    	call   *0x45203c
4206a9:	8b f0                	mov    %eax,%esi
4206ab:	85 f6                	test   %esi,%esi
4206ad:	0f 88 e3 f0 ff ff    	js     0x41f796
4206b3:	8b 84 24 90 00 00 00 	mov    0x90(%esp),%eax
4206ba:	85 c0                	test   %eax,%eax
4206bc:	75 05                	jne    0x4206c3
4206be:	b8 02 00 00 40       	mov    $0x40000002,%eax
4206c3:	6a 00                	push   $0x0
4206c5:	50                   	push   %eax
4206c6:	68 c2 00 00 00       	push   $0xc2
4206cb:	6a 00                	push   $0x0
4206cd:	8d 44 24 1c          	lea    0x1c(%esp),%eax
4206d1:	50                   	push   %eax
4206d2:	ff 15 3c 20 45 00    	call   *0x45203c
4206d8:	8b f0                	mov    %eax,%esi
4206da:	85 f6                	test   %esi,%esi
4206dc:	0f 88 b4 f0 ff ff    	js     0x41f796
4206e2:	8d 54 24 18          	lea    0x18(%esp),%edx
4206e6:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
4206ea:	e8 e1 d2 ff ff       	call   0x41d9d0
4206ef:	8b f0                	mov    %eax,%esi
4206f1:	85 f6                	test   %esi,%esi
4206f3:	0f 88 9d f0 ff ff    	js     0x41f796
4206f9:	8d 44 24 0c          	lea    0xc(%esp),%eax
4206fd:	50                   	push   %eax
4206fe:	ff 15 24 20 45 00    	call   *0x452024
420704:	8b f0                	mov    %eax,%esi
420706:	85 f6                	test   %esi,%esi
420708:	0f 88 88 f0 ff ff    	js     0x41f796
42070e:	68 8c 20 40 00       	push   $0x40208c
420713:	68 b0 3c 40 00       	push   $0x403cb0
420718:	8d 44 24 18          	lea    0x18(%esp),%eax
42071c:	50                   	push   %eax
42071d:	ff 74 24 18          	push   0x18(%esp)
420721:	ff 15 18 20 45 00    	call   *0x452018
420727:	8b f0                	mov    %eax,%esi
420729:	85 f6                	test   %esi,%esi
42072b:	0f 88 26 0c 00 00    	js     0x421357
420731:	8d 4c 24 18          	lea    0x18(%esp),%ecx
420735:	e8 86 cf ff ff       	call   0x41d6c0
42073a:	8b 44 24 10          	mov    0x10(%esp),%eax
42073e:	89 84 24 bc 00 00 00 	mov    %eax,0xbc(%esp)
420745:	8b 44 24 1c          	mov    0x1c(%esp),%eax
420749:	89 84 24 d4 00 00 00 	mov    %eax,0xd4(%esp)
420750:	8b 44 24 2c          	mov    0x2c(%esp),%eax
420754:	89 84 24 e0 00 00 00 	mov    %eax,0xe0(%esp)
42075b:	8d 84 24 b8 00 00 00 	lea    0xb8(%esp),%eax
420762:	50                   	push   %eax
420763:	c7 84 24 cc 00 00 00 	movl   $0x11,0xcc(%esp)
42076a:	11 00 00 00
42076e:	c7 84 24 e8 00 00 00 	movl   $0x0,0xe8(%esp)
420775:	00 00 00 00
420779:	89 bc 24 d4 00 00 00 	mov    %edi,0xd4(%esp)
420780:	c7 84 24 08 01 00 00 	movl   $0x41a2b0,0x108(%esp)
420787:	b0 a2 41 00
42078b:	ff 15 04 20 45 00    	call   *0x452004
420791:	8b f0                	mov    %eax,%esi
420793:	85 f6                	test   %esi,%esi
420795:	0f 88 bc 0b 00 00    	js     0x421357
42079b:	8b 54 24 10          	mov    0x10(%esp),%edx
42079f:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4207a3:	6a 00                	push   $0x0
4207a5:	e8 d6 d2 ff ff       	call   0x41da80
4207aa:	8b f0                	mov    %eax,%esi
4207ac:	85 f6                	test   %esi,%esi
4207ae:	0f 88 e2 ef ff ff    	js     0x41f796
4207b4:	8d 54 24 18          	lea    0x18(%esp),%edx
4207b8:	e8 83 cf ff ff       	call   0x41d740
4207bd:	8b f0                	mov    %eax,%esi
4207bf:	85 f6                	test   %esi,%esi
4207c1:	0f 88 cf ef ff ff    	js     0x41f796
4207c7:	6a 0a                	push   $0xa
4207c9:	6a 0a                	push   $0xa
4207cb:	68 14 e6 40 00       	push   $0x40e614
4207d0:	ff 15 74 23 45 00    	call   *0x452374
4207d6:	83 c4 0c             	add    $0xc,%esp
4207d9:	6a 0a                	push   $0xa
4207db:	68 b8 e3 40 00       	push   $0x40e3b8
4207e0:	ff 15 74 23 45 00    	call   *0x452374
4207e6:	6a 0a                	push   $0xa
4207e8:	68 40 e4 40 00       	push   $0x40e440
4207ed:	ff 15 74 23 45 00    	call   *0x452374
4207f3:	6a 0a                	push   $0xa
4207f5:	68 28 e6 40 00       	push   $0x40e628
4207fa:	ff 15 74 23 45 00    	call   *0x452374
420800:	6a 0a                	push   $0xa
420802:	6a 0a                	push   $0xa
420804:	68 38 e5 40 00       	push   $0x40e538
420809:	ff 15 74 23 45 00    	call   *0x452374
42080f:	83 c4 24             	add    $0x24,%esp
420812:	e9 dd 0e 00 00       	jmp    0x4216f4
420817:	85 f6                	test   %esi,%esi
420819:	0f 88 38 0b 00 00    	js     0x421357
42081f:	8b 54 24 10          	mov    0x10(%esp),%edx
420823:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
420827:	6a 00                	push   $0x0
420829:	89 b4 24 a4 00 00 00 	mov    %esi,0xa4(%esp)
420830:	e8 4b d2 ff ff       	call   0x41da80
420835:	8b f0                	mov    %eax,%esi
420837:	85 f6                	test   %esi,%esi
420839:	0f 88 57 ef ff ff    	js     0x41f796
42083f:	6a 0a                	push   $0xa
420841:	68 a4 e3 40 00       	push   $0x40e3a4
420846:	ff 15 74 23 45 00    	call   *0x452374
42084c:	6a 0a                	push   $0xa
42084e:	68 b8 e3 40 00       	push   $0x40e3b8
420853:	ff 15 74 23 45 00    	call   *0x452374
420859:	6a 0a                	push   $0xa
42085b:	68 40 e4 40 00       	push   $0x40e440
420860:	ff 15 74 23 45 00    	call   *0x452374
420866:	6a 0a                	push   $0xa
420868:	68 c0 e4 40 00       	push   $0x40e4c0
42086d:	ff 15 74 23 45 00    	call   *0x452374
420873:	6a 0a                	push   $0xa
420875:	6a 0a                	push   $0xa
420877:	68 38 e5 40 00       	push   $0x40e538
42087c:	ff 15 74 23 45 00    	call   *0x452374
420882:	83 c4 2c             	add    $0x2c,%esp
420885:	e9 6a 0e 00 00       	jmp    0x4216f4
42088a:	c7 84 24 b0 00 00 00 	movl   $0x0,0xb0(%esp)
420891:	00 00 00 00
420895:	c7 84 24 a4 00 00 00 	movl   $0x0,0xa4(%esp)
42089c:	00 00 00 00
4208a0:	85 c9                	test   %ecx,%ecx
4208a2:	74 7c                	je     0x420920
4208a4:	68 01 01 00 00       	push   $0x101
4208a9:	8d 84 24 8c 09 00 00 	lea    0x98c(%esp),%eax
4208b0:	50                   	push   %eax
4208b1:	68 01 01 00 00       	push   $0x101
4208b6:	8d 84 24 8c 07 00 00 	lea    0x78c(%esp),%eax
4208bd:	50                   	push   %eax
4208be:	6a 00                	push   $0x0
4208c0:	6a 00                	push   $0x0
4208c2:	6a 00                	push   $0x0
4208c4:	6a 00                	push   $0x0
4208c6:	51                   	push   %ecx
4208c7:	ff 15 e8 22 45 00    	call   *0x4522e8
4208cd:	8d 8c 24 a4 07 00 00 	lea    0x7a4(%esp),%ecx
4208d4:	83 c4 24             	add    $0x24,%esp
4208d7:	8d 51 02             	lea    0x2(%ecx),%edx
4208da:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
4208e0:	66 8b 01             	mov    (%ecx),%ax
4208e3:	83 c1 02             	add    $0x2,%ecx
4208e6:	66 85 c0             	test   %ax,%ax
4208e9:	75 f5                	jne    0x4208e0
4208eb:	2b ca                	sub    %edx,%ecx
4208ed:	d1 f9                	sar    $1,%ecx
4208ef:	83 f9 03             	cmp    $0x3,%ecx
4208f2:	75 28                	jne    0x42091c
4208f4:	8d 8c 24 88 09 00 00 	lea    0x988(%esp),%ecx
4208fb:	8d 51 02             	lea    0x2(%ecx),%edx
4208fe:	8b ff                	mov    %edi,%edi
420900:	66 8b 01             	mov    (%ecx),%ax
420903:	83 c1 02             	add    $0x2,%ecx
420906:	66 85 c0             	test   %ax,%ax
420909:	75 f5                	jne    0x420900
42090b:	2b ca                	sub    %edx,%ecx
42090d:	d1 f9                	sar    $1,%ecx
42090f:	75 0b                	jne    0x42091c
420911:	8b 44 24 48          	mov    0x48(%esp),%eax
420915:	bb 01 00 00 00       	mov    $0x1,%ebx
42091a:	eb 06                	jmp    0x420922
42091c:	8b 44 24 48          	mov    0x48(%esp),%eax
420920:	33 db                	xor    %ebx,%ebx
420922:	0d 00 00 00 04       	or     $0x4000000,%eax
420927:	8d 4c 24 18          	lea    0x18(%esp),%ecx
42092b:	89 44 24 48          	mov    %eax,0x48(%esp)
42092f:	ba 40 17 45 00       	mov    $0x451740,%edx
420934:	8d 84 24 a4 00 00 00 	lea    0xa4(%esp),%eax
42093b:	50                   	push   %eax
42093c:	e8 ef 9f ff ff       	call   0x41a930
420941:	8b bc 24 a4 00 00 00 	mov    0xa4(%esp),%edi
420948:	8b f0                	mov    %eax,%esi
42094a:	85 ff                	test   %edi,%edi
42094c:	75 14                	jne    0x420962
42094e:	85 db                	test   %ebx,%ebx
420950:	74 10                	je     0x420962
420952:	bf 03 00 00 00       	mov    $0x3,%edi
420957:	33 f6                	xor    %esi,%esi
420959:	89 bc 24 a4 00 00 00 	mov    %edi,0xa4(%esp)
420960:	eb 08                	jmp    0x42096a
420962:	85 f6                	test   %esi,%esi
420964:	0f 88 2c ee ff ff    	js     0x41f796
42096a:	6a 0a                	push   $0xa
42096c:	68 b0 e6 40 00       	push   $0x40e6b0
420971:	ff 15 74 23 45 00    	call   *0x452374
420977:	83 c4 08             	add    $0x8,%esp
42097a:	c7 44 24 14 01 00 00 	movl   $0x1,0x14(%esp)
420981:	00
420982:	83 ff 07             	cmp    $0x7,%edi
420985:	0f 87 76 01 00 00    	ja     0x420b01
42098b:	ff 24 bd 3c 1b 42 00 	jmp    *0x421b3c(,%edi,4)
420992:	6a 0a                	push   $0xa
420994:	ff 74 24 20          	push   0x20(%esp)
420998:	68 ec e6 40 00       	push   $0x40e6ec
42099d:	ff 15 74 23 45 00    	call   *0x452374
4209a3:	83 c4 0c             	add    $0xc,%esp
4209a6:	81 4c 24 48 00 00 01 	orl    $0x10000,0x48(%esp)
4209ad:	00
4209ae:	e9 76 01 00 00       	jmp    0x420b29
4209b3:	85 db                	test   %ebx,%ebx
4209b5:	75 14                	jne    0x4209cb
4209b7:	6a 0a                	push   $0xa
4209b9:	ff 74 24 20          	push   0x20(%esp)
4209bd:	68 1c e7 40 00       	push   $0x40e71c
4209c2:	ff 15 74 23 45 00    	call   *0x452374
4209c8:	83 c4 0c             	add    $0xc,%esp
4209cb:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
4209cf:	8d 84 24 b8 00 00 00 	lea    0xb8(%esp),%eax
4209d6:	81 64 24 48 ff ff fe 	andl   $0xfffeffff,0x48(%esp)
4209dd:	ff
4209de:	89 44 24 40          	mov    %eax,0x40(%esp)
4209e2:	8d 84 24 50 01 00 00 	lea    0x150(%esp),%eax
4209e9:	8b d0                	mov    %eax,%edx
4209eb:	c7 44 24 44 04 00 00 	movl   $0x4,0x44(%esp)
4209f2:	00
4209f3:	c7 84 24 c8 00 00 00 	movl   $0x8,0xc8(%esp)
4209fa:	08 00 00 00
4209fe:	89 44 24 38          	mov    %eax,0x38(%esp)
420a02:	c7 84 24 d0 00 00 00 	movl   $0x40,0xd0(%esp)
420a09:	40 00 00 00
420a0d:	e8 fe b4 ff ff       	call   0x41bf10
420a12:	6a 00                	push   $0x0
420a14:	6a 00                	push   $0x0
420a16:	6a 2d                	push   $0x2d
420a18:	6a 00                	push   $0x0
420a1a:	8d 44 24 1c          	lea    0x1c(%esp),%eax
420a1e:	50                   	push   %eax
420a1f:	ff 15 3c 20 45 00    	call   *0x45203c
420a25:	8b f0                	mov    %eax,%esi
420a27:	85 f6                	test   %esi,%esi
420a29:	0f 88 67 ed ff ff    	js     0x41f796
420a2f:	6a 00                	push   $0x0
420a31:	6a 01                	push   $0x1
420a33:	6a 41                	push   $0x41
420a35:	6a 00                	push   $0x0
420a37:	8d 44 24 1c          	lea    0x1c(%esp),%eax
420a3b:	50                   	push   %eax
420a3c:	ff 15 3c 20 45 00    	call   *0x45203c