42c5f5:	75 13                	jne    0x42c60a
42c5f7:	ff 37                	push   (%edi)
42c5f9:	6a 00                	push   $0x0
42c5fb:	ff 35 60 49 4a 00    	push   0x4a4960
42c601:	ff 77 04             	push   0x4(%edi)
42c604:	ff 15 d4 7c 4a 00    	call   *0x4a7cd4
42c60a:	33 c0                	xor    %eax,%eax
42c60c:	e8 90 3e 06 00       	call   0x4904a1
42c611:	c2 08 00             	ret    $0x8
42c614:	cc                   	int3
42c615:	cc                   	int3
42c616:	cc                   	int3
42c617:	cc                   	int3
42c618:	cc                   	int3
42c619:	cc                   	int3
42c61a:	cc                   	int3
42c61b:	cc                   	int3
42c61c:	cc                   	int3
42c61d:	cc                   	int3
42c61e:	cc                   	int3
42c61f:	cc                   	int3
42c620:	8b ff                	mov    %edi,%edi
42c622:	55                   	push   %ebp
42c623:	8b ec                	mov    %esp,%ebp
42c625:	53                   	push   %ebx
42c626:	57                   	push   %edi
42c627:	8b 7d 08             	mov    0x8(%ebp),%edi
42c62a:	83 cb ff             	or     $0xffffffff,%ebx
42c62d:	f0 0f c1 5f 08       	lock xadd %ebx,0x8(%edi)
42c632:	4b                   	dec    %ebx
42c633:	75 32                	jne    0x42c667
42c635:	56                   	push   %esi
42c636:	85 ff                	test   %edi,%edi
42c638:	74 13                	je     0x42c64d
42c63a:	8b 07                	mov    (%edi),%eax
42c63c:	6a 01                	push   $0x1
42c63e:	8b 70 10             	mov    0x10(%eax),%esi
42c641:	8b ce                	mov    %esi,%ecx
42c643:	ff 15 2c 81 4a 00    	call   *0x4a812c
42c649:	8b cf                	mov    %edi,%ecx
42c64b:	ff d6                	call   *%esi
42c64d:	a1 38 65 4a 00       	mov    0x4a6538,%eax
42c652:	85 c0                	test   %eax,%eax
42c654:	74 10                	je     0x42c666
42c656:	8b 08                	mov    (%eax),%ecx
42c658:	50                   	push   %eax
42c659:	8b 71 08             	mov    0x8(%ecx),%esi
42c65c:	8b ce                	mov    %esi,%ecx
42c65e:	ff 15 2c 81 4a 00    	call   *0x4a812c
42c664:	ff d6                	call   *%esi
42c666:	5e                   	pop    %esi
42c667:	5f                   	pop    %edi
42c668:	8b c3                	mov    %ebx,%eax
42c66a:	5b                   	pop    %ebx
42c66b:	5d                   	pop    %ebp
42c66c:	c2 04 00             	ret    $0x4
42c66f:	cc                   	int3
42c670:	8b ff                	mov    %edi,%edi
42c672:	55                   	push   %ebp
42c673:	8b ec                	mov    %esp,%ebp
42c675:	8b 4d 0c             	mov    0xc(%ebp),%ecx
42c678:	ba 70 fd 40 00       	mov    $0x40fd70,%edx
42c67d:	56                   	push   %esi
42c67e:	8b 75 10             	mov    0x10(%ebp),%esi
42c681:	57                   	push   %edi
42c682:	33 ff                	xor    %edi,%edi
42c684:	89 3e                	mov    %edi,(%esi)
42c686:	e8 79 ce ff ff       	call   0x429504
42c68b:	85 c0                	test   %eax,%eax
42c68d:	75 22                	jne    0x42c6b1
42c68f:	ba f0 fd 40 00       	mov    $0x40fdf0,%edx
42c694:	e8 6b ce ff ff       	call   0x429504
42c699:	85 c0                	test   %eax,%eax
42c69b:	74 0d                	je     0x42c6aa
42c69d:	8b 4d 08             	mov    0x8(%ebp),%ecx
42c6a0:	89 0e                	mov    %ecx,(%esi)
42c6a2:	51                   	push   %ecx
42c6a3:	8b 01                	mov    (%ecx),%eax
42c6a5:	8b 70 04             	mov    0x4(%eax),%esi
42c6a8:	eb 12                	jmp    0x42c6bc
42c6aa:	bf 02 40 00 80       	mov    $0x80004002,%edi
42c6af:	eb 15                	jmp    0x42c6c6
42c6b1:	8b 55 08             	mov    0x8(%ebp),%edx
42c6b4:	89 16                	mov    %edx,(%esi)
42c6b6:	52                   	push   %edx
42c6b7:	8b 0a                	mov    (%edx),%ecx
42c6b9:	8b 71 04             	mov    0x4(%ecx),%esi
42c6bc:	8b ce                	mov    %esi,%ecx
42c6be:	ff 15 2c 81 4a 00    	call   *0x4a812c
42c6c4:	ff d6                	call   *%esi
42c6c6:	8b c7                	mov    %edi,%eax
42c6c8:	5f                   	pop    %edi
42c6c9:	5e                   	pop    %esi
42c6ca:	5d                   	pop    %ebp
42c6cb:	c2 0c 00             	ret    $0xc
42c6ce:	cc                   	int3
42c6cf:	cc                   	int3
42c6d0:	8b ff                	mov    %edi,%edi
42c6d2:	55                   	push   %ebp
42c6d3:	8b ec                	mov    %esp,%ebp
42c6d5:	8b 4d 08             	mov    0x8(%ebp),%ecx
42c6d8:	56                   	push   %esi
42c6d9:	ff 75 10             	push   0x10(%ebp)
42c6dc:	ff 75 0c             	push   0xc(%ebp)
42c6df:	8d 49 0c             	lea    0xc(%ecx),%ecx
42c6e2:	e8 6d fe ff ff       	call   0x42c554
42c6e7:	8b f0                	mov    %eax,%esi
42c6e9:	85 f6                	test   %esi,%esi
42c6eb:	79 07                	jns    0x42c6f4
42c6ed:	8b ce                	mov    %esi,%ecx
42c6ef:	e8 59 00 00 00       	call   0x42c74d
42c6f4:	8b c6                	mov    %esi,%eax
42c6f6:	5e                   	pop    %esi
42c6f7:	5d                   	pop    %ebp
42c6f8:	c2 0c 00             	ret    $0xc
42c6fb:	8b ff                	mov    %edi,%edi
42c6fd:	55                   	push   %ebp
42c6fe:	8b ec                	mov    %esp,%ebp
42c700:	57                   	push   %edi
42c701:	8b f9                	mov    %ecx,%edi
42c703:	8b 0d 38 65 4a 00    	mov    0x4a6538,%ecx
42c709:	c7 07 30 1b 40 00    	movl   $0x401b30,(%edi)
42c70f:	c7 47 08 01 00 00 00 	movl   $0x1,0x8(%edi)
42c716:	c7 07 44 1b 40 00    	movl   $0x401b44,(%edi)
42c71c:	85 c9                	test   %ecx,%ecx
42c71e:	74 12                	je     0x42c732
42c720:	8b 01                	mov    (%ecx),%eax
42c722:	56                   	push   %esi
42c723:	51                   	push   %ecx
42c724:	8b 70 04             	mov    0x4(%eax),%esi
42c727:	8b ce                	mov    %esi,%ecx
42c729:	ff 15 2c 81 4a 00    	call   *0x4a812c
42c72f:	ff d6                	call   *%esi
42c731:	5e                   	pop    %esi
42c732:	8b 4d 08             	mov    0x8(%ebp),%ecx
42c735:	8b 01                	mov    (%ecx),%eax
42c737:	89 47 0c             	mov    %eax,0xc(%edi)
42c73a:	8b 41 04             	mov    0x4(%ecx),%eax
42c73d:	89 47 10             	mov    %eax,0x10(%edi)
42c740:	8b c7                	mov    %edi,%eax
42c742:	c7 07 5c 1b 40 00    	movl   $0x401b5c,(%edi)
42c748:	5f                   	pop    %edi
42c749:	5d                   	pop    %ebp
42c74a:	c2 04 00             	ret    $0x4
42c74d:	8b ff                	mov    %edi,%edi
42c74f:	55                   	push   %ebp
42c750:	8b ec                	mov    %esp,%ebp
42c752:	51                   	push   %ecx
42c753:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42c757:	8d 45 fc             	lea    -0x4(%ebp),%eax
42c75a:	50                   	push   %eax
42c75b:	51                   	push   %ecx
42c75c:	ff 15 78 7f 4a 00    	call   *0x4a7f78
42c762:	85 c0                	test   %eax,%eax
42c764:	78 09                	js     0x42c76f
42c766:	ff 75 fc             	push   -0x4(%ebp)
42c769:	ff 15 70 7f 4a 00    	call   *0x4a7f70
42c76f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
42c772:	85 c9                	test   %ecx,%ecx
42c774:	74 16                	je     0x42c78c
42c776:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42c77a:	8b 01                	mov    (%ecx),%eax
42c77c:	56                   	push   %esi
42c77d:	51                   	push   %ecx
42c77e:	8b 70 08             	mov    0x8(%eax),%esi
42c781:	8b ce                	mov    %esi,%ecx
42c783:	ff 15 2c 81 4a 00    	call   *0x4a812c
42c789:	ff d6                	call   *%esi
42c78b:	5e                   	pop    %esi
42c78c:	c9                   	leave
42c78d:	c3                   	ret
42c78e:	6a 00                	push   $0x0
42c790:	6a 00                	push   $0x0
42c792:	6a 01                	push   $0x1
42c794:	51                   	push   %ecx
42c795:	ff 15 f8 71 4a 00    	call   *0x4a71f8
42c79b:	c3                   	ret
42c79c:	8b ff                	mov    %edi,%edi
42c79e:	55                   	push   %ebp
42c79f:	8b ec                	mov    %esp,%ebp
42c7a1:	8b 55 10             	mov    0x10(%ebp),%edx
42c7a4:	8b 45 0c             	mov    0xc(%ebp),%eax
42c7a7:	3b d0                	cmp    %eax,%edx
42c7a9:	72 03                	jb     0x42c7ae
42c7ab:	8d 50 ff             	lea    -0x1(%eax),%edx
42c7ae:	8d 41 14             	lea    0x14(%ecx),%eax
42c7b1:	50                   	push   %eax
42c7b2:	51                   	push   %ecx
42c7b3:	52                   	push   %edx
42c7b4:	ff 75 08             	push   0x8(%ebp)
42c7b7:	ff 15 94 7f 4a 00    	call   *0x4a7f94
42c7bd:	85 c0                	test   %eax,%eax
42c7bf:	78 04                	js     0x42c7c5
42c7c1:	5d                   	pop    %ebp
42c7c2:	c2 0c 00             	ret    $0xc
42c7c5:	8b c8                	mov    %eax,%ecx
42c7c7:	e8 c2 ff ff ff       	call   0x42c78e
42c7cc:	cc                   	int3
42c7cd:	83 61 14 00          	andl   $0x0,0x14(%ecx)
42c7d1:	c3                   	ret
42c7d2:	cc                   	int3
42c7d3:	cc                   	int3
42c7d4:	cc                   	int3
42c7d5:	cc                   	int3
42c7d6:	cc                   	int3
42c7d7:	cc                   	int3
42c7d8:	cc                   	int3
42c7d9:	cc                   	int3
42c7da:	cc                   	int3
42c7db:	cc                   	int3
42c7dc:	cc                   	int3
42c7dd:	cc                   	int3
42c7de:	cc                   	int3
42c7df:	cc                   	int3
42c7e0:	8b ff                	mov    %edi,%edi
42c7e2:	55                   	push   %ebp
42c7e3:	8b ec                	mov    %esp,%ebp
42c7e5:	56                   	push   %esi
42c7e6:	8b f1                	mov    %ecx,%esi
42c7e8:	c7 06 74 1b 40 00    	movl   $0x401b74,(%esi)
42c7ee:	e8 e0 35 ff ff       	call   0x41fdd3
42c7f3:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
42c7f7:	74 08                	je     0x42c801
42c7f9:	56                   	push   %esi
42c7fa:	ff 15 10 74 4a 00    	call   *0x4a7410
42c800:	59                   	pop    %ecx
42c801:	8b c6                	mov    %esi,%eax
42c803:	5e                   	pop    %esi
42c804:	5d                   	pop    %ebp
42c805:	c2 04 00             	ret    $0x4
42c808:	68 78 04 00 00       	push   $0x478
42c80d:	b8 2e 25 49 00       	mov    $0x49252e,%eax
42c812:	e8 5b 3d 06 00       	call   0x490572
42c817:	89 95 b0 fb ff ff    	mov    %edx,-0x450(%ebp)
42c81d:	89 8d b4 fb ff ff    	mov    %ecx,-0x44c(%ebp)
42c823:	33 c0                	xor    %eax,%eax
42c825:	be 18 1b 40 00       	mov    $0x401b18,%esi
42c82a:	89 85 bc fb ff ff    	mov    %eax,-0x444(%ebp)
42c830:	89 b5 b8 fb ff ff    	mov    %esi,-0x448(%ebp)
42c836:	89 45 fc             	mov    %eax,-0x4(%ebp)
42c839:	8d 8d 80 fb ff ff    	lea    -0x480(%ebp),%ecx
42c83f:	50                   	push   %eax
42c840:	89 85 ac fb ff ff    	mov    %eax,-0x454(%ebp)
42c846:	ff 15 d8 76 4a 00    	call   *0x4a76d8
42c84c:	8b 5d 08             	mov    0x8(%ebp),%ebx
42c84f:	33 c0                	xor    %eax,%eax
42c851:	40                   	inc    %eax
42c852:	88 45 fc             	mov    %al,-0x4(%ebp)
42c855:	85 db                	test   %ebx,%ebx
42c857:	75 13                	jne    0x42c86c
42c859:	6a 0e                	push   $0xe
42c85b:	ff b5 88 fb ff ff    	push   -0x478(%ebp)
42c861:	ff 15 64 71 4a 00    	call   *0x4a7164
42c867:	8b d8                	mov    %eax,%ebx
42c869:	89 5d 08             	mov    %ebx,0x8(%ebp)
42c86c:	8b 7d 0c             	mov    0xc(%ebp),%edi
42c86f:	85 ff                	test   %edi,%edi
42c871:	75 10                	jne    0x42c883
42c873:	6a 0c                	push   $0xc
42c875:	ff b5 88 fb ff ff    	push   -0x478(%ebp)
42c87b:	ff 15 64 71 4a 00    	call   *0x4a7164
42c881:	8b f8                	mov    %eax,%edi
42c883:	8d 8d 94 fb ff ff    	lea    -0x46c(%ebp),%ecx
42c889:	ff 15 80 75 4a 00    	call   *0x4a7580
42c88f:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
42c893:	ff b5 84 fb ff ff    	push   -0x47c(%ebp)
42c899:	ff 15 74 71 4a 00    	call   *0x4a7174
42c89f:	50                   	push   %eax
42c8a0:	8d 8d 94 fb ff ff    	lea    -0x46c(%ebp),%ecx
42c8a6:	ff 15 88 75 4a 00    	call   *0x4a7588
42c8ac:	83 bd 98 fb ff ff 00 	cmpl   $0x0,-0x468(%ebp)
42c8b3:	75 2a                	jne    0x42c8df
42c8b5:	8d 8d 94 fb ff ff    	lea    -0x46c(%ebp),%ecx
42c8bb:	ff 15 84 75 4a 00    	call   *0x4a7584
42c8c1:	8d 8d 80 fb ff ff    	lea    -0x480(%ebp),%ecx
42c8c7:	ff 15 dc 76 4a 00    	call   *0x4a76dc
42c8cd:	c7 45 fc 03 00 00 00 	movl   $0x3,-0x4(%ebp)
42c8d4:	89 b5 b8 fb ff ff    	mov    %esi,-0x448(%ebp)
42c8da:	e9 08 03 00 00       	jmp    0x42cbe7
42c8df:	8b c3                	mov    %ebx,%eax
42c8e1:	33 c9                	xor    %ecx,%ecx
42c8e3:	0f af c7             	imul   %edi,%eax
42c8e6:	41                   	inc    %ecx
42c8e7:	89 85 a8 fb ff ff    	mov    %eax,-0x458(%ebp)
42c8ed:	3b c1                	cmp    %ecx,%eax
42c8ef:	7e 14                	jle    0x42c905
42c8f1:	6a 04                	push   $0x4
42c8f3:	8d 8d 94 fb ff ff    	lea    -0x46c(%ebp),%ecx
42c8f9:	ff 15 bc 76 4a 00    	call   *0x4a76bc
42c8ff:	8b 85 a8 fb ff ff    	mov    -0x458(%ebp),%eax
42c905:	8b 8d b4 fb ff ff    	mov    -0x44c(%ebp),%ecx
42c90b:	85 c9                	test   %ecx,%ecx
42c90d:	0f 84 52 01 00 00    	je     0x42ca65
42c913:	8b 95 b0 fb ff ff    	mov    -0x450(%ebp),%edx
42c919:	85 d2                	test   %edx,%edx
42c91b:	0f 84 44 01 00 00    	je     0x42ca65
42c921:	33 ff                	xor    %edi,%edi
42c923:	33 f6                	xor    %esi,%esi
42c925:	47                   	inc    %edi
42c926:	33 db                	xor    %ebx,%ebx
42c928:	3b c7                	cmp    %edi,%eax
42c92a:	7f 0a                	jg     0x42c936
42c92c:	be c0 3a 4a 00       	mov    $0x4a3ac0,%esi
42c931:	6a 02                	push   $0x2
42c933:	5b                   	pop    %ebx
42c934:	eb 2f                	jmp    0x42c965
42c936:	83 f8 04             	cmp    $0x4,%eax
42c939:	7f 16                	jg     0x42c951
42c93b:	6a 04                	push   $0x4
42c93d:	5f                   	pop    %edi
42c93e:	52                   	push   %edx
42c93f:	51                   	push   %ecx
42c940:	ff b5 84 fb ff ff    	push   -0x47c(%ebp)
42c946:	ff 15 78 71 4a 00    	call   *0x4a7178
42c94c:	e9 dc 00 00 00       	jmp    0x42ca2d
42c951:	83 f8 08             	cmp    $0x8,%eax
42c954:	7f 0c                	jg     0x42c962
42c956:	6a 08                	push   $0x8
42c958:	5f                   	pop    %edi
42c959:	be 90 39 4a 00       	mov    $0x4a3990,%esi
42c95e:	6a 1c                	push   $0x1c
42c960:	eb d1                	jmp    0x42c933
42c962:	6a 18                	push   $0x18
42c964:	5f                   	pop    %edi
42c965:	33 c0                	xor    %eax,%eax
42c967:	89 8d c4 fb ff ff    	mov    %ecx,-0x43c(%ebp)
42c96d:	68 04 04 00 00       	push   $0x404
42c972:	50                   	push   %eax
42c973:	33 c9                	xor    %ecx,%ecx
42c975:	89 85 d0 fb ff ff    	mov    %eax,-0x430(%ebp)
42c97b:	89 85 d4 fb ff ff    	mov    %eax,-0x42c(%ebp)
42c981:	41                   	inc    %ecx
42c982:	89 85 d8 fb ff ff    	mov    %eax,-0x428(%ebp)
42c988:	8d 85 e4 fb ff ff    	lea    -0x41c(%ebp),%eax
42c98e:	50                   	push   %eax
42c98f:	89 7d 0c             	mov    %edi,0xc(%ebp)
42c992:	c7 85 c0 fb ff ff 28 	movl   $0x28,-0x440(%ebp)
42c999:	00 00 00
42c99c:	89 95 c8 fb ff ff    	mov    %edx,-0x438(%ebp)
42c9a2:	66 89 8d cc fb ff ff 	mov    %cx,-0x434(%ebp)
42c9a9:	66 89 bd ce fb ff ff 	mov    %di,-0x432(%ebp)
42c9b0:	89 9d dc fb ff ff    	mov    %ebx,-0x424(%ebp)
42c9b6:	89 9d e0 fb ff ff    	mov    %ebx,-0x420(%ebp)
42c9bc:	e8 78 46 06 00       	call   0x491039
42c9c1:	83 c4 0c             	add    $0xc,%esp
42c9c4:	83 ff 08             	cmp    $0x8,%edi
42c9c7:	77 45                	ja     0x42ca0e
42c9c9:	85 db                	test   %ebx,%ebx
42c9cb:	74 41                	je     0x42ca0e
42c9cd:	8d 8d e9 fb ff ff    	lea    -0x417(%ebp),%ecx