4306a7:	8b 45 08             	mov    0x8(%ebp),%eax
4306aa:	80 78 bf 00          	cmpb   $0x0,-0x41(%eax)
4306ae:	0f 84 5b 01 00 00    	je     0x43080f
4306b4:	8b 45 08             	mov    0x8(%ebp),%eax
4306b7:	8b 40 c8             	mov    -0x38(%eax),%eax
4306ba:	8b 58 40             	mov    0x40(%eax),%ebx
4306bd:	83 fb ff             	cmp    $0xffffffff,%ebx
4306c0:	7e 4a                	jle    0x43070c
4306c2:	8b 45 08             	mov    0x8(%ebp),%eax
4306c5:	8b 45 08             	mov    0x8(%ebp),%eax
4306c8:	8b 40 c0             	mov    -0x40(%eax),%eax
4306cb:	e8 64 73 01 00       	call   0x447a34
4306d0:	3b d8                	cmp    %eax,%ebx
4306d2:	7d 38                	jge    0x43070c
4306d4:	8b 45 08             	mov    0x8(%ebp),%eax
4306d7:	8b 40 f4             	mov    -0xc(%eax),%eax
4306da:	50                   	push   %eax
4306db:	8b 45 08             	mov    0x8(%ebp),%eax
4306de:	8b 40 c8             	mov    -0x38(%eax),%eax
4306e1:	8b 40 40             	mov    0x40(%eax),%eax
4306e4:	50                   	push   %eax
4306e5:	8b 45 08             	mov    0x8(%ebp),%eax
4306e8:	8b 40 c8             	mov    -0x38(%eax),%eax
4306eb:	0f b6 40 39          	movzbl 0x39(%eax),%eax
4306ef:	50                   	push   %eax
4306f0:	8b 45 08             	mov    0x8(%ebp),%eax
4306f3:	8b 48 f0             	mov    -0x10(%eax),%ecx
4306f6:	8b 45 08             	mov    0x8(%ebp),%eax
4306f9:	8b 50 d8             	mov    -0x28(%eax),%edx
4306fc:	8b 45 08             	mov    0x8(%ebp),%eax
4306ff:	8b 40 c0             	mov    -0x40(%eax),%eax
430702:	e8 1d 76 01 00       	call   0x447d24
430707:	e9 11 02 00 00       	jmp    0x43091d
43070c:	b2 01                	mov    $0x1,%dl
43070e:	a1 fc 1e 42 00       	mov    0x421efc,%eax
430713:	e8 cc 7b ff ff       	call   0x4282e4
430718:	8b 55 08             	mov    0x8(%ebp),%edx
43071b:	89 42 b4             	mov    %eax,-0x4c(%edx)
43071e:	33 c0                	xor    %eax,%eax
430720:	55                   	push   %ebp
430721:	68 08 08 43 00       	push   $0x430808
430726:	64 ff 30             	push   %fs:(%eax)
430729:	64 89 20             	mov    %esp,%fs:(%eax)
43072c:	8b 45 08             	mov    0x8(%ebp),%eax
43072f:	8b 40 b4             	mov    -0x4c(%eax),%eax
430732:	b2 01                	mov    $0x1,%dl
430734:	8b 08                	mov    (%eax),%ecx
430736:	ff 51 3c             	call   *0x3c(%ecx)
430739:	68 f8 7f 00 00       	push   $0x7ff8
43073e:	6a 00                	push   $0x0
430740:	e8 43 69 fd ff       	call   0x407088
430745:	8b d0                	mov    %eax,%edx
430747:	8b 45 08             	mov    0x8(%ebp),%eax
43074a:	8b 40 b4             	mov    -0x4c(%eax),%eax
43074d:	e8 8e 8c ff ff       	call   0x4293e0
430752:	8b 45 08             	mov    0x8(%ebp),%eax
430755:	8b 40 d8             	mov    -0x28(%eax),%eax
430758:	8b 40 0c             	mov    0xc(%eax),%eax
43075b:	8b 40 18             	mov    0x18(%eax),%eax
43075e:	8b 55 08             	mov    0x8(%ebp),%edx
430761:	89 42 b8             	mov    %eax,-0x48(%edx)
430764:	8b 45 08             	mov    0x8(%ebp),%eax
430767:	8b 40 d8             	mov    -0x28(%eax),%eax
43076a:	8b 40 0c             	mov    0xc(%eax),%eax
43076d:	ba 12 00 00 ff       	mov    $0xff000012,%edx
430772:	e8 e5 27 ff ff       	call   0x422f5c
430777:	8b 45 08             	mov    0x8(%ebp),%eax
43077a:	8b 40 b4             	mov    -0x4c(%eax),%eax
43077d:	50                   	push   %eax
43077e:	8b 45 08             	mov    0x8(%ebp),%eax
430781:	8b 40 b4             	mov    -0x4c(%eax),%eax
430784:	8b 10                	mov    (%eax),%edx
430786:	ff 52 20             	call   *0x20(%edx)
430789:	8b 55 08             	mov    0x8(%ebp),%edx
43078c:	8b 52 fc             	mov    -0x4(%edx),%edx
43078f:	8b 4d 08             	mov    0x8(%ebp),%ecx
430792:	8b 71 f4             	mov    -0xc(%ecx),%esi
430795:	2b d6                	sub    %esi,%edx
430797:	2b d0                	sub    %eax,%edx
430799:	d1 fa                	sar    $1,%edx
43079b:	79 03                	jns    0x4307a0
43079d:	83 d2 00             	adc    $0x0,%edx
4307a0:	8b 45 08             	mov    0x8(%ebp),%eax
4307a3:	03 d6                	add    %esi,%edx
4307a5:	42                   	inc    %edx
4307a6:	52                   	push   %edx
4307a7:	8b 45 08             	mov    0x8(%ebp),%eax
4307aa:	8b 40 b4             	mov    -0x4c(%eax),%eax
4307ad:	8b 10                	mov    (%eax),%edx
4307af:	ff 52 2c             	call   *0x2c(%edx)
4307b2:	8b 55 08             	mov    0x8(%ebp),%edx
4307b5:	8b 52 f8             	mov    -0x8(%edx),%edx
4307b8:	8b 4d 08             	mov    0x8(%ebp),%ecx
4307bb:	8b 59 f0             	mov    -0x10(%ecx),%ebx
4307be:	2b d3                	sub    %ebx,%edx
4307c0:	2b d0                	sub    %eax,%edx
4307c2:	d1 fa                	sar    $1,%edx
4307c4:	79 03                	jns    0x4307c9
4307c6:	83 d2 00             	adc    $0x0,%edx
4307c9:	8b 45 08             	mov    0x8(%ebp),%eax
4307cc:	03 d3                	add    %ebx,%edx
4307ce:	42                   	inc    %edx
4307cf:	8b 45 08             	mov    0x8(%ebp),%eax
4307d2:	8b 40 d8             	mov    -0x28(%eax),%eax
4307d5:	59                   	pop    %ecx
4307d6:	e8 35 33 ff ff       	call   0x423b10
4307db:	8b 45 08             	mov    0x8(%ebp),%eax
4307de:	8b 50 b8             	mov    -0x48(%eax),%edx
4307e1:	8b 45 08             	mov    0x8(%ebp),%eax
4307e4:	8b 40 d8             	mov    -0x28(%eax),%eax
4307e7:	8b 40 0c             	mov    0xc(%eax),%eax
4307ea:	e8 6d 27 ff ff       	call   0x422f5c
4307ef:	33 c0                	xor    %eax,%eax
4307f1:	5a                   	pop    %edx
4307f2:	59                   	pop    %ecx
4307f3:	59                   	pop    %ecx
4307f4:	64 89 10             	mov    %edx,%fs:(%eax)
4307f7:	68 1d 09 43 00       	push   $0x43091d
4307fc:	8b 45 08             	mov    0x8(%ebp),%eax
4307ff:	8b 40 b4             	mov    -0x4c(%eax),%eax
430802:	e8 ed 30 fd ff       	call   0x4038f4
430807:	c3                   	ret
430808:	e9 7b 38 fd ff       	jmp    0x404088
43080d:	eb ed                	jmp    0x4307fc
43080f:	8b 45 08             	mov    0x8(%ebp),%eax
430812:	8b 55 08             	mov    0x8(%ebp),%edx
430815:	8d 70 f0             	lea    -0x10(%eax),%esi
430818:	8d 7a a4             	lea    -0x5c(%edx),%edi
43081b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43081c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43081d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43081e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43081f:	8b 45 08             	mov    0x8(%ebp),%eax
430822:	8b 40 c8             	mov    -0x38(%eax),%eax
430825:	8b 40 4c             	mov    0x4c(%eax),%eax
430828:	8b 10                	mov    (%eax),%edx
43082a:	ff 52 2c             	call   *0x2c(%edx)
43082d:	8b 55 08             	mov    0x8(%ebp),%edx
430830:	8b 52 f8             	mov    -0x8(%edx),%edx
430833:	8b 4d 08             	mov    0x8(%ebp),%ecx
430836:	2b 51 f0             	sub    -0x10(%ecx),%edx
430839:	3b c2                	cmp    %edx,%eax
43083b:	7d 4e                	jge    0x43088b
43083d:	8b 45 08             	mov    0x8(%ebp),%eax
430840:	8b 40 c8             	mov    -0x38(%eax),%eax
430843:	8b 40 4c             	mov    0x4c(%eax),%eax
430846:	8b 10                	mov    (%eax),%edx
430848:	ff 52 2c             	call   *0x2c(%edx)
43084b:	8b 55 08             	mov    0x8(%ebp),%edx
43084e:	8b 52 f8             	mov    -0x8(%edx),%edx
430851:	8b 4d 08             	mov    0x8(%ebp),%ecx
430854:	2b 51 f0             	sub    -0x10(%ecx),%edx
430857:	2b d0                	sub    %eax,%edx
430859:	d1 fa                	sar    $1,%edx
43085b:	79 03                	jns    0x430860
43085d:	83 d2 00             	adc    $0x0,%edx
430860:	8b 45 08             	mov    0x8(%ebp),%eax
430863:	8b 40 f8             	mov    -0x8(%eax),%eax
430866:	2b c2                	sub    %edx,%eax
430868:	40                   	inc    %eax
430869:	8b 55 08             	mov    0x8(%ebp),%edx
43086c:	89 42 f8             	mov    %eax,-0x8(%edx)
43086f:	8b 45 08             	mov    0x8(%ebp),%eax
430872:	8b 40 c8             	mov    -0x38(%eax),%eax
430875:	8b 40 4c             	mov    0x4c(%eax),%eax
430878:	8b 10                	mov    (%eax),%edx
43087a:	ff 52 2c             	call   *0x2c(%edx)
43087d:	8b 55 08             	mov    0x8(%ebp),%edx
430880:	8b 52 f8             	mov    -0x8(%edx),%edx
430883:	2b d0                	sub    %eax,%edx
430885:	8b 45 08             	mov    0x8(%ebp),%eax
430888:	89 50 f0             	mov    %edx,-0x10(%eax)
43088b:	8b 45 08             	mov    0x8(%ebp),%eax
43088e:	8b 40 c8             	mov    -0x38(%eax),%eax
430891:	8b 40 4c             	mov    0x4c(%eax),%eax
430894:	8b 10                	mov    (%eax),%edx
430896:	ff 52 20             	call   *0x20(%edx)
430899:	8b 55 08             	mov    0x8(%ebp),%edx
43089c:	8b 52 fc             	mov    -0x4(%edx),%edx
43089f:	8b 4d 08             	mov    0x8(%ebp),%ecx
4308a2:	2b 51 f4             	sub    -0xc(%ecx),%edx
4308a5:	3b c2                	cmp    %edx,%eax
4308a7:	7d 4a                	jge    0x4308f3
4308a9:	8b 45 08             	mov    0x8(%ebp),%eax
4308ac:	8b 40 c8             	mov    -0x38(%eax),%eax
4308af:	8b 40 4c             	mov    0x4c(%eax),%eax
4308b2:	8b 10                	mov    (%eax),%edx
4308b4:	ff 52 20             	call   *0x20(%edx)
4308b7:	8b 55 08             	mov    0x8(%ebp),%edx
4308ba:	8b 52 fc             	mov    -0x4(%edx),%edx
4308bd:	8b 4d 08             	mov    0x8(%ebp),%ecx
4308c0:	2b 51 f4             	sub    -0xc(%ecx),%edx
4308c3:	2b d0                	sub    %eax,%edx
4308c5:	d1 fa                	sar    $1,%edx
4308c7:	79 03                	jns    0x4308cc
4308c9:	83 d2 00             	adc    $0x0,%edx
4308cc:	8b 45 08             	mov    0x8(%ebp),%eax
4308cf:	03 50 f4             	add    -0xc(%eax),%edx
4308d2:	42                   	inc    %edx
4308d3:	8b 45 08             	mov    0x8(%ebp),%eax
4308d6:	89 50 f4             	mov    %edx,-0xc(%eax)
4308d9:	8b 45 08             	mov    0x8(%ebp),%eax
4308dc:	8b 40 c8             	mov    -0x38(%eax),%eax
4308df:	8b 40 4c             	mov    0x4c(%eax),%eax
4308e2:	8b 10                	mov    (%eax),%edx
4308e4:	ff 52 20             	call   *0x20(%edx)
4308e7:	8b 55 08             	mov    0x8(%ebp),%edx
4308ea:	03 42 f4             	add    -0xc(%edx),%eax
4308ed:	8b 55 08             	mov    0x8(%ebp),%edx
4308f0:	89 42 fc             	mov    %eax,-0x4(%edx)
4308f3:	8b 45 08             	mov    0x8(%ebp),%eax
4308f6:	8b 40 c8             	mov    -0x38(%eax),%eax
4308f9:	8b 48 4c             	mov    0x4c(%eax),%ecx
4308fc:	8b 45 08             	mov    0x8(%ebp),%eax
4308ff:	8d 50 f0             	lea    -0x10(%eax),%edx
430902:	8b 45 08             	mov    0x8(%ebp),%eax
430905:	8b 40 d8             	mov    -0x28(%eax),%eax
430908:	e8 77 33 ff ff       	call   0x423c84
43090d:	8b 45 08             	mov    0x8(%ebp),%eax
430910:	8b 55 08             	mov    0x8(%ebp),%edx
430913:	8d 70 a4             	lea    -0x5c(%eax),%esi
430916:	8d 7a f0             	lea    -0x10(%edx),%edi
430919:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43091a:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43091b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43091c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43091d:	8b 45 08             	mov    0x8(%ebp),%eax
430920:	8b 40 c8             	mov    -0x38(%eax),%eax
430923:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
430927:	74 6b                	je     0x430994
430929:	8b 45 08             	mov    0x8(%ebp),%eax
43092c:	ff 48 f8             	decl   -0x8(%eax)
43092f:	8b 45 08             	mov    0x8(%ebp),%eax
430932:	ff 48 fc             	decl   -0x4(%eax)
430935:	eb 5d                	jmp    0x430994
430937:	8b 45 08             	mov    0x8(%ebp),%eax
43093a:	83 78 c0 00          	cmpl   $0x0,-0x40(%eax)
43093e:	74 35                	je     0x430975
430940:	8b 45 08             	mov    0x8(%ebp),%eax
430943:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
430947:	75 2c                	jne    0x430975
430949:	8b 45 08             	mov    0x8(%ebp),%eax
43094c:	8b 40 f8             	mov    -0x8(%eax),%eax
43094f:	8b 55 08             	mov    0x8(%ebp),%edx
430952:	8b 52 c0             	mov    -0x40(%edx),%edx
430955:	2b 42 34             	sub    0x34(%edx),%eax
430958:	8b 55 08             	mov    0x8(%ebp),%edx
43095b:	89 42 f0             	mov    %eax,-0x10(%edx)
43095e:	8b 45 08             	mov    0x8(%ebp),%eax
430961:	8b 40 f4             	mov    -0xc(%eax),%eax
430964:	8b 55 08             	mov    0x8(%ebp),%edx
430967:	8b 52 c0             	mov    -0x40(%edx),%edx
43096a:	03 42 30             	add    0x30(%edx),%eax
43096d:	8b 55 08             	mov    0x8(%ebp),%edx
430970:	89 42 fc             	mov    %eax,-0x4(%edx)
430973:	eb 18                	jmp    0x43098d
430975:	8b 45 08             	mov    0x8(%ebp),%eax
430978:	8b 40 f8             	mov    -0x8(%eax),%eax
43097b:	8b 55 08             	mov    0x8(%ebp),%edx
43097e:	89 42 f0             	mov    %eax,-0x10(%edx)
430981:	8b 45 08             	mov    0x8(%ebp),%eax
430984:	8b 40 f4             	mov    -0xc(%eax),%eax
430987:	8b 55 08             	mov    0x8(%ebp),%edx
43098a:	89 42 fc             	mov    %eax,-0x4(%edx)
43098d:	8b 45 08             	mov    0x8(%ebp),%eax
430990:	c6 40 c7 00          	movb   $0x0,-0x39(%eax)
430994:	8b 45 08             	mov    0x8(%ebp),%eax
430997:	ff 48 f0             	decl   -0x10(%eax)
43099a:	8b 45 08             	mov    0x8(%ebp),%eax
43099d:	ff 48 f4             	decl   -0xc(%eax)
4309a0:	8b 45 08             	mov    0x8(%ebp),%eax
4309a3:	83 40 f8 02          	addl   $0x2,-0x8(%eax)
4309a7:	8b 45 08             	mov    0x8(%ebp),%eax
4309aa:	83 40 fc 02          	addl   $0x2,-0x4(%eax)
4309ae:	8b 45 08             	mov    0x8(%ebp),%eax
4309b1:	8b 40 c8             	mov    -0x38(%eax),%eax
4309b4:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
4309b8:	75 1b                	jne    0x4309d5
4309ba:	8b 45 08             	mov    0x8(%ebp),%eax
4309bd:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
4309c1:	74 3e                	je     0x430a01
4309c3:	8b 45 08             	mov    0x8(%ebp),%eax
4309c6:	80 78 c7 00          	cmpb   $0x0,-0x39(%eax)
4309ca:	74 35                	je     0x430a01
4309cc:	8b 45 08             	mov    0x8(%ebp),%eax
4309cf:	80 78 df 00          	cmpb   $0x0,-0x21(%eax)
4309d3:	75 2c                	jne    0x430a01
4309d5:	6a 0f                	push   $0xf
4309d7:	8b 45 08             	mov    0x8(%ebp),%eax
4309da:	8b 40 c8             	mov    -0x38(%eax),%eax
4309dd:	0f b6 40 38          	movzbl 0x38(%eax),%eax
4309e1:	8b 04 85 30 14 46 00 	mov    0x461430(,%eax,4),%eax
4309e8:	50                   	push   %eax
4309e9:	8b 45 08             	mov    0x8(%ebp),%eax
4309ec:	83 c0 f0             	add    $0xfffffff0,%eax
4309ef:	50                   	push   %eax
4309f0:	8b 45 08             	mov    0x8(%ebp),%eax
4309f3:	8b 40 d8             	mov    -0x28(%eax),%eax
4309f6:	e8 b1 34 ff ff       	call   0x423eac
4309fb:	50                   	push   %eax
4309fc:	e8 ef 63 fd ff       	call   0x406df0
430a01:	8b 45 08             	mov    0x8(%ebp),%eax
430a04:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
430a08:	74 4c                	je     0x430a56
430a0a:	8b 45 08             	mov    0x8(%ebp),%eax
430a0d:	80 78 c7 00          	cmpb   $0x0,-0x39(%eax)
430a11:	74 0d                	je     0x430a20
430a13:	8b 45 08             	mov    0x8(%ebp),%eax
430a16:	8b 40 f0             	mov    -0x10(%eax),%eax
430a19:	48                   	dec    %eax
430a1a:	8b 55 08             	mov    0x8(%ebp),%edx
430a1d:	89 42 e8             	mov    %eax,-0x18(%edx)
430a20:	8b 45 08             	mov    0x8(%ebp),%eax
430a23:	80 78 a3 00          	cmpb   $0x0,-0x5d(%eax)
430a27:	74 09                	je     0x430a32
430a29:	8b 45 08             	mov    0x8(%ebp),%eax
430a2c:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
430a30:	75 13                	jne    0x430a45
430a32:	8b 45 08             	mov    0x8(%ebp),%eax
430a35:	8b 40 d8             	mov    -0x28(%eax),%eax
430a38:	8b 40 14             	mov    0x14(%eax),%eax
430a3b:	ba 0d 00 00 ff       	mov    $0xff00000d,%edx
430a40:	e8 d3 2d ff ff       	call   0x423818
430a45:	8b 45 08             	mov    0x8(%ebp),%eax
430a48:	8d 50 e0             	lea    -0x20(%eax),%edx
430a4b:	8b 45 08             	mov    0x8(%ebp),%eax
430a4e:	8b 40 d8             	mov    -0x28(%eax),%eax
430a51:	e8 66 31 ff ff       	call   0x423bbc
430a56:	8b 45 08             	mov    0x8(%ebp),%eax
430a59:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
430a5d:	0f 84 80 00 00 00    	je     0x430ae3
430a63:	8b 45 08             	mov    0x8(%ebp),%eax
430a66:	80 78 a3 00          	cmpb   $0x0,-0x5d(%eax)
430a6a:	74 77                	je     0x430ae3
430a6c:	8b 45 08             	mov    0x8(%ebp),%eax
430a6f:	80 78 df 00          	cmpb   $0x0,-0x21(%eax)
430a73:	74 09                	je     0x430a7e
430a75:	8b 45 08             	mov    0x8(%ebp),%eax
430a78:	80 78 de 00          	cmpb   $0x0,-0x22(%eax)
430a7c:	75 65                	jne    0x430ae3
430a7e:	8b 45 08             	mov    0x8(%ebp),%eax
430a81:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
430a85:	74 1e                	je     0x430aa5
430a87:	6a 0f                	push   $0xf
430a89:	6a 02                	push   $0x2
430a8b:	8b 45 08             	mov    0x8(%ebp),%eax
430a8e:	83 c0 e0             	add    $0xffffffe0,%eax
430a91:	50                   	push   %eax
430a92:	8b 45 08             	mov    0x8(%ebp),%eax
430a95:	8b 40 d8             	mov    -0x28(%eax),%eax