405607:	75 03                	jne    0x40560c
405609:	32 c0                	xor    %al,%al
40560b:	c3                   	ret
40560c:	8d 41 04             	lea    0x4(%ecx),%eax
40560f:	50                   	push   %eax
405610:	ff 15 20 c0 41 00    	call   *0x41c020
405616:	85 c0                	test   %eax,%eax
405618:	0f 95 c0             	setne  %al
40561b:	c3                   	ret
40561c:	55                   	push   %ebp
40561d:	8b ec                	mov    %esp,%ebp
40561f:	56                   	push   %esi
405620:	8b 75 08             	mov    0x8(%ebp),%esi
405623:	57                   	push   %edi
405624:	56                   	push   %esi
405625:	8b f9                	mov    %ecx,%edi
405627:	ff 15 20 c0 41 00    	call   *0x41c020
40562d:	85 c0                	test   %eax,%eax
40562f:	74 25                	je     0x405656
405631:	56                   	push   %esi
405632:	ff 15 30 c0 41 00    	call   *0x41c030
405638:	83 f8 44             	cmp    $0x44,%eax
40563b:	77 19                	ja     0x405656
40563d:	56                   	push   %esi
40563e:	8d 4f 04             	lea    0x4(%edi),%ecx
405641:	51                   	push   %ecx
405642:	0f ae e8             	lfence
405645:	50                   	push   %eax
405646:	c6 47 48 01          	movb   $0x1,0x48(%edi)
40564a:	ff 15 18 c0 41 00    	call   *0x41c018
405650:	85 c0                	test   %eax,%eax
405652:	74 0f                	je     0x405663
405654:	eb 07                	jmp    0x40565d
405656:	68 57 00 07 80       	push   $0x80070057
40565b:	eb 10                	jmp    0x40566d
40565d:	5f                   	pop    %edi
40565e:	5e                   	pop    %esi
40565f:	5d                   	pop    %ebp
405660:	c2 04 00             	ret    $0x4
405663:	e8 a2 fd ff ff       	call   0x40540a
405668:	c6 47 48 00          	movb   $0x0,0x48(%edi)
40566c:	50                   	push   %eax
40566d:	e8 4d ba ff ff       	call   0x4010bf
405672:	cc                   	int3
405673:	cc                   	int3
405674:	cc                   	int3
405675:	cc                   	int3
405676:	cc                   	int3
405677:	cc                   	int3
405678:	cc                   	int3
405679:	cc                   	int3
40567a:	cc                   	int3
40567b:	cc                   	int3
40567c:	cc                   	int3
40567d:	cc                   	int3
40567e:	cc                   	int3
40567f:	cc                   	int3
405680:	55                   	push   %ebp
405681:	8b ec                	mov    %esp,%ebp
405683:	56                   	push   %esi
405684:	8b f1                	mov    %ecx,%esi
405686:	ff 76 04             	push   0x4(%esi)
405689:	c7 06 34 34 42 00    	movl   $0x423434,(%esi)
40568f:	e8 e7 6b 00 00       	call   0x40c27b
405694:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
405698:	59                   	pop    %ecx
405699:	74 0a                	je     0x4056a5
40569b:	6a 10                	push   $0x10
40569d:	56                   	push   %esi
40569e:	e8 4d 3b 01 00       	call   0x4191f0
4056a3:	59                   	pop    %ecx
4056a4:	59                   	pop    %ecx
4056a5:	8b c6                	mov    %esi,%eax
4056a7:	5e                   	pop    %esi
4056a8:	5d                   	pop    %ebp
4056a9:	c2 04 00             	ret    $0x4
4056ac:	55                   	push   %ebp
4056ad:	8b ec                	mov    %esp,%ebp
4056af:	83 ec 0c             	sub    $0xc,%esp
4056b2:	53                   	push   %ebx
4056b3:	8b d9                	mov    %ecx,%ebx
4056b5:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
4056b9:	0f 85 25 01 00 00    	jne    0x4057e4
4056bf:	80 7b 08 00          	cmpb   $0x0,0x8(%ebx)
4056c3:	0f 85 1b 01 00 00    	jne    0x4057e4
4056c9:	8b 03                	mov    (%ebx),%eax
4056cb:	56                   	push   %esi
4056cc:	57                   	push   %edi
4056cd:	c7 45 fc 08 00 00 00 	movl   $0x8,-0x4(%ebp)
4056d4:	8b 70 04             	mov    0x4(%eax),%esi
4056d7:	8b ce                	mov    %esi,%ecx
4056d9:	ff 15 50 c2 41 00    	call   *0x41c250
4056df:	8b cb                	mov    %ebx,%ecx
4056e1:	ff d6                	call   *%esi
4056e3:	33 ff                	xor    %edi,%edi
4056e5:	89 45 f8             	mov    %eax,-0x8(%ebp)
4056e8:	85 c0                	test   %eax,%eax
4056ea:	74 37                	je     0x405723
4056ec:	0f ae e8             	lfence
4056ef:	8b 0b                	mov    (%ebx),%ecx
4056f1:	57                   	push   %edi
4056f2:	8b 71 10             	mov    0x10(%ecx),%esi
4056f5:	8b ce                	mov    %esi,%ecx
4056f7:	ff 15 50 c2 41 00    	call   *0x41c250
4056fd:	8b cb                	mov    %ebx,%ecx
4056ff:	ff d6                	call   *%esi
405701:	89 45 f4             	mov    %eax,-0xc(%ebp)
405704:	85 c0                	test   %eax,%eax
405706:	74 15                	je     0x40571d
405708:	8b 08                	mov    (%eax),%ecx
40570a:	8b 71 08             	mov    0x8(%ecx),%esi
40570d:	8b ce                	mov    %esi,%ecx
40570f:	ff 15 50 c2 41 00    	call   *0x41c250
405715:	8b 4d f4             	mov    -0xc(%ebp),%ecx
405718:	ff d6                	call   *%esi
40571a:	01 45 fc             	add    %eax,-0x4(%ebp)
40571d:	47                   	inc    %edi
40571e:	3b 7d f8             	cmp    -0x8(%ebp),%edi
405721:	72 cc                	jb     0x4056ef
405723:	8b 75 fc             	mov    -0x4(%ebp),%esi
405726:	56                   	push   %esi
405727:	e8 6a 6b 00 00       	call   0x40c296
40572c:	89 43 04             	mov    %eax,0x4(%ebx)
40572f:	59                   	pop    %ecx
405730:	85 c0                	test   %eax,%eax
405732:	0f 84 ba 00 00 00    	je     0x4057f2
405738:	ff 73 0c             	push   0xc(%ebx)
40573b:	56                   	push   %esi
40573c:	50                   	push   %eax
40573d:	ff 15 2c c0 41 00    	call   *0x41c02c
405743:	85 c0                	test   %eax,%eax
405745:	75 1a                	jne    0x405761
405747:	e8 be fc ff ff       	call   0x40540a
40574c:	ff 73 04             	push   0x4(%ebx)
40574f:	8b f0                	mov    %eax,%esi
405751:	e8 25 6b 00 00       	call   0x40c27b
405756:	83 63 04 00          	andl   $0x0,0x4(%ebx)
40575a:	59                   	pop    %ecx
40575b:	56                   	push   %esi
40575c:	e9 96 00 00 00       	jmp    0x4057f7
405761:	8b 03                	mov    (%ebx),%eax
405763:	8b 70 14             	mov    0x14(%eax),%esi
405766:	8b ce                	mov    %esi,%ecx
405768:	ff 15 50 c2 41 00    	call   *0x41c250
40576e:	8b cb                	mov    %ebx,%ecx
405770:	ff d6                	call   *%esi
405772:	33 c9                	xor    %ecx,%ecx
405774:	89 4d f4             	mov    %ecx,-0xc(%ebp)
405777:	39 4d f8             	cmp    %ecx,-0x8(%ebp)
40577a:	76 66                	jbe    0x4057e2
40577c:	0f ae e8             	lfence
40577f:	8b 03                	mov    (%ebx),%eax
405781:	51                   	push   %ecx
405782:	8b 70 10             	mov    0x10(%eax),%esi
405785:	8b ce                	mov    %esi,%ecx
405787:	ff 15 50 c2 41 00    	call   *0x41c250
40578d:	8b cb                	mov    %ebx,%ecx
40578f:	ff d6                	call   *%esi
405791:	8b f8                	mov    %eax,%edi
405793:	89 7d fc             	mov    %edi,-0x4(%ebp)
405796:	85 ff                	test   %edi,%edi
405798:	74 50                	je     0x4057ea
40579a:	8b 0f                	mov    (%edi),%ecx
40579c:	8b 71 08             	mov    0x8(%ecx),%esi
40579f:	8b ce                	mov    %esi,%ecx
4057a1:	ff 15 50 c2 41 00    	call   *0x41c250
4057a7:	8b cf                	mov    %edi,%ecx
4057a9:	ff d6                	call   *%esi
4057ab:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4057ae:	8b f8                	mov    %eax,%edi
4057b0:	8b 09                	mov    (%ecx),%ecx
4057b2:	8b 71 04             	mov    0x4(%ecx),%esi
4057b5:	8b ce                	mov    %esi,%ecx
4057b7:	ff 15 50 c2 41 00    	call   *0x41c250
4057bd:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4057c0:	ff d6                	call   *%esi
4057c2:	57                   	push   %edi
4057c3:	50                   	push   %eax
4057c4:	6a ff                	push   $0xffffffff
4057c6:	ff 73 0c             	push   0xc(%ebx)
4057c9:	ff 73 04             	push   0x4(%ebx)
4057cc:	ff 15 24 c0 41 00    	call   *0x41c024
4057d2:	85 c0                	test   %eax,%eax
4057d4:	74 14                	je     0x4057ea
4057d6:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4057d9:	41                   	inc    %ecx
4057da:	89 4d f4             	mov    %ecx,-0xc(%ebp)
4057dd:	3b 4d f8             	cmp    -0x8(%ebp),%ecx
4057e0:	72 9d                	jb     0x40577f
4057e2:	5f                   	pop    %edi
4057e3:	5e                   	pop    %esi
4057e4:	8b 43 04             	mov    0x4(%ebx),%eax
4057e7:	5b                   	pop    %ebx
4057e8:	c9                   	leave
4057e9:	c3                   	ret
4057ea:	0f ae e8             	lfence
4057ed:	e9 55 ff ff ff       	jmp    0x405747
4057f2:	68 0e 00 07 80       	push   $0x8007000e
4057f7:	e8 c3 b8 ff ff       	call   0x4010bf
4057fc:	cc                   	int3
4057fd:	cc                   	int3
4057fe:	cc                   	int3
4057ff:	cc                   	int3
405800:	c2 00 00             	ret    $0x0
405803:	cc                   	int3
405804:	cc                   	int3
405805:	cc                   	int3
405806:	cc                   	int3
405807:	cc                   	int3
405808:	cc                   	int3
405809:	cc                   	int3
40580a:	cc                   	int3
40580b:	cc                   	int3
40580c:	cc                   	int3
40580d:	cc                   	int3
40580e:	cc                   	int3
40580f:	cc                   	int3
405810:	55                   	push   %ebp
405811:	8b ec                	mov    %esp,%ebp
405813:	56                   	push   %esi
405814:	8b f1                	mov    %ecx,%esi
405816:	e8 17 00 00 00       	call   0x405832
40581b:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
40581f:	74 0a                	je     0x40582b
405821:	6a 70                	push   $0x70
405823:	56                   	push   %esi
405824:	e8 c7 39 01 00       	call   0x4191f0
405829:	59                   	pop    %ecx
40582a:	59                   	pop    %ecx
40582b:	8b c6                	mov    %esi,%eax
40582d:	5e                   	pop    %esi
40582e:	5d                   	pop    %ebp
40582f:	c2 04 00             	ret    $0x4
405832:	56                   	push   %esi
405833:	8b f1                	mov    %ecx,%esi
405835:	83 7e 6c 00          	cmpl   $0x0,0x6c(%esi)
405839:	c7 06 00 34 42 00    	movl   $0x423400,(%esi)
40583f:	74 0d                	je     0x40584e
405841:	ff 76 6c             	push   0x6c(%esi)
405844:	e8 32 6a 00 00       	call   0x40c27b
405849:	83 66 6c 00          	andl   $0x0,0x6c(%esi)
40584d:	59                   	pop    %ecx
40584e:	8d 4e 04             	lea    0x4(%esi),%ecx
405851:	5e                   	pop    %esi
405852:	e9 d4 fc ff ff       	jmp    0x40552b
405857:	cc                   	int3
405858:	cc                   	int3
405859:	cc                   	int3
40585a:	cc                   	int3
40585b:	cc                   	int3
40585c:	cc                   	int3
40585d:	cc                   	int3
40585e:	cc                   	int3
40585f:	cc                   	int3
405860:	32 c0                	xor    %al,%al
405862:	c3                   	ret
405863:	cc                   	int3
405864:	cc                   	int3
405865:	cc                   	int3
405866:	cc                   	int3
405867:	cc                   	int3
405868:	cc                   	int3
405869:	cc                   	int3
40586a:	cc                   	int3
40586b:	cc                   	int3
40586c:	cc                   	int3
40586d:	cc                   	int3
40586e:	cc                   	int3
40586f:	cc                   	int3
405870:	55                   	push   %ebp
405871:	8b ec                	mov    %esp,%ebp
405873:	8b 45 08             	mov    0x8(%ebp),%eax
405876:	56                   	push   %esi
405877:	57                   	push   %edi
405878:	be 5c 13 42 00       	mov    $0x42135c,%esi
40587d:	8b f8                	mov    %eax,%edi
40587f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
405880:	a5                   	movsl  %ds:(%esi),%es:(%edi)
405881:	a5                   	movsl  %ds:(%esi),%es:(%edi)
405882:	a5                   	movsl  %ds:(%esi),%es:(%edi)
405883:	5f                   	pop    %edi
405884:	5e                   	pop    %esi
405885:	5d                   	pop    %ebp
405886:	c2 04 00             	ret    $0x4
405889:	cc                   	int3
40588a:	cc                   	int3
40588b:	cc                   	int3
40588c:	cc                   	int3
40588d:	cc                   	int3
40588e:	cc                   	int3
40588f:	cc                   	int3
405890:	55                   	push   %ebp
405891:	8b ec                	mov    %esp,%ebp
405893:	56                   	push   %esi
405894:	8b f1                	mov    %ecx,%esi
405896:	e8 17 00 00 00       	call   0x4058b2
40589b:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
40589f:	74 0a                	je     0x4058ab
4058a1:	6a 20                	push   $0x20
4058a3:	56                   	push   %esi
4058a4:	e8 47 39 01 00       	call   0x4191f0
4058a9:	59                   	pop    %ecx
4058aa:	59                   	pop    %ecx
4058ab:	8b c6                	mov    %esi,%eax
4058ad:	5e                   	pop    %esi
4058ae:	5d                   	pop    %ebp
4058af:	c2 04 00             	ret    $0x4
4058b2:	56                   	push   %esi
4058b3:	8b f1                	mov    %ecx,%esi
4058b5:	c7 06 1c 34 42 00    	movl   $0x42341c,(%esi)
4058bb:	e8 e0 00 00 00       	call   0x4059a0
4058c0:	8d 4e 10             	lea    0x10(%esi),%ecx
4058c3:	e8 5e 0c 00 00       	call   0x406526
4058c8:	ff 76 04             	push   0x4(%esi)
4058cb:	c7 06 34 34 42 00    	movl   $0x423434,(%esi)
4058d1:	e8 a5 69 00 00       	call   0x40c27b
4058d6:	59                   	pop    %ecx
4058d7:	5e                   	pop    %esi
4058d8:	c3                   	ret
4058d9:	55                   	push   %ebp
4058da:	8b ec                	mov    %esp,%ebp
4058dc:	51                   	push   %ecx
4058dd:	8b 45 08             	mov    0x8(%ebp),%eax
4058e0:	57                   	push   %edi
4058e1:	8b f9                	mov    %ecx,%edi
4058e3:	89 45 fc             	mov    %eax,-0x4(%ebp)
4058e6:	8b c8                	mov    %eax,%ecx
4058e8:	e8 16 fd ff ff       	call   0x405603
4058ed:	84 c0                	test   %al,%al
4058ef:	0f 84 99 00 00 00    	je     0x40598e
4058f5:	80 7f 08 00          	cmpb   $0x0,0x8(%edi)
4058f9:	53                   	push   %ebx
4058fa:	56                   	push   %esi
4058fb:	74 15                	je     0x405912
4058fd:	8b 07                	mov    (%edi),%eax
4058ff:	8b 70 08             	mov    0x8(%eax),%esi
405902:	8b ce                	mov    %esi,%ecx
405904:	ff 15 50 c2 41 00    	call   *0x41c250
40590a:	8b cf                	mov    %edi,%ecx
40590c:	ff d6                	call   *%esi
40590e:	c6 47 08 00          	movb   $0x0,0x8(%edi)
405912:	6a 74                	push   $0x74
405914:	e8 e5 3d 01 00       	call   0x4196fe
405919:	8b d8                	mov    %eax,%ebx
40591b:	6a 70                	push   $0x70
40591d:	6a 00                	push   $0x0
40591f:	8d 4b 04             	lea    0x4(%ebx),%ecx
405922:	51                   	push   %ecx
405923:	e8 e8 37 00 00       	call   0x409110
405928:	83 c4 10             	add    $0x10,%esp